概览
What is i18n MCP Server?
i18n MCP Server manages internationalization (i18n) in projects by using language models to translate JSON-based language files. It integrates with the Cursor IDE via stdio transport and is built for developers who need to generate multiple language files from a single base file.
How to use i18n MCP Server?
Clone the repository, install dependencies with pnpm (or npm/yarn), and build the server. Then add a server definition to the Cursor MCP settings, replacing <base-path> with the absolute path to the compiled dist/mcp_server.js. After starting the server, use the Cursor Agent to chain the provided tools (e.g., read base file, get chunks, translate, update, save).
Key features of i18n MCP Server
- Generate translations in multiple languages from one base file
- Use any language model available in Cursor for translations
- No need for extra translation service payments
- Automates repetitive copy/paste and file duplication
- Supports incremental translation of JSON files
- Provides simple tools for chunked translation workflows
Use cases of i18n MCP Server
- Automatically translate a base language file into several target languages
- Incrementally update existing i18n files as new keys are added
- Keep translation files consistent across a multilingual application
- Speed up global app scaling by eliminating manual translation tasks
FAQ from i18n MCP Server
What does i18n MCP Server do that manual translation or other services don’t?
It automates the translation of JSON language files directly within the Cursor IDE using your chosen language model, removing the need for manual file editing or third‑party paid services.
What runtime or dependencies are required?
The server runs on Node.js. Dependencies are installed via pnpm/npm/yarn. No additional translation API keys are needed because it uses the model available in Cursor.
Where do translated language files live?
Translated files are saved as JSON files in the same folder as the base language file after the workflow’s final “save” step.
Are there any known limits or interruptions?
The current version uses a chunk size of 250 entries and may hit the 25‑tool‑call limit in Cursor, sometimes requiring manual resumption between steps 5 and 6. Token limits of the model may also require adjusting the chunk size.
Is it faster to translate one language per request or all at once?
Testing shows that generating a single language per request is faster than translating all languages in a single request.