Skip to main content
Glama

Translate an i18n locale file

translate_i18n_json
Read-onlyIdempotent

Translate an i18n JSON locale file, keeping the key structure identical and placeholders ({name}, {{count}}, %s, HTML tags) intact. Pass existing_json to translate only the keys that are missing from it — the incremental sync people usually hand-roll a script for.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
toNoTarget language.
urlNoOr a link to the source JSON.
jsonNoSource locale file content (JSON).
existing_jsonNoExisting target locale; only missing keys get translated.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

TDQS

A4.7/5.0
Behavior5/5

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

The description adds behavioral context beyond the annotations: it guarantees key structure and placeholder preservation, and explains the incremental behavior of existing_json. These are meaningful traits not visible from the annotations alone and do not contradict the readOnlyHint or idempotentHint.

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?

The description is two sentences, front-loaded with the core purpose, and includes a practical usage tip without filler. Every sentence earns its place.

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?

Given the rich schema, annotations, and output schema, the description covers the essential purpose, key behavioral guarantees, and the primary use case (incremental sync). No critical information is missing.

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 input schema already describes all four parameters (100% coverage), so the baseline is 3. The description adds extra meaning by explaining the intent of existing_json ('only missing keys get translated') and by emphasizing placeholder handling, enriching the parameter context further.

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?

The description uses a specific verb ('Translate') and clearly identifies the resource ('i18n JSON locale file'), while adding scope details about preserving key structure and placeholders. This distinguishes it from sibling tools like translate_text or translate_pdf.

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?

It gives clear context for when to use this tool—translating JSON locale files—and specifically explains the existing_json parameter for incremental sync, calling out a common manual alternative. It doesn't explicitly name sibling tools or state when not to use it, so it falls 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.

TDQS

A4.3/5.0
Disambiguation5/5

Each tool targets a distinct resource or action: plain text, PDF, SRT, JSON, grammar checking, and job polling. There is no meaningful overlap, and the descriptions explicitly call out when to use one over another (e.g., translate_text vs translate_pdf).

Naming Consistency5/5

All tools follow a clear verb_noun pattern in lowercase snake_case: check_grammar, check_job, translate_i18n_json, translate_pdf, translate_srt, translate_text. The two verbs (check_ and translate_) correspond to their functional groups, making the naming predictable and easy to navigate.

Tool Count5/5

Six tools is a well-scoped count for a translation-focused server. Each tool has a distinct purpose and earns its place; the set is neither bloated nor too thin.

Completeness4/5

The surface covers the core translation formats (text, PDF, subtitles, i18n JSON) plus async job status and grammar checking. Minor gaps exist, such as support for other document formats (e.g., DOCX) or a language-list endpoint, but these are not essential to the apparent purpose.