Skip to main content
Glama

Subtitles to speech (video voiceover / dubbing)

srt_to_speech

Create ONE MP3 that follows a subtitle timeline: every cue starts at its timestamp and speech speed auto-fits the cue duration. Use for video voiceover, dubbing translated subtitles, YouTube localization, tutorials and any edit where audio must line up with existing video. Pass either raw srt (SRT or WebVTT text) or segments with start_ms/end_ms. For several speakers set speaker_voices and prefix cue text with '[Name]' or 'Name:'. The resulting MP3 starts at 00:00 of the video, so it can be muxed directly with ffmpeg (commands are returned). Consumes credits.

Input Schema

NameRequiredDescriptionDefault
srtNoFull SRT or WebVTT content.
voiceNoDefault voice token for cues without a speaker/voice.
segmentsNoAlternative to srt: timed segments.
wait_secondsNoSeconds the server waits for the audio before returning. If the job is still PENDING, call get_job_status later with the returned job_id.
speaker_voicesNoMap speaker name -> voice token, e.g. {"Host": "v1:...", "Guest": "v1:..."}.
max_speech_rateNoHighest auto-fit speed when a cue is too short for its text.
min_speech_rateNoLowest auto-fit speed. Set min = max for a fixed speed.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnly=false, idempotent=false, destructive=false, openWorld=false. The description adds genuinely useful context beyond them: credit consumption, that the output is a single MP3 aligned to 00:00 of the video, and that ffmpeg mux commands are returned. It does not detail async/pending behavior beyond what the wait_seconds schema field already says.

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?

Dense but front-loaded: the core behavior and the input-mode choice come first, then speaker handling, then output/muxing, then the credit note. Every sentence carries information, though the use-case list is slightly padded.

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?

For a 7-param tool with nested objects and no output schema, the description covers purpose, input modes, multi-speaker handling, output artifact and cost. Minor gaps remain: it doesn't state precedence if both srt and segments are supplied, nor that zero parameters are marked required.

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?

Schema coverage is 100% so the baseline is 3, but the description adds real meaning: the srt/segments duality as alternatives and the speaker-prefix convention ('[Name]' or 'Name:' in cue text) mapped to speaker_voices. That convention is not documented in the schema and directly affects correct invocation.

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+resource ('Create ONE MP3 that follows a subtitle timeline') and immediately names the distinguishing trait versus plain TTS siblings: every cue is anchored to its timestamp with auto-fitting speed. An agent can tell this apart from text_to_speech or multi_voice_to_speech without opening any schema.

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

Usage Guidelines4/5

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

Gives concrete when-to-use scenarios (video voiceover, dubbing translated subtitles, YouTube localization, tutorials, any edit where audio must line up). It also clarifies the two mutually exclusive input paths (srt vs segments). It stops short of explicitly naming sibling alternatives for the non-timed cases, so not a full 5.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources