Skip to main content
Glama
shreyas411

Translation Sync MCP Server

by shreyas411

sync_translations

Synchronizes translation keys from English source files to target language JSON files via MyMemory, removes deleted keys, and flags untranslated entries for manual agent translation.

Instructions

Synchronize translation keys from English source file to all target language files using MyMemory API (free, no API key required). Also removes keys that no longer exist in the source.

Input Schema

NameRequiredDescriptionDefault
keysNoOptional: Specific keys to sync. If not provided, syncs all changed keys.
verboseNoShow detailed progress for each language. Set to false for minimal output (saves tokens).
source_fileNoSource file to sync fromen.json
force_updateNoForce re-translation even if the target already has a value for a key
target_languagesNoOptional: Specific languages to sync (e.g., ["es", "fr"]). If not provided, syncs all languages.
manual_translationsNoTranslations supplied by the calling agent for keys MyMemory could not translate (from a prior sync_translations response's "needs_agent_translation" list). Shape: { "<language_code>": { "<key>": "<translated text>" } }. These are written as-is, no API call, no retry.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

B3.3/5.0
Behavior3/5

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

With no annotations provided, the description carries the full behavioral burden. It usefully discloses the MyMemory API dependency, no API key requirement, and destructive removal of keys no longer in the source, but it does not explain overwrite behavior, error handling, file access requirements, or response structure.

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 tightly written sentences, front-loaded with the core action and followed by the important destructive side effect. The parenthetical about MyMemory being free and requiring no API key is useful context without bloating the text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Parameters are fully covered by the schema, and the description covers the main purpose and deletion behavior. However, for a tool with six parameters, a nested object, no annotations, and no output schema, it omits return values, the needs_agent_translation workflow implied by manual_translations, and guidance on previewing changes before destructive synchronization.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all six parameters in detail, including the nested manual_translations shape. The description adds no parameter-specific meaning beyond what the schema provides, so baseline 3 is appropriate.

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?

The description uses a specific verb and resource: synchronize translation keys from an English source file to target language files, including removal of obsolete keys. It is clear what the tool does, but it does not explicitly distinguish itself from siblings such as translate_text or preview_changes.

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

Usage Guidelines2/5

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

The description implies a batch synchronization use case, but gives no explicit when-to-use or when-not-to-use guidance and does not mention alternatives such as preview_changes or translate_text. An agent must infer the appropriate context from the tool name and description alone.

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