i18n-mcp
MCP server for Rails YAML and JSON locale files: read, search, write and audit translations
Install
{
"mcpServers": {
"i18n": {
"command": "npx",
"args": [
"-y", "mcp-i18n",
"--locales-dir", "/path/to/rails-app/config/locales"
]
}
}
}Works with Claude Desktop, Kimi Code and other MCP clients.
This is third-party code. Review the repository files before installing.
What it does
Gives an agent tools for a Rails app's config/locales directory. It can list locales and keys, search keys and values, create, update and delete keys, and find missing translations and placeholder mismatches. Writes go through the YAML AST, so comments and key order are preserved.
Who it is for. Developers of multilingual Rails applications.
Good fit when
- Add new UI strings to all locales at once
- Find missing translations and empty values before a release
- Check that %{...} placeholders match the base locale
Not a fit when
- The project is not Rails and uses another format such as gettext or i18next
- You need machine translation: the server only manages files
Example request
Find keys under dashboards that have no Russian translation and add themLimitations
Supports Rails-style locale layouts in .yml, .yaml and .json files. Duplicate keys use last-wins semantics like Rails. Files that fail to parse are reported under problems but not edited. The default base locale for audits is en.
How to disable. Remove the i18n block from mcpServers in the client config.
MCP
- Transport
- stdio
- Authentication
- not required
| Environment variables | |
|---|---|
| I18N_LOCALES_DIR | Locales directory when --locales-dir is not passed |
Security check
- Runs a local process from npm
- Modifies and deletes keys in the project's locale files
README in short
i18n-mcp works with a Rails locales directory and detects both per-locale folder and flat file layouts. It runs via npx without install or builds from source. Seven tools cover listing locales and keys, getting, searching, setting, deleting and auditing translations. The project has tests with enforced coverage thresholds and a stdio smoke test.
FAQ
Are YAML comments preserved?
Yes, writes go through the YAML AST, so comments and key order survive.
Where do new keys go?
Into the key's current file, the nearest prefix's file, or the default common.yml, which --default-file changes.
Related
A skills library that gives coding agents a development process: brainstorming, planning, TDD, subagents and code review
Skills for real engineers by Matt Pocock
Skills For Real Engineers
Small composable skills for engineering with agents: plan grilling, TDD, bug diagnosis, code review and architecture
Reference MCP servers
Model Context Protocol servers
Official reference MCP servers: Filesystem, Fetch, Git, Memory, Sequential Thinking, Time and Everything
Up-to-date, version-specific library docs and code examples in your agent's context, via MCP or a CLI plus skill