MCP server for Nativ — AI-powered localization platform. Translate text, manage translation memory, and access style guides from any MCP-compatible AI tool.
Project description
Nativ MCP Server
mcp-name: io.github.nativ-technologies/nativ
AI-powered localization for any MCP-compatible tool — Claude Code, Cursor, Windsurf, and more.
Nativ is a localization platform that uses AI to translate content while respecting your brand voice, translation memory, glossaries, and style guides. This MCP server brings Nativ's full localization engine into your AI coding workflow.
Why use Nativ via MCP?
- Translate in-context — localize strings, copy, and content directly from your editor without switching to a browser
- Translation Memory aware — every translation checks your TM first, ensuring consistency across your project
- Brand voice built-in — your team's tone, formality, and style guides are applied automatically
- Review and approve — add approved translations to TM from your editor, building quality over time
- Multi-format — JSON, CSV, Markdown, or freeform text — Nativ handles it all
Quick Start
1. Get a Nativ API Key
Sign up at dashboard.usenativ.com, go to Settings → API Keys, and create a key. It looks like nativ_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.
2. Install
Claude Code / Claude Desktop
Add to your MCP configuration (~/.claude/claude_desktop_config.json):
{
"mcpServers": {
"nativ": {
"command": "uvx",
"args": ["nativ-mcp"],
"env": {
"NATIV_API_KEY": "nativ_your_api_key_here"
}
}
}
}
Cursor
Add to your Cursor MCP settings (.cursor/mcp.json in your project or global config):
{
"mcpServers": {
"nativ": {
"command": "uvx",
"args": ["nativ-mcp"],
"env": {
"NATIV_API_KEY": "nativ_your_api_key_here"
}
}
}
}
Windsurf
Add to your Windsurf MCP configuration:
{
"mcpServers": {
"nativ": {
"command": "uvx",
"args": ["nativ-mcp"],
"env": {
"NATIV_API_KEY": "nativ_your_api_key_here"
}
}
}
}
Note:
uvxruns the package directly from PyPI without needing a manual install. If you prefer, install it first withpip install nativ-mcpand use"command": "nativ-mcp"instead.
3. Use it
Ask your AI assistant things like:
- "Translate 'Welcome back!' to French and German"
- "Check our translation memory for existing translations of 'Sign up'"
- "What are our style guides for localization?"
- "Localize these i18n strings to all configured languages"
- "Review this German translation against our TM and brand voice"
Tools
| Tool | Description |
|---|---|
translate |
Translate text using the full localization engine (TM, style guides, brand voice, glossary) |
translate_batch |
Translate multiple texts to a target language in one call |
search_translation_memory |
Fuzzy-search the translation memory for existing translations |
add_translation_memory_entry |
Add an approved translation to TM for future reuse |
get_languages |
List all configured languages with formality and style settings |
get_translation_memory_stats |
Get TM statistics — total entries, sources, and breakdown |
get_style_guides |
List all style guides with their content and status |
get_brand_voice |
Get the brand voice prompt that shapes all translations |
Resources
| URI | Description |
|---|---|
nativ://languages |
Configured languages (JSON) |
nativ://style-guides |
All style guides (JSON) |
nativ://brand-prompt |
Brand voice prompt (JSON) |
nativ://tm/stats |
Translation memory statistics (JSON) |
Prompts
| Prompt | Description |
|---|---|
localize-content |
Guided workflow to localize content into target languages |
review-translation |
Review a translation against TM, style guides, and brand voice |
batch-localize-strings |
Batch-localize i18n strings with structured output |
Examples
Translate a marketing headline
You: Translate "The future of luxury, delivered" to French and Japanese
AI: [calls translate tool for each language]
Translation (French): "L'avenir du luxe, livré chez vous"
TM Match: 0% — new translation, no prior TM entries
Rationale: "Livré chez vous" adds a personal touch absent from the literal
"livré", aligning with the brand's premium yet approachable voice.
Translation (Japanese): "ラグジュアリーの未来を、あなたの元へ"
TM Match: 45% partial — similar pattern found in TM from brand_voice source
Check existing translations
You: Do we have translations for "Add to cart" in our TM?
AI: [calls search_translation_memory]
TM Search Results for "Add to cart" (3 matches):
- 95% [strong] "Add to cart" → "Ajouter au panier" (source: approved)
- 95% [strong] "Add to cart" → "In den Warenkorb" (source: brand_voice)
- 72% [partial] "Add items to cart" → "Ajouter des articles" (source: phrase_tm)
Batch localize i18n strings
You: Localize these to French:
- "Sign up"
- "Log in"
- "Forgot password?"
- "Continue with Google"
AI: [calls translate_batch]
Batch translation to French (4 items):
1. "Sign up" → "S'inscrire" (TM 100%)
2. "Log in" → "Se connecter" (TM 100%)
3. "Forgot password?" → "Mot de passe oublié ?" (TM 92%)
4. "Continue with Google" → "Continuer avec Google" (TM 85%)
Configuration
| Environment Variable | Required | Description |
|---|---|---|
NATIV_API_KEY |
Yes | Your Nativ API key (nativ_xxx...) |
NATIV_API_URL |
No | API base URL (defaults to https://api.usenativ.com) |
How It Works
This MCP server acts as a bridge between your AI coding assistant and the Nativ API:
┌─────────────────────┐ ┌──────────────┐ ┌─────────────────┐
│ Claude / Cursor / │────▶│ Nativ MCP │────▶│ Nativ API │
│ Windsurf / etc. │◀────│ Server │◀────│ (Translation, │
│ │ │ (stdio) │ │ TM, Styles) │
└─────────────────────┘ └──────────────┘ └─────────────────┘
The MCP server runs locally via stdio. It authenticates with your API key and calls the Nativ REST API on your behalf. Your AI assistant sees Nativ's tools, resources, and prompts as native capabilities.
Development
# Clone the repo
git clone https://github.com/nativ-ai/nativ-mcp.git
cd nativ-mcp
# Set up environment
uv venv
source .venv/bin/activate
uv pip install -e ".[dev]"
# Run the server (for testing)
NATIV_API_KEY=nativ_xxx nativ-mcp
# Run with MCP Inspector
NATIV_API_KEY=nativ_xxx npx @modelcontextprotocol/inspector uv run nativ-mcp
License
MIT — see LICENSE.
Links
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file nativ_mcp-0.1.2.tar.gz.
File metadata
- Download URL: nativ_mcp-0.1.2.tar.gz
- Upload date:
- Size: 11.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6f3fe19257025004d79a3a4e25a2a671a60777c2e7d4d225aa026301b7d8ceb9
|
|
| MD5 |
b32712f45db8b03c35e0e3fb73e6967c
|
|
| BLAKE2b-256 |
97bde0e830d7161b7f60e31540b31864321784ffeb891d9e7c361a94b39a3dbb
|
File details
Details for the file nativ_mcp-0.1.2-py3-none-any.whl.
File metadata
- Download URL: nativ_mcp-0.1.2-py3-none-any.whl
- Upload date:
- Size: 11.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
65efea389084295a92d19322000ed9c38f4dd405599b0c32ce2a23fe7f4349c2
|
|
| MD5 |
d4b18526d9bf1ab5c54f7456e00f4c6a
|
|
| BLAKE2b-256 |
80898f57bdc9911f36cb6889457dca42ecc7db68a39e0c54f46918f54a1abca1
|