Skip to main content
Glama

Dub Audio

dub_audio

Say a recording again in another language with the speakers kept sounding like themselves, using ElevenLabs dubbing. Pass source (an id from your library or a public https link) and target_language as a two-letter code: es Spanish, fr French, de German, it Italian, pt Portuguese, ja Japanese, ko Korean, hi Hindi, ar Arabic, zh Chinese. source_language is worked out from the recording unless you name it, and speakers can be set when you know how many people talk. A long recording keeps working after the answer comes back: when that happens you get a dubbing_id and status working, and you call dub_audio again with just that dubbing_id to collect the finished track, which costs nothing extra. Billed per minute of the recording when the dub starts (a token quote applies) and the finished file is saved to your library. Returns audio_url, duration_seconds and generation_id.

Input Schema

NameRequiredDescriptionDefault
sourceNoThe recording to dub: an id from your library, or a public https link to an audio file. Not needed when you are collecting with dubbing_id.
speakersNoOptional, 1 to 32. How many people speak in the recording. Leave it out to have it worked out automatically.
dubbing_idNoOptional. The id from an earlier dub_audio answer that came back as working. Send it on its own to collect the finished track; nothing is charged again.
source_languageNoOptional two-letter code of the language spoken in the recording, for example en. Leave it out to have it worked out automatically.
target_languageNoThe language to dub into, as a two-letter code. For example es, fr, de, it, pt, ja, ko, hi, ar, zh.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.6/5.0
Behavior5/5

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

Annotations only declare readOnly=false, destructive=false, openWorld=true. The description adds the async job model (returns dubbing_id + status 'working', re-call to collect), the billing rule (per minute at dub start, token quote, free collection), and where the output lands (your library). This is genuinely new behavioral context beyond the annotations.

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?

Front-loaded with the core action, then the async/collection workflow, then billing and returns. Dense and every sentence carries information, though the language-code enumeration makes it longer than strictly necessary.

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?

No output schema exists, and the description compensates by naming the return fields (audio_url, duration_seconds, generation_id) plus the intermediate working-state payload. For a 5-param, no-required-args tool it covers start, resume, billing and output completely.

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. The description adds meaning beyond the schema by expanding each language code to its language name ('es Spanish, fr French...') and reinforcing that source accepts a library id or public https link and that dubbing_id is sent alone. Marginal but real added value.

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 ('Say a recording again in another language... using ElevenLabs dubbing') and distinguishes itself from siblings like generate_speech, change_voice and transcribe_audio by naming the dubbing action and the speaker-preservation goal. An agent can tell exactly what this produces without opening the 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 explicit conditions: pass source + target_language to start, leave source_language out to auto-detect, pass dubbing_id alone to collect a finished job, and only set speakers when you know the count. It does not name sibling alternatives to route against, so it falls short of 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