Skip to main content
Glama
TheoryofShadows

@mcpx-digital/i18n-keys

README.md
# @mcpx-digital/i18n-keys

**MCP server for locale key comparison.**

Compare JSON/YAML locale files for missing or extra keys across languages, find empty translations, and list flattened keys. Supports nested objects via dot-path keys.

> **Local files only.** No translation APIs; no network calls.

## Install

```bash
npx -y @mcpx-digital/i18n-keys
```

## Cursor `mcp.json` example

```json
{
  "mcpServers": {
    "i18n-keys": {
      "command": "npx",
      "args": ["-y", "@mcpx-digital/i18n-keys"]
    }
  }
}
```

Local clone:

```json
{
  "mcpServers": {
    "i18n-keys": {
      "command": "node",
      "args": ["/absolute/path/to/i18n-keys-mcp/index.js"]
    }
  }
}
```

## Tools

| Tool | What it does |
|------|----------------|
| `compare_locales` | Missing/extra keys vs a base locale |
| `find_empty_translations` | Empty / null / whitespace values |
| `list_keys` | Flattened key list for one file |

## Example prompts

- “Compare `en.json`, `es.json`, and `fr.yaml` — what’s missing in Spanish?”
- “Find empty translations in `locales/*.json`”
- “List all keys in `en.json`”

## Development

```bash
git clone https://github.com/TheoryofShadows/i18n-keys-mcp.git
cd i18n-keys-mcp
npm install
npm test
```

## License

MIT

TDQS

A3.9/5.0

Scored across 3 tools

Disambiguation5/5

Each tool targets a clearly distinct operation: enumerating keys, diffing locales against a base, and detecting empty values. There is minimal risk of confusing one for another.

Naming Consistency5/5

All three tools follow a strict verb_noun snake_case pattern (list_keys, compare_locales, find_empty_translations), which is predictable and readable.

Tool Count4/5

Three tools is a bit thin, but the server has a narrow read-only scope over local locale files, so each tool earns its place without redundancy.

Completeness4/5

Core inspection workflows (list, compare, find empties) are covered, but there is no way to look up a single key's value or search/sort keys, leaving minor gaps an agent must work around.

Maintenance

ActivityMaintained
ResponsivenessNo issues