Manages i18next translation files: health checks, missing key detection and automated translation workflows.
Setup
Choose your client, copy the config, then fill in any required environment variables.
claude mcp add i18next --env I18N_PROJECT_ROOT='<I18N_PROJECT_ROOT>' --env I18N_LOCALES_PATH='<I18N_LOCALES_PATH>' --env I18N_DEFAULT_LANGUAGE='<I18N_DEFAULT_LANGUAGE>' --env I18N_SUPPORTED_LANGUAGES='<I18N_SUPPORTED_LANGUAGES>' -- npx -y i18next-mcp-server@latest~/.codex/config.toml
[mcp_servers.i18next]
command = "npx"
args = ["-y", "i18next-mcp-server@latest"]
env = { I18N_PROJECT_ROOT = "<I18N_PROJECT_ROOT>", I18N_LOCALES_PATH = "<I18N_LOCALES_PATH>", I18N_DEFAULT_LANGUAGE = "<I18N_DEFAULT_LANGUAGE>", I18N_SUPPORTED_LANGUAGES = "<I18N_SUPPORTED_LANGUAGES>" }
# codex mcp add i18next --env I18N_PROJECT_ROOT='<I18N_PROJECT_ROOT>' --env I18N_LOCALES_PATH='<I18N_LOCALES_PATH>' --env I18N_DEFAULT_LANGUAGE='<I18N_DEFAULT_LANGUAGE>' --env I18N_SUPPORTED_LANGUAGES='<I18N_SUPPORTED_LANGUAGES>' -- npx -y i18next-mcp-server@latest~/.cursor/mcp.json
{
"mcpServers": {
"i18next": {
"command": "npx",
"args": [
"-y",
"i18next-mcp-server@latest"
],
"env": {
"I18N_PROJECT_ROOT": "<I18N_PROJECT_ROOT>",
"I18N_LOCALES_PATH": "<I18N_LOCALES_PATH>",
"I18N_DEFAULT_LANGUAGE": "<I18N_DEFAULT_LANGUAGE>",
"I18N_SUPPORTED_LANGUAGES": "<I18N_SUPPORTED_LANGUAGES>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"i18next": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"i18next-mcp-server@latest"
],
"env": {
"I18N_PROJECT_ROOT": "<I18N_PROJECT_ROOT>",
"I18N_LOCALES_PATH": "<I18N_LOCALES_PATH>",
"I18N_DEFAULT_LANGUAGE": "<I18N_DEFAULT_LANGUAGE>",
"I18N_SUPPORTED_LANGUAGES": "<I18N_SUPPORTED_LANGUAGES>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"i18next": {
"command": "npx",
"args": [
"-y",
"i18next-mcp-server@latest"
],
"env": {
"I18N_PROJECT_ROOT": "<I18N_PROJECT_ROOT>",
"I18N_LOCALES_PATH": "<I18N_LOCALES_PATH>",
"I18N_DEFAULT_LANGUAGE": "<I18N_DEFAULT_LANGUAGE>",
"I18N_SUPPORTED_LANGUAGES": "<I18N_SUPPORTED_LANGUAGES>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"i18next": {
"command": "npx",
"args": [
"-y",
"i18next-mcp-server@latest"
],
"env": {
"I18N_PROJECT_ROOT": "<I18N_PROJECT_ROOT>",
"I18N_LOCALES_PATH": "<I18N_LOCALES_PATH>",
"I18N_DEFAULT_LANGUAGE": "<I18N_DEFAULT_LANGUAGE>",
"I18N_SUPPORTED_LANGUAGES": "<I18N_SUPPORTED_LANGUAGES>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"i18next": {
"command": "npx",
"args": [
"-y",
"i18next-mcp-server@latest"
],
"env": {
"I18N_PROJECT_ROOT": "<I18N_PROJECT_ROOT>",
"I18N_LOCALES_PATH": "<I18N_LOCALES_PATH>",
"I18N_DEFAULT_LANGUAGE": "<I18N_DEFAULT_LANGUAGE>",
"I18N_SUPPORTED_LANGUAGES": "<I18N_SUPPORTED_LANGUAGES>"
}
}
}
}Environment variables
I18N_PROJECT_ROOTI18N_LOCALES_PATHI18N_DEFAULT_LANGUAGEI18N_SUPPORTED_LANGUAGES
Replace the placeholders with your own credentials and keep them out of version control.