Skip to main content
Glama

cuecaps-mcp

Caption a video or audio file on your computer from Claude Code, Cursor, Claude Desktop or any MCP client. Ask "caption talk.mp4 in Karaoke and give me the MP4" and talk.captions.mp4 lands next to the original. The server drives the Cuecaps studio's own export in headless Chrome or Edge on your machine, so the result matches a studio export of the same settings. Once the project syncs to your account, caption_video also returns a studio link that opens it, to fix a word or change the style.

Requirements

  • Node 22 or later.

  • Google Chrome or Microsoft Edge, found at its standard install path. CUECAPS_CHROME points to any other browser.

  • A key from cuecaps.com/account. Agent access comes with a Creator or Pro plan: cuecaps.com/pricing.

Related MCP server: whisper-mcp

Setup

Claude Code

claude mcp add cuecaps --env CUECAPS_API_KEY=cck_… -- npx -y cuecaps-mcp

Claude Desktop and Cursor

Add this to the MCP config: Settings, Developer, Edit Config in Claude Desktop, or ~/.cursor/mcp.json in Cursor.

{ "mcpServers": { "cuecaps": { "command": "npx", "args": ["-y", "cuecaps-mcp"], "env": { "CUECAPS_API_KEY": "cck_…" } } } }

The Agent access card on cuecaps.com/account creates a key and shows this config with the key filled in.

Tools

Tool

Key

What it does

list_styles

no

The 10 caption styles: id, name and how each one looks.

studio_link

no

A studio link that opens set up with your settings. Works on every plan.

account_status

yes

Your plan, cloud minutes left this period, the date they reset, and whether it includes agent captioning.

transcribe

yes

Every word of a file with its start and end time in seconds, plus the SRT text. Writes no file.

caption_video

yes

Captions a file and writes the result next to it.

Every input except path is optional. The caption settings use the studio-link names: style, words (1 to 10), lines (1 or 2), position (top, middle, bottom), aspect (9:16, 1:1, 4:5, 16:9) and lang (a language code such as es; auto lets cloud transcription detect it). Each tool's schema lists the valid values.

transcribe and caption_video also take:

  • engine: cloud is ElevenLabs Scribe on your plan's cloud minutes, strongest on music, accents and 90+ languages, and the default when the minutes left cover the file. device is on-device Whisper with no minutes; its first run downloads the model (132 MB). The result names the engine used.

  • keyterms: up to 100 names and words for cloud transcription to spell your way.

caption_video also takes:

  • output: mp4 with the captions burned in (the default), mov or webm as a transparent captions-only overlay, or srt or vtt subtitles.

  • resolution: 720p, 1080p (the default), 1440p or 4k. 1440p and 4K come with Pro.

  • fps: 24, 25, 30 (the default), 50 or 60.

  • out_path: an absolute path in an existing folder to write to instead; its extension sets the output.

Examples

list_styles

{}

Returns [{ "id": "bold", "name": "Bold", "look": "Montserrat in capitals with a black outline, …" }, …].

studio_link

{ "style": "karaoke", "words": 4, "aspect": "9:16" }

Returns { "url": "https://cuecaps.com/studio?style=karaoke&words=4&aspect=9%3A16" }.

account_status

{}

Returns { "plan": "creator", "minutes_left": 287.5, "resets": "2026-11-20", "agents": true }.

transcribe

{ "path": "/Users/ana/clips/talk.mp4", "engine": "device" }

Returns { "words": [{ "text": "Greetings!", "start": 0.48, "end": 1.84 }, …], "srt": "1\n00:00:00,480 --> …", "engine": "device", "minutes_used": 0 }.

caption_video

{ "path": "/Users/ana/clips/talk.mp4", "style": "karaoke", "aspect": "9:16" }

Returns { "file": "/Users/ana/clips/talk.captions.mp4", "duration": 17.17, "engine": "cloud", "minutes_used": 0.29, "studio_url": "https://cuecaps.com/studio#p=…" }. While it runs, the server reports progress: Opening, Transcribing, Rendering 42%, Saving.

Output files

caption_video writes <name>.captions.<ext> next to the input. A file that already exists is never replaced: the next run writes <name>.captions-2.<ext>, then -3, and so on. The same rule applies to out_path.

The studio link in studio_url opens the saved project on Creator and Pro. The video itself stays on your machine, so the studio asks for the file again when you open the link on another device.

Settings

Variable

Use

CUECAPS_API_KEY

Your key (cck_ and 32 characters).

CUECAPS_CHROME

Path to the Chrome or Edge executable, when it isn't at a standard install path.

CUECAPS_URL

The Cuecaps site, https://cuecaps.com by default.

Privacy

  • Your video stays on your machine. The render happens in a browser on your computer.

  • Cloud transcription sends compressed speech audio, as the studio does, and deletes it after transcription. engine: "device" sends no audio. The project and its words still sync to your account, as every project does on Creator and Pro.

  • Your key goes only to cuecaps.com/api/* requests. It is never in a URL, a log or a file.

  • Each run uses a temporary browser profile and deletes it afterwards, so no cookies or projects stay behind.

License

MIT. The source is at github.com/Pantheonn3D/cuecaps-mcp.

Available Tools

5 tools
account_statusA

The Cuecaps plan behind the key: cloud minutes left this period, the date they reset, and whether it includes agent captioning.

NameRequiredDescriptionDefault

No parameters

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does convey that this is a read of key-scoped account data and what fields come back. It does not state that it is side-effect free, what happens with an expired or unentitled key, or whether values are cached/stale — meaningful gaps for a no-annotation tool, but the entitlement contents are a genuine addition.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One sentence, colon-front-loaded with the resource first and the three returned data points after. No filler, no repetition of the tool name.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, so the description must enumerate return values and it does so concretely (minutes remaining, reset date, agent-captioning flag). What remains unstated — error behavior for bad keys and whether reads are free — is minor for a zero-parameter status tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Zero parameters, so the baseline of 4 applies; the description correctly implies the API key is the implicit input rather than a parameter. Nothing further is needed on this dimension.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States the exact resource (Cuecaps plan tied to the API key) and enumerates what it exposes: remaining cloud minutes, reset date, and agent-captioning entitlement. This is unmistakably a billing/entitlement lookup and cannot be confused with caption_video, transcribe, or list_styles. It stops short of 5 only because there is no explicit verb phrasing (e.g. 'retrieve').

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied — an agent can infer it should call this before burning minutes or to check plan entitlement, but the description never says when to call it, when not to, or what to do if the key is invalid. No alternatives are named, though the sibling set makes the boundary fairly obvious.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

caption_videoA

Captions a local video or audio file with the Cuecaps studio's own renderer in headless Chrome or Edge, and writes .captions. next to it: an MP4 with the captions burned in, a transparent MOV or WebM overlay, or SRT or VTT subtitles. The video stays on this machine. Returns the file, its duration in seconds, the engine used, the cloud minutes used and a studio link to fine-tune words and style. Creator and Pro.

NameRequiredDescriptionDefault
fpsNoFrames per second.
langNoThe spoken language. Give it for any video that isn't in English; auto lets cloud transcription detect it.
pathYesAbsolute path to the video or audio file: MP4, MOV, WebM, MP3, WAV, M4A or another format the studio opens.
linesNoLines per caption.
styleNoCaption style. list_styles shows how each one looks.
wordsNoWords per caption; 1 shows one word at a time.
aspectNoFrame shape: 9:16 for TikTok, Shorts and Reels, 1:1 or 4:5 for feed posts, 16:9 for YouTube.
engineNocloud: ElevenLabs Scribe on the plan's cloud minutes, strongest on music, accents and 90+ languages; the default when the minutes left cover the file. device: on-device Whisper, no minutes; the first run downloads the model (132 MB).
outputNomp4 with the captions burned in, mov or webm as a transparent captions-only overlay, or srt or vtt subtitles. Defaults to out_path's extension when out_path is given, else mp4.
keytermsNoNames and words for cloud transcription to spell your way.
out_pathNoAbsolute path to write to instead of <name>.captions.<ext> next to the input, ending in .mp4, .mov, .webm, .srt or .vtt; its extension sets output. An existing file is never replaced: -2, -3 and so on go before the extension.
positionNoWhere the captions sit in the frame.
resolutionNoShort side of the video. 1440p and 4k come with Pro.1080p

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden and does meaningful work: it discloses that the video stays local, that cloud minutes are consumed, that a plan tier (Creator/Pro) is required, and it enumerates the returned fields. It stops short of stating failure modes (e.g. what happens if minutes run out) or time cost of rendering.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three dense sentences, front-loaded with the purpose and side effect, then return values and plan gating. Everything earns its place, though the enumerated output-format list partially duplicates the schema's output parameter.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, and the description compensates by naming exactly what is returned (file, duration, engine, cloud minutes, studio link). With 13 parameters all documented in the schema and the privacy/plan constraints stated, an agent has everything needed to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so per-parameter meaning is already fully documented, including the nuanced engine, output, and out_path descriptions. The description restates the choice of output formats and the default filename convention but adds no syntax or constraint detail beyond the schema, so baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Captions a local video or audio file') plus the exact renderer, output formats, and side effect of writing a file next to the input. It is clearly distinguishable from the sibling transcribe (which would just produce text) because burning in captions/overlays is called out explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied by the description (local file on this machine, captioning outputs), but there is no explicit when-to-use rule and no routing against the siblings. An agent gets no statement such as 'use transcribe instead when you only need the transcript' or 'use studio_link to fine-tune after rendering'; the list_styles pointer lives in the schema, not the description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_stylesA

The 10 Cuecaps caption styles: the id to pass as style, the name, and how each one looks.

NameRequiredDescriptionDefault

No parameters

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does disclose the return payload (id, name, appearance), which is the relevant behavior for a static lookup. It stops short of confirming it is a side-effect-free read or whether results are fixed at ten.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no filler; every clause (count, returned fields, downstream use) earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, so the description must describe return values, and it does so for all three fields. For a zero-parameter enumeration tool this is nearly sufficient, though a hint about ordering or stability would complete it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, so the baseline is 4. The mention of 'the id to pass as style' adds cross-tool meaning about how the returned identifier is consumed, which the empty schema cannot convey.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Names the specific resource (the 10 Cuecaps caption styles) and enumerates what comes back: id, name, and visual description. It is clearly distinguishable from the siblings (which are link/auth/video/transcription tools), but it never uses an explicit verb like 'list' — the scope is inferred from the title-style phrasing.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'the id to pass as style' implicitly signals the downstream use with a captioning tool, which is useful routing context. However, it states no explicit when-to-use condition or exclusion, and never names a sibling tool to pair it with.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transcribeC

Every word of a local video or audio file with its start and end time in seconds, plus the SRT text and the engine used. Writes no file. Creator and Pro.

NameRequiredDescriptionDefault
langNoThe spoken language. Give it for any video that isn't in English; auto lets cloud transcription detect it.
pathYesAbsolute path to the video or audio file: MP4, MOV, WebM, MP3, WAV, M4A or another format the studio opens.
engineNocloud: ElevenLabs Scribe on the plan's cloud minutes, strongest on music, accents and 90+ languages; the default when the minutes left cover the file. device: on-device Whisper, no minutes; the first run downloads the model (132 MB).
keytermsNoNames and words for cloud transcription to spell your way.

TDQS

C2.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It usefully discloses that no file is written, what comes back (start/end seconds, SRT text, engine), and that access is limited to Creator and Pro plans, but says nothing about duration limits, that the cloud engine uploads content, or that cloud minutes are consumed at cost.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is short and every sentence carries some information, but the opening fragment is not front-loaded with an action verb, and 'Creator and Pro' is compressed to the point of being ambiguous about what it gates.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description does describe the return payload, which is the main job here, and the schema covers all four parameters richly. However, with zero annotations the behavioral picture (file size/length limits, cloud upload implications, fallback when minutes run out) is only partially filled in.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already explains path, lang, engine and keyterms in detail. The description adds no parameter-level meaning beyond that, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description conveys the resource (a local video/audio file) and the payoff (word-level timings, SRT text, engine name), but it never states the action in a verb – it is a sentence fragment that only makes sense because the tool name is 'transcribe'. It does not clearly separate itself from caption_video beyond 'Writes no file'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit statement of when to use this versus caption_video, list_styles or studio_link. The only routing hint is the implicit 'Writes no file', which is a side effect rather than a usage rule, and 'Creator and Pro' is unexplained gating without naming the alternative for other plans.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 5 tool updatesv0.1.0
    • First observedaccount_status
    • First observedcaption_video
    • First observedlist_styles
    • First observedstudio_link
    • First observedtranscribe

TDQS

A3.5/5.0

Scored across 5 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: listing styles, generating a studio link, checking account status, captioning a file, and transcribing a file. The boundary between caption_video and transcribe is well-defined by output (file vs. word timings only).

Naming Consistency3/5

Names mix patterns: verb_noun (list_styles, caption_video), noun_noun (studio_link, account_status), and a bare verb (transcribe). The set is still readable, but there is no single predictable convention.

Tool Count5/5

Five tools is a well-scoped set for a captioning service, with each tool covering a necessary part of the workflow without excess.

Completeness4/5

The surface covers style discovery, account checks, transcription, caption file generation, and a studio link for editing. Minor gaps exist, such as no direct tool for listing supported output formats or engines, but core workflows are complete.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables users to create subtitled tutorial videos by scripting browser interactions with Playwright, outputting MP4 with burned-in captions and SRT file.
    40 npm
    4
    MIT
  • A
    license
    B
    quality
    C
    maintenance
    Enables AI coding agents to programmatically assemble vertical videos and manage local CapCut Desktop drafts, including AI background removal, audio mastering to -14 LUFS or Demucs vocal isolation, music auto-ducking, punch zooms, karaoke captions, PiP proof overlays, hook badges, safe-zone linting, proxy previews, and EN→ES cloning/dubbing. It outputs real CapCut draft JSON ready for review and export.
    17
    2
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables local transcription of audio/video files and YouTube URLs, generation of SRT/VTT subtitles, and analysis of speech pacing and audience retention risk using faster-whisper.
    MIT