Skip to main content
Glama

Translate document

translate_document

Translate a document from a public URL. Supported formats include PDF, DOCX/DOC, XLSX/XLS, PPTX/PPT, EPUB, TXT, HTML, MD and CSV. Upstream size limits: PDF <= 30 MB, other formats <= 80 MB. This is an async job: the call waits up to wait_seconds (default 30, max 120) and returns a job_id if still running. Call again with the same job_id to poll; polling does not start a new translation job. Upstream deletes temporary/original files after processing and result URLs expire (about 24 hours), so download promptly. Cost: 5 credits per new job, charged by mcp-credit-gateway before forwarding the request.

Input Schema

NameRequiredDescriptionDefault
toNoTarget language code or name, e.g. en, zh, cht, ja, ko, fr, de, es.
fromNoSource language code or name. Defaults to 'auto'.auto
job_idNoResume polling an existing job. Polling does not create a new upstream job.
doc_urlNoPublicly reachable document URL (signed URLs are fine). Supported: PDF, DOCX/DOC, XLSX/XLS, PPTX/PPT, EPUB, TXT, HTML, MD, CSV, SRT and more. Upstream size limits: PDF <= 30 MB, other formats <= 80 MB.
file_nameNoOptional original file name, used by the upstream for the output file name.
wait_secondsNoHow long to wait for the async job in this call (0-120 seconds, default 30).
idempotency_keyNoOptional per-job key for upstream job isolation. Billing is handled by mcp-credit-gateway.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Goes well beyond the annotations (readOnlyHint=false, openWorldHint=true) by disclosing the async/polling lifecycle, that upstream deletes temporary and original files, that result URLs expire in ~24 hours, and that each new job costs 5 credits charged before forwarding. These are exactly the consequences an agent needs before calling.

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?

Dense but front-loaded: what it does, formats/limits, async semantics, then retention and cost. Every sentence carries actionable information with no repetition of the title.

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?

Covers the lifecycle, cost, and limits for a 7-parameter tool with no output schema, and it does explain that a job_id comes back when the wait elapses. It is slightly thin on what a completed poll returns (e.g. the final result URL field), relying on the expiry sentence to imply 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?

Schema coverage is 100%, so the baseline is 3; the description adds meaning by framing wait_seconds as the per-call wait inside an async job (default 30, max 120) and clarifying that job_id polling does not create a new translation. Remaining parameters (from, file_name, idempotency_key) are left to the schema.

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 ('Translate a document from a public URL') plus the supported format list, which immediately separates it from translate_text, translate_image, and translate_subtitle in the sibling set.

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 clear operational context: async job with a wait budget, and explicit instruction to re-call with the same job_id to poll rather than start a new job. It does not explicitly route to siblings (e.g. use translate_text for raw text) or state exclusions, so it stops short of a 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.