i18next MCP Server
Provides translation management capabilities for i18next projects, enabling AI assistants to directly interact with translation files, manage keys, validate files, and analyze translation coverage.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@i18next MCP ServerCheck for missing keys in French"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
i18next MCP Server
A Model Context Protocol (MCP) server that provides translation management capabilities for i18next projects, enabling AI assistants like Cursor to directly interact with translation files.
π Quick Setup
The easiest way to use this MCP server is with npx. No installation required:
npx i18next-mcp-server@latest --helpRelated MCP server: Verblaze MCP Server
π§ Cursor Configuration
Add this to your Cursor MCP settings:
{
"mcpServers": {
"i18next-translation": {
"command": "npx",
"args": ["-y", "i18next-mcp-server@latest"],
"env": {
"I18N_PROJECT_ROOT": "/path/to/your/project",
"I18N_LOCALES_PATH": "public/locales",
"I18N_DEFAULT_LANGUAGE": "en",
"I18N_SUPPORTED_LANGUAGES": "en,es,fr"
}
}
}
}For detailed setup instructions, see CURSOR_SETUP.md.
π Expected Project Structure
your-project/
βββ public/locales/ # Translation files
β βββ en/
β β βββ common.json
β β βββ navigation.json
β βββ es/
β β βββ common.json
β β βββ navigation.json
β βββ ...
βββ src/ # Your source codeπ οΈ Available Tools
Core Tools
get_project_info- Get project configuration and statisticshealth_check- Analyze translation file health and completenessscan_code_for_missing_keys- Find missing translation keys in your code
Key Management
add_translation_key- Add new translation keyssync_missing_keys- Sync missing keys between languagesget_missing_keys- List missing keys by language
File Operations
list_files- List all translation filesvalidate_files- Validate JSON syntaxexport_data- Export translations to various formats
Analysis
coverage_report- Translation coverage statisticsusage_analysis- Find unused translation keysquality_analysis- Analyze translation quality
π§ Environment Variables
Variable | Description | Default |
| Your project root directory | Current directory |
| Path to translation files |
|
| Source language |
|
| Comma-separated language codes |
|
π§ͺ Development
git clone https://github.com/gtrias/i18next-mcp-server.git
cd i18next-mcp-server
npm install
npm run build
npm testπ License
MIT License - see LICENSE for details.
π Links
Available Tools
14 toolsadd_translation_keyA
Add a specific translation key with values to specified languages and namespaces
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Translation key to add (supports nested keys with dot notation) | |
| overwrite | No | Overwrite existing keys | |
| namespaces | No | Target namespaces (optional, defaults to all namespaces) | |
| createBackup | No | Create backup before making changes | |
| translations | Yes | Object with language codes as keys and translation values |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description must disclose behavioral traits on its own. It mentions adding values but omits side effects such as overwrite behavior, automatic backup creation, and namespace defaults. This leaves the agent unaware of important mutation consequences.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that leads with the action verb and resource. Every word contributes meaning, with no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 5 parameters, nested objects, no annotations, and no output schema. The rich schema covers parameter semantics, but the description alone does not convey behavioral context like overwrite/backup defaults or when to use this tool over sibling sync/scan tools. It is minimally complete but has clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides full descriptions for all 5 parameters (100% coverage), including examples and defaults. The description adds minimal semantic value beyond restating that translations target languages and namespaces, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'add' and names the resource 'translation key' with explicit detail about values, languages, and namespaces. This clearly differentiates it from sibling tools that focus on syncing, scanning, or reporting missing keys.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for adding a single specific key manually, which contrasts with bulk sync/scan siblings, but it provides no explicit when-to-use guidance or exclusions. The context of sibling names helps, but the description itself does not direct the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
coverage_reportC
Generate comprehensive coverage report for translations
| Name | Required | Description | Default |
|---|---|---|---|
| languages | No | Specific languages to analyze (optional) | |
| namespaces | No | Specific namespaces to analyze (optional) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full responsibility for behavioral disclosure. It merely states the action 'generate report' without explaining whether it is read-only, what data it accesses, or what 'coverage' means in this context. No output schema exists, so the agent cannot infer return behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no redundant words, making it highly concise. It is front-loaded with the action and resource, though it lacks structural elaboration. Nonetheless, it earns a high score for efficiency.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of an output schema, the description should explain what the coverage report contains and how the optional parameters affect it. It does not, leaving the tool's output ambiguous. Combined with no usage guidance, the contextual completeness is low.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers both parameters with clear descriptions (languages and namespaces), achieving 100% schema description coverage. The description does not add parameter-level details, but the schema provides sufficient meaning, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'generate' and identifies the resource as 'coverage report for translations,' making it clear what the tool does. It does not explicitly differentiate from sibling tools, but the name and description are sufficient for a basic understanding.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool over sibling tools like quality_analysis or usage_analysis. The description neither states prerequisites nor contrasts the tool with alternatives, leaving the agent without usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
export_dataB
Export translation data in various formats
| Name | Required | Description | Default |
|---|---|---|---|
| format | Yes | Export format | |
| languages | No | Specific languages to export (optional) | |
| namespaces | No | Specific namespaces to export (optional) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It only states the high-level action without disclosing whether the export returns a file, downloads it, or has side effects. It also doesn't mention behavior for omitted optional parameters, making the actual behavior opaque.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the action. It contains no redundant or unnecessary words, though it may be slightly too terse for full clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a simple schema but no output schema or annotations. The description is too minimal to fully contextualize the export operationβit doesn't explain the output format, how the optional parameters interact, or what the caller receives.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds no parameter-specific details beyond what the schema already provides, such as the meaning of allowed formats or filter behavior.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action ('Export') and resource ('translation data') with a scope ('in various formats'). It is distinct from sibling tools which are analysis, sync, and validation operations, so no confusion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for exporting translation data but does not explicitly state when to choose it over alternatives. It lacks guidance on scenarios like backup, delivery, or integration, nor does it mention any prerequisites or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_missing_keysB
Get a detailed list of missing keys by language and namespace for targeted translation work
| Name | Required | Description | Default |
|---|---|---|---|
| format | No | Output format for missing keys | detailed |
| namespaces | No | Namespaces to check (optional) | |
| sourceLanguage | No | Reference language to compare against | en |
| targetLanguages | No | Languages to check for missing keys (optional) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden of behavioral disclosure. It does not state whether the operation is read-only, what the return format is, or any side effects, rate limits, or authentication requirements. The verb 'Get' implies read-only, but this is not explicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that is front-loaded with the action and resource. It wastes no words and is easily scannable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema and no annotations, and the description is minimal. It adequately covers the core purpose but lacks details on return format, defaults, or how it differs from similar tools like coverage_report. For a simple getter with fully documented parameters, it is acceptable but not rich.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage, with all four parameters described. The description's mention of 'language and namespace' maps to targetLanguages and namespaces, but adds no meaning beyond the schema. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'detailed list of missing keys', with scope 'by language and namespace' and a purpose 'for targeted translation work'. It is specific but does not explicitly differentiate from sibling tools like coverage_report or list_files.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers only a vague context ('for targeted translation work') and no when-to-use or when-not-to-use guidance. It does not mention alternatives or exclusions, failing to help the agent choose this tool over siblings like sync_missing_keys or coverage_report.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_project_infoB
Get information about the translation project configuration and status
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral disclosure burden. It only states that it 'gets information' but does not specify return format, whether there are side effects, or what aspects of configuration/status are covered. This is insufficient for a tool with no annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no waste. It is front-loaded and efficient, every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is minimal and lacks an output schema. It does not explain what information will be returned, nor does it clarify scope relative to sibling tools. For a tool with no params and no output schema, the description should provide more context on expected outputs and usage boundaries.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and schema coverage is 100% vacuously. The description adds no parameter details, but the baseline for zero parameters is 4, so no deductions are made.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it retrieves translation project configuration and status using a specific verb+resource. However, it does not differentiate from sibling tools like health_check or coverage_report, so it lacks sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. The description provides no context, prerequisites, or exclusions, leaving the agent without decision criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
health_checkC
Perform comprehensive health check on translation files
| Name | Required | Description | Default |
|---|---|---|---|
| summary | No | Return only high-level summary for AI assistants (overrides detailed) | |
| detailed | No | Include detailed analysis | |
| languages | No | Specific languages to check (optional) | |
| namespaces | No | Specific namespaces to check (optional) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden for behavioral disclosure. It merely says 'Perform comprehensive health check' without explaining what the health check entails, whether it is read-only, what output format is returned, or any potential side effects. This is a significant omission for a tool that could be expected to analyze files.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no wasted words. It is front-loaded and efficient, but it lacks the detail that would make it genuinely useful. This is concise but under-specified, which is better than verbose filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 4 optional parameters, no output schema, and no annotations. The description fails to explain what a 'health check' is, what the return value looks like, or how this relates to sibling tools. The schema descriptions help but do not cover the overall context and use case, making this incomplete for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for all four parameters (summary, detailed, languages, namespaces), and each parameter has a clear description. The tool description itself does not add any parameter-level meaning, but the baseline of 3 is appropriate because the schema already fully documents the parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Perform comprehensive health check') on a specific resource ('translation files'). This clearly identifies the tool's function, though it does not distinguish it from siblings like quality_analysis or validate_files, which may overlap in purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention any context, prerequisites, or exclusions. Given sibling tools like quality_analysis and coverage_report, the lack of differentiation makes it hard for an agent to select the correct tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_filesB
List all translation files with their basic information
| Name | Required | Description | Default |
|---|---|---|---|
| language | No | Filter by specific language | |
| namespace | No | Filter by specific namespace |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It implies a safe read operation but doesn't disclose what 'basic information' includes, how filters interact, or potential limitations. The word 'all' may be slightly misleading given optional filters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence, front-loaded with the verb 'List', and no redundant words. Every word contributes to meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with two optional params and no output schema, but the description still leaves gaps: 'basic information' is vague, and there's no indication of output format or when to prefer this over sibling tools. Adequate but not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with both parameters (language, namespace) already described. The description adds no parameter detail beyond what the schema provides, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'List all translation files with their basic information' β a specific verb+resource combination. It doesn't explicitly distinguish from sibling tools, but the purpose is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, or any exclusions. The description only states what it does, not when to choose it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
quality_analysisC
Analyze translation quality across files
| Name | Required | Description | Default |
|---|---|---|---|
| languages | No | Specific languages to analyze (optional) | |
| namespaces | No | Specific namespaces to analyze (optional) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. 'Analyze' implies a read-only operation, but the description does not state whether the tool has side effects, requires specific permissions, or what the return behavior looks like. It adds no behavioral context beyond the basic action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that front-loads the purpose. There is no redundant wording or unnecessary detail, making it appropriately sized for a simple tool with two optional parameters.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description lacks critical context for a tool with no output schema and no annotations. It does not explain what 'translation quality' means, what kind of analysis is performed, what the output format or return value is, or how to interpret results. This leaves significant gaps for an agent trying to use the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both parameters (languages, namespaces) already described in the input schema. The tool description itself adds no additional parameter semantics, but the schema does the heavy lifting, so a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Analyze translation quality across files' uses a clear verb ('analyze') and specific resource ('translation quality') with an explicit scope ('across files'). It is more than a tautology and distinguishes itself from sibling tools like usage_analysis or coverage_report in general feel, but it doesn't explicitly differentiate from these alternatives or specify what 'quality' entails.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus any of its siblings. It does not state prerequisites, exclusions, or alternative tools. There is no context for when quality_analysis would be preferred over usage_analysis, coverage_report, or validate_files.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
scan_code_for_missing_keysC
Scan code for missing keys using the scanner integration
| Name | Required | Description | Default |
|---|---|---|---|
| sourceCodePaths | No | Paths to source code directories to scan |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of disclosure, but it only states that the tool scans for missing keys. It does not mention whether the scan is read-only, whether it modifies any files, or what the output/return value looks like. No side effects or limitations are disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with no filler. Every word contributes to the basic purpose, and it is appropriately concise for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of annotations and an output schema, the description should clarify what the tool actually does beyond scanning. It does not explain what 'missing keys' means, whether results are returned or stored, or how the scanner integration behaves. This is a significant gap for a tool that is part of a larger workflow.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description covers 100% of the single parameter (sourceCodePaths) by stating it is 'Paths to source code directories to scan'. The tool description adds no extra meaning beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('scan') and resource ('code') to convey that the tool detects missing keys, which distinguishes it from siblings like sync_missing_keys or get_missing_keys. However, 'using the scanner integration' is vague and could be clearer about what the integration does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives like get_missing_keys or sync_missing_keys. The description lacks any context on prerequisites, expected input, or how this fits into a workflow.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sync_all_missingC
Comprehensive sync to add all missing keys across all languages, ensuring complete coverage
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | Preview changes without applying them | |
| placeholder | No | Placeholder text for missing translations | |
| createBackup | No | Create backup before making changes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description does not disclose side effects, backup behavior, dry-run semantics, or reversibility. It only states the desired outcome of 'complete coverage', leaving the mutation behavior implicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no redundant filler. It is front-loaded with the key action, though it could include more operational detail without becoming bloated.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (3 optional params, no output schema) and the existence of several sibling sync/translation tools, the description is minimally adequate. It lacks context about how missing keys are determined, which languages are covered, and expected results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All three parameters (dryRun, placeholder, createBackup) have descriptions in the schema, achieving 100% coverage. The description adds no additional parameter meaning beyond what's already structured, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'add all missing keys across all languages,' with a specific verb and resource. It implies comprehensiveness but does not explicitly differentiate from sibling 'sync_missing_keys', so it loses one point.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool versus alternatives like 'sync_missing_keys' or 'add_translation_key'. There is no mention of suitable contexts, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sync_from_sourceB
Sync specific missing keys from source language to target languages
| Name | Required | Description | Default |
|---|---|---|---|
| keys | Yes | Specific keys to sync | |
| copyValues | No | Copy source values as placeholders or leave empty | |
| namespaces | No | Target namespaces | |
| createBackup | No | Create backup before making changes | |
| sourceLanguage | No | Source language to copy from | en |
| targetLanguages | Yes | Target languages to sync to |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full responsibility for disclosing side effects. It mentions syncing keys but does not explain that it modifies target language files, whether it creates a backup, or the impact of copyValues. This is a significant gap for a write operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is front-loaded with the core action and scope. It is efficient and free of unnecessary words, though it omits some detail that might be valuable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given there are 6 parameters, no output schema, and no annotations, the description is far too brief. It fails to explain return values, side effects, prerequisites, or how parameters like namespaces and copyValues interact. A more complete description is necessary for reliable tool invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers all parameters with descriptions (100% coverage), so the baseline is 3. The description adds minimal semantic value beyond the schema; it simply reiterates the source-to-target language flow. No additional meaning is provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'sync' and the resource 'specific missing keys' with a defined direction (from source to target languages). It distinguishes itself from the sibling tool 'sync_all_missing' by emphasizing 'specific', though it does not explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'specific missing keys' implies this tool is for syncing a selected subset of missing keys rather than all missing keys, but it does not explicitly state when to use this vs. other sync tools or mention alternatives. Usage context is implied, not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sync_missing_keysC
Synchronize missing translation keys across all languages from a source language, maintaining sorted structure
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | Preview changes without applying them | |
| namespaces | No | Specific namespaces to sync (optional, defaults to all namespaces) | |
| placeholder | No | Placeholder text for missing translations (default: empty string) | |
| createBackup | No | Create backup before making changes | |
| sourceLanguage | No | Source language to copy keys from (default: configured default language) | en |
| targetLanguages | No | Target languages to sync keys to (optional, defaults to all languages except source) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does not state that the tool modifies files, creates backups (despite the createBackup parameter), supports dry-run previews, or what happens to existing translations. It only mentions 'maintaining sorted structure,' which is a minor behavior. For a sync/write operation, this is insufficient disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that directly states purpose and a key behavior with no unnecessary words. It is concise and well-structured, with every word contributing to understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 6 optional parameters, no output schema, and no annotations. The description does not explain what the operation returns, how missing keys are filled (e.g., using the placeholder parameter), whether changes are reversible, or what effects occur on target languages. It is under-specified for a mutating sync operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so parameter meanings are already documented. The description does not add any additional semantics or clarify parameter interactions. Baseline 3 is appropriate when the schema already provides thorough parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action (synchronize missing translation keys), the scope (across all languages from a source language), and a behavioral detail (maintaining sorted structure). It goes beyond a mere restatement of the tool name. However, it does not explicitly differentiate from sibling tools such as sync_from_source or sync_all_missing, which likely have overlapping functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. Sibling tools with similar names (sync_from_source, sync_all_missing) exist, but the description does not mention them or explain when this one is preferred. The only implied usage is that it handles missing keys, but no exclusions or context are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
usage_analysisC
Generate detailed usage analysis of translation keys
| Name | Required | Description | Default |
|---|---|---|---|
| sourceCodePaths | No | Paths to source code directories to scan |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states that the tool 'generates' an analysis, but does not describe whether this is a read-only scan, what the output format is, or any side effects. The sourceCodePaths parameter hints at scanning behavior, but this is not explicitly stated in the description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is front-loaded with the action and subject. It is concise and free of irrelevant detail, but it is somewhat under-specified. However, conciseness is not penalized for missing detail here; the sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter, no output schema, and no annotations, the description should explain what 'usage analysis' means, what the output will look like, and how it relates to sibling tools. The current description is too thin to provide an agent with sufficient context for effective invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, as the only parameter sourceCodePaths has a description. The tool description does not add any additional meaning beyond what the schema already provides, so the baseline score of 3 is appropriate. No parameter info is missing.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Generate' and identifies the resource as 'usage analysis of translation keys', which clearly distinguishes it from siblings like quality_analysis or coverage_report. However, it lacks detail on what 'usage analysis' entails, making it slightly vague but still actionable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as scan_code_for_missing_keys or coverage_report. There are no stated conditions, prerequisites, or exclusions, leaving the agent without context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_filesC
Validate translation files for JSON syntax and structure issues
| Name | Required | Description | Default |
|---|---|---|---|
| fix | No | Attempt to fix issues automatically |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the full behavioral burden. It states that validation checks syntax and structure but does not mention the 'fix' parameter's ability to modify files, potential side effects, or any read-only guarantee. This lack of disclosure could lead an agent to assume a non-destructive operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler words. Every word contributes to the primary purpose statement, making it appropriately concise for its content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description lacks essential contextual information such as the return format, whether the tool is read-only, and the implications of the fix parameter. Given the absence of an output schema and annotations, the description should compensate but does not, leaving notable gaps for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema fully documents the only parameter 'fix' with its description, meeting the 100% coverage threshold. The description itself adds no additional parameter semantics, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Validate' with the resource 'translation files' and defines the scope as 'JSON syntax and structure issues,' making the core purpose clear. However, it does not explicitly differentiate from sibling tools like health_check or quality_analysis, but the focus on JSON validation is distinct enough.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. There is no mention of prerequisites, contexts, or exclusions, leaving the agent to infer usage solely from the tool's name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
Multiple sync tools (sync_missing_keys, sync_from_source, sync_all_missing) have nearly identical descriptions, making it difficult to choose between them. health_check, quality_analysis, and validate_files also overlap somewhat in their focus on analyzing file health.
All tool names use snake_case, but the pattern is inconsistent: some are verb_noun (get_project_info, list_files, add_translation_key) while others are noun-based (health_check, quality_analysis, coverage_report). The three sync tools are confusingly similar in naming.
14 tools is within the typical 3-15 range and appropriate for the scope of i18next translation management. However, the redundant sync tools could be consolidated, making the count feel slightly padded.
The toolset lacks basic update and delete operations for translation keys, and there is no import functionality. It is heavily skewed toward analysis and adding missing keys, leaving gaps in the full lifecycle management of translations.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Localization for AI agents: projects, languages, glossaries and translations from your agent
AI localization for agents: translation, TMS sync, translation memories, glossaries, post-editing.
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
Direct access to Cypress tests results and accessibility reports in your AI workflow.
Related MCP Servers
- FlicenseNot gradedqualityCmaintenanceEnables translation of JSON i18n files to multiple languages using various AI providers (Google Gemini, OpenAI, Ollama/DeepSeek) with intelligent caching and deduplication.295
- AlicenseNot gradedqualityDmaintenanceConnects AI tools to Verblaze localization projects, enabling management of translations, languages, screens, and project resources through natural language interactions.17MIT
- FlicenseAqualityDmaintenanceEnables automatic discovery and fast searching of translation files in projects, supporting partial/exact key-value matching with file watching and multiple translation file formats.2
- AlicenseAqualityBmaintenanceEnables interaction with the SimpleLocalize API to manage translation keys, languages, and tags. It allows users to streamline their localization workflow by creating, updating, and retrieving translation data directly through MCP-compatible AI assistants.4741Apache 2.0
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/gtrias/i18next-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server