Skills
Skill 3 of 3
Use when the user wants an SRT or WebVTT caption or subtitle file fixed so it meets Netflix, BBC or DCMP Captioning Key limits, not just checked - lines too long, too many lines…
3 minutes · 697 words · 8 sections
Install
npx skills add markksantos/caption-checker --skill caption-fixernpx skills add markksantos/caption-checker/plugin marketplace add markksantos/caption-checkerThe first command installs just this skill, by the name in its SKILL.md; the second installs the whole repository.
This skill fixes an SRT or WebVTT file to one of three published caption standards (Netflix English, the BBC subtitle guidelines or the DCMP Captioning Key) without changing a word of the captions or the moment any caption appears. It uses the fix_captions tool of the caption-checker MCP server, which ships with the plugin, and runs locally with no key and no upload.
What fix_captions changes:
What it never changes: the words, any in-time, the number of captions, cue ids, WebVTT headers, NOTE blocks, cue settings and line endings. A caption that needed nothing keeps its exact bytes.
claude mcp add caption-checker -- npx -y github:markksantos/caption-checker#v1.3.3 --mcp). Without it, use the CLI in the Examples section, which needs Node 18+.netflix by default, netflix-kids for children’s programs, bbc for UK broadcast, a dcmp-* level for US educational media. Pass fps when the video isn’t 24 fps, since Netflix’s minimum gap is 2 frames, and vertical: true for 9:16 video.fix_captions with path (or text), standard, fps and vertical. The first content item is the report; the second is the fixed file..fixed before the extension (captions.fixed.srt). Overwrite the original only when the user asks for that.check_captions on the saved file when the user wants proof it passes.#5 Out-time 0:17.000 -> 0:16.100 (off an overlap, to the 7 s maximum)), then the captions left for a person with a reason each.changes, unresolved, flaggedBefore, flaggedAfter and the fixed text as fixed.“Fix travel-vlog.srt for Netflix” → fix_captions with path: "travel-vlog.srt", standard: "netflix" (24 fps), then write the second content item to travel-vlog.fixed.srt. The report:
8 changes. 6 of 8 captions now meet Netflix English, adult programs (before: 2).
#1 Out-time 0:03.000 -> 0:02.916 (to leave 2 frames before the next caption)
#4 Rewrapped to 2 lines (38 + 35 characters)
#6 Rewrapped to 2 lines (29 + 16 characters)
Left for a person (2):
#3 Still on screen only 0.52 s (minimum 5/6 of a second) with no free time after it: merge it with a neighbor or move the next caption
#4 Still reads at 40.2 characters a second (limit 20) with no free time after it: split it, condense it or move the next captionWithout the MCP server, the CLI writes the fixed copy and prints the same report. It exits with 1 while any caption still breaks a limit:
npx -y github:markksantos/caption-checker#v1.3.3 captions.srt --fix captions.fixed.srt --fps 25
npx -y github:markksantos/caption-checker#v1.3.3 captions.vtt --fix captions.fixed.vtt --standard bbc --verticalUse when the user wants an SRT or WebVTT caption or subtitle file fixed so it meets Netflix, BBC or DCMP Captioning Key limits, not just checked - lines too long, too many lines, overlapping subtitles, gaps under the minimum, captions on screen too briefly or reading too fast. Trigger with "fix these captions", "make this SRT pass Netflix's spec", "rewrap my subtitles to 42 characters" or "fix the overlapping subtitles".
The verbatim description from this skill’s front matter — the string an agent matches on to decide whether to load it.
mcp__plugin_caption-checker_caption-checker__fix_captionsmcp__plugin_caption-checker_caption-checker__check_captionsmcp__caption-checker__fix_captionsmcp__caption-checker__check_captionsskills/caption-fixer/SKILL.mdmain, last pushed 1 November 2026.SKILL.md, not by matching a directory convention. One layout observed: skills/*/SKILL.md.h1 and no skipped levels:.claude-plugin/marketplace.json by Mark Studios, declaring 1 plugin. It is read for editorial metadata only — never as the skill index, which is always the repository tree./markksantos/caption-checker.md, and each skill at its own .md URL.