Skip to main content
Glama

translate

Converts spoken audio from a local file or YouTube link into written text in another language, using source and target language settings; one language must be English.

Instructions

Write the speech in one audio file, or one YouTube link, in another language. source_language is the language spoken in the file, such as Polish or pl. target_language is the language the words should be written in, such as English or en. Pass both when you know them. A language passed here overrides NEMOTRON_SOURCE_LANGUAGE and NEMOTRON_TARGET_LANGUAGE. If source_language is empty, the language heard in the file overrides NEMOTRON_SOURCE_LANGUAGE. Leave target_language empty to use NEMOTRON_TARGET_LANGUAGE. One of the two languages must be English. A long file is cut at a pause and sent one piece at a time. Waits wait_seconds (default 25). If it is still running, returns a job id. Tell the user, then call get_job_status. Do not poll in a loop.

Input Schema

NameRequiredDescriptionDefault
pathYes
wait_secondsNo
source_languageNo
target_languageNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.5/5.0
Behavior5/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 so: environment-variable precedence, the English-language constraint, chunking of long files at pauses, the wait_seconds default, and the job-id fallback with a directive to inform the user and switch to get_job_status. That is unusually complete behavioral disclosure for an unannotated tool.

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?

It is front-loaded with the core action and then the language rules, and nearly every sentence carries operational information. There is some redundancy between the source_language definition and the later override sentence, which keeps it from a 5.

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?

With no output schema, the description still explains the return behavior (result vs. job id after wait_seconds) and the correct next step. Combined with chunking and language-rule notes, an agent has everything needed to invoke it correctly.

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 0%, so the description must compensate, and it explains source_language and target_language with examples (Polish/pl, English/en), defaults, and precedence rules. path is only implied (an audio file or a YouTube link) without stating accepted formats or whether it is a local path or URL, leaving one gap.

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?

"Write the speech in one audio file, or one YouTube link, in another language" states a specific verb (write speech) and resource (audio file / YouTube link) clearly enough to distinguish it from transcribe. It doesn't explicitly name the sibling it differs from, so it stops short of a 5.

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

Usage Guidelines5/5

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

It explicitly says when to pass source_language/target_language, when to leave them empty (falling back to NEMOTRON_* env vars), the constraint that one language must be English, and names the follow-up tool get_job_status with an explicit "do not poll in a loop" exclusion.

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