Rank
83
A Model Context Protocol (MCP) server for GitLab
Traction
No public download signal
Freshness
Updated 2d ago
Crawler Summary
Intelligent CLI toolkit that automates internationalization workflows with AI-powered translations for JavaScript/TypeScript projects i18n Magic ✨ **The intelligent CLI toolkit that automates your internationalization workflow with AI-powered translations.** Stop context switching. Let AI handle your translations while you stay in your code editor. 🚀 What it does - **🔍 Smart Detection**: Automatically scans your codebase to find translation keys - **🤖 AI Translation**: Generates high-quality translations using OpenAI or Gemini models - **🔄 Sync Capability contract not published. No trust telemetry is available yet. 5 GitHub stars reported by the source. Last updated 2/25/2026.
Freshness
Last checked 2/25/2026
Best For
@scoutello/i18n-magic is best for i18n, internationalization, translation workflows where MCP compatibility matters.
Not Ideal For
Contract metadata is missing or unavailable for deterministic execution.
Evidence Sources Checked
editorial-content, GITHUB MCP, runtime-metrics, public facts pack
Intelligent CLI toolkit that automates internationalization workflows with AI-powered translations for JavaScript/TypeScript projects i18n Magic ✨ **The intelligent CLI toolkit that automates your internationalization workflow with AI-powered translations.** Stop context switching. Let AI handle your translations while you stay in your code editor. 🚀 What it does - **🔍 Smart Detection**: Automatically scans your codebase to find translation keys - **🤖 AI Translation**: Generates high-quality translations using OpenAI or Gemini models - **🔄 Sync
Public facts
5
Change events
1
Artifacts
0
Freshness
Feb 25, 2026
Capability contract not published. No trust telemetry is available yet. 5 GitHub stars reported by the source. Last updated 2/25/2026.
Trust score
Unknown
Compatibility
MCP
Freshness
Feb 25, 2026
Vendor
Bjoernrave
Artifacts
0
Benchmarks
0
Last release
0.61.0
Key links, install path, and a quick operational read before the deeper crawl record.
Summary
Capability contract not published. No trust telemetry is available yet. 5 GitHub stars reported by the source. Last updated 2/25/2026.
Setup snapshot
git clone https://github.com/BjoernRave/i18n-magic.gitSetup complexity is MEDIUM. Standard integration tests and API key provisioning are required before connecting this to production workloads.
Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.
Everything public we have scraped or crawled about this agent, grouped by evidence type with provenance.
Vendor
Bjoernrave
Protocol compatibility
MCP
Adoption signal
5 GitHub stars
Handshake status
UNKNOWN
Crawlable docs
6 indexed pages on the official domain
Merged public release, docs, artifact, benchmark, pricing, and trust refresh events.
Extracted files, examples, snippets, parameters, dependencies, permissions, and artifact metadata.
Extracted files
0
Examples
6
Snippets
0
Languages
typescript
bash
npx @scoutello/i18n-magic scan # Find & add missing translations npx @scoutello/i18n-magic sync # Translate to all languages npx @scoutello/i18n-magic replace [key] # Update existing translation npx @scoutello/i18n-magic remove-key [key] # Remove a specific key npx @scoutello/i18n-magic clean # Remove unused keys npx @scoutello/i18n-magic check-missing # CI/CD validation
javascript
// i18n-magic.js
globPatterns: [
'./src/shared/**/*.tsx', // → common.json
{ pattern: './src/dashboard/**/*.tsx', namespaces: ['dashboard'] },
{ pattern: './src/mobile/**/*.tsx', namespaces: ['mobile'] }
]bash
npm install @scoutello/i18n-magic
javascript
module.exports = {
globPatterns: ['./src/**/*.{ts,tsx,js,jsx}'],
loadPath: 'locales/{{lng}}/{{ns}}.json',
savePath: 'locales/{{lng}}/{{ns}}.json',
locales: ['en', 'de', 'es', 'fr'],
defaultLocale: 'en',
namespaces: ['common'],
defaultNamespace: 'common',
context: 'Your app description here',
model: 'gpt-4o-mini', // or 'gemini-2.0-flash-lite'
// Optional: Auto-clean before scanning
autoClear: true,
// Optional: Skip translation during scan (translate later with sync)
disableTranslationDuringScan: false,
}bash
OPENAI_API_KEY=sk-your-key-here
json
{
"i18n-magic": {
"command": "node",
"args": ["./node_modules/@scoutello/i18n-magic/dist/mcp-server.js"]
}
}Full documentation captured from public sources, including the complete README when available.
Docs source
GITHUB MCP
Editorial quality
ready
Intelligent CLI toolkit that automates internationalization workflows with AI-powered translations for JavaScript/TypeScript projects i18n Magic ✨ **The intelligent CLI toolkit that automates your internationalization workflow with AI-powered translations.** Stop context switching. Let AI handle your translations while you stay in your code editor. 🚀 What it does - **🔍 Smart Detection**: Automatically scans your codebase to find translation keys - **🤖 AI Translation**: Generates high-quality translations using OpenAI or Gemini models - **🔄 Sync
The intelligent CLI toolkit that automates your internationalization workflow with AI-powered translations.
Stop context switching. Let AI handle your translations while you stay in your code editor.
Traditional workflow: 40+ minutes and 13 context switches to add 10 keys across 4 languages.
With i18n-magic + AI agents: 2.5 minutes, zero context switches. Stay in flow.
npx @scoutello/i18n-magic scan # Find & add missing translations
npx @scoutello/i18n-magic sync # Translate to all languages
npx @scoutello/i18n-magic replace [key] # Update existing translation
npx @scoutello/i18n-magic remove-key [key] # Remove a specific key
npx @scoutello/i18n-magic clean # Remove unused keys
npx @scoutello/i18n-magic check-missing # CI/CD validation
scan - Scans your codebase for missing keys, prompts you for values, auto-translates to all locales.
sync - Takes your default locale translations and translates missing keys to other locales. Perfect for CI/CD.
replace - Update an existing translation key across all locales. Detects which namespaces use the key automatically.
remove-key - Remove a specific translation key from all namespaces and locales. Useful when deprecating keys.
clean - Removes unused translation keys from all locales. Great for keeping files lean.
check-missing - Dry-run check. Exits with error code if translations are missing. Perfect for CI pipelines.
// i18n-magic.js
globPatterns: [
'./src/shared/**/*.tsx', // → common.json
{ pattern: './src/dashboard/**/*.tsx', namespaces: ['dashboard'] },
{ pattern: './src/mobile/**/*.tsx', namespaces: ['mobile'] }
]
Result: Separate files per feature (common.json, dashboard.json, mobile.json) across all locales.
MCP (Model Context Protocol) = API for AI agents.
Install the i18n-magic MCP server in Cursor, and your AI gets 6 tools:
search_translations - Prevent DuplicatesFuzzy search across all translations. AI searches before adding anything.
add_translation_key - Add New KeysAdds a single key. If API translation is configured, it auto-translates to other locales; otherwise run sync.
add_translation_keys - Add Multiple Keys FastBatch add 2+ keys in one call with better performance than multiple single-key calls.
get_translation_key - Check What ExistsRetrieve current value for any key.
update_translation_key - Fix & Auto-TranslateUpdate a key and instantly translate to all languages. No sync needed!
list_untranslated_keys - Batch CheckShow all missing keys across your codebase.
npm install @scoutello/i18n-magic
i18n-magic.js in project rootmodule.exports = {
globPatterns: ['./src/**/*.{ts,tsx,js,jsx}'],
loadPath: 'locales/{{lng}}/{{ns}}.json',
savePath: 'locales/{{lng}}/{{ns}}.json',
locales: ['en', 'de', 'es', 'fr'],
defaultLocale: 'en',
namespaces: ['common'],
defaultNamespace: 'common',
context: 'Your app description here',
model: 'gpt-4o-mini', // or 'gemini-2.0-flash-lite'
// Optional: Auto-clean before scanning
autoClear: true,
// Optional: Skip translation during scan (translate later with sync)
disableTranslationDuringScan: false,
}
Key options:
context: Describe your app/domain. Better context = better translations.autoClear: Auto-remove unused keys before scanning.disableTranslationDuringScan: Set true to only add English during scan, then use sync command for translations..envOPENAI_API_KEY=sk-your-key-here
Settings → Features → Model Context Protocol:
{
"i18n-magic": {
"command": "node",
"args": ["./node_modules/@scoutello/i18n-magic/dist/mcp-server.js"]
}
}
Done! Test by asking: "Search for translations with 'password'"
You: "Add a submit button"
AI:
submitButton: "Submit" already exists<Button>{t('submitButton')}</Button>Result: No duplicate keys, instant code.
If nothing exists:
add_translation_key or add_translation_keysnpx @scoutello/i18n-magic syncYou: "Change welcome message to 'Welcome back!'"
AI:
update_translation_keyNo sync needed!
You: "What translations are missing?"
AI: Calls list_untranslated_keys, shows you the list.
Add them now or during development. Your choice.
Building a UserProfile component:
You: "Replace 'User Profile' with translation"
AI:
profile.title: "User Profile" to en/dashboard.json<h1>{t('profile.title')}</h1>You: "Add translations for labels"
AI:
emailLabel in commonprofile.fullNameLabel: "Full Name"You run:
npx @scoutello/i18n-magic sync
Result: All keys now in EN, DE, ES, FR. Took 2 minutes.
Later: "Change title to 'Your Profile'"
AI: Calls update_translation_key → instantly updated in all 4 languages. No sync needed!
// Generic → Okay
context: 'Web application'
// Specific → Much better!
context: 'E-commerce for outdoor gear. Friendly tone. Target: adventurers.'
More context = better AI translations.
# .github/workflows/auto-translate.yml
on:
pull_request:
paths: ['locales/en/**/*.json']
jobs:
translate:
steps:
- run: npx @scoutello/i18n-magic sync
- run: git commit -am "chore: auto-translate"
English changes → auto-translated → committed. Zero manual work.
common.jsonauth, dashboard)Store translations anywhere (S3, databases, CDNs):
// Example: S3 storage
const { S3Client, GetObjectCommand, PutObjectCommand } = require('@aws-sdk/client-s3')
const s3Client = new S3Client({
region: process.env.S3_REGION,
credentials: {
accessKeyId: process.env.S3_ACCESS_KEY,
secretAccessKey: process.env.S3_SECRET_KEY,
}
})
module.exports = {
loadPath: async (locale, namespace) => {
const response = await s3Client.send(
new GetObjectCommand({
Bucket: 'my-translations-bucket',
Key: `locales/${locale}/${namespace}.json`,
})
)
const data = await response.Body.transformToString()
return JSON.parse(data)
},
savePath: async (locale, namespace, data) => {
await s3Client.send(
new PutObjectCommand({
Bucket: 'my-translations-bucket',
Key: `locales/${locale}/${namespace}.json`,
Body: JSON.stringify(data, null, 2),
ContentType: 'application/json',
})
)
},
// ... other config
}
Error: MCP error -32000: Connection closed
Fix: Use auto-detection (no cwd needed):
{
"i18n-magic": {
"command": "node",
"args": ["./node_modules/@scoutello/i18n-magic/dist/mcp-server.js"]
}
}
Still broken? Check i18n-magic.js exists in project root:
ls -la i18n-magic.js
Problem: Keys added but not translated.
Fix: Run sync!
npx @scoutello/i18n-magic sync
add_translation_key/add_translation_keys translate automatically when API translation is configured; otherwise run sync.
npm install @scoutello/i18n-magici18n-magic.js config (see setup section)OPENAI_API_KEY to .env5 minutes to set up. Hours saved every week.
Never context switch for translations again. 🌍
Machine endpoints, protocol fit, contract coverage, invocation examples, and guardrails for agent-to-agent use.
Contract coverage
Status
missing
Auth
None
Streaming
No
Data region
Unspecified
Protocol support
Requires: none
Forbidden: none
Guardrails
Operational confidence: low
curl -s "https://xpersona.co/api/v1/agents/mcp-bjoernrave-i18n-magic/snapshot"
curl -s "https://xpersona.co/api/v1/agents/mcp-bjoernrave-i18n-magic/contract"
curl -s "https://xpersona.co/api/v1/agents/mcp-bjoernrave-i18n-magic/trust"
Trust and runtime signals, benchmark suites, failure patterns, and practical risk constraints.
Trust signals
Handshake
UNKNOWN
Confidence
unknown
Attempts 30d
unknown
Fallback rate
unknown
Runtime metrics
Observed P50
unknown
Observed P95
unknown
Rate limit
unknown
Estimated cost
unknown
Do not use if
Every public screenshot, visual asset, demo link, and owner-provided destination tied to this agent.
Neighboring agents from the same protocol and source ecosystem for comparison and shortlist building.
Rank
83
A Model Context Protocol (MCP) server for GitLab
Traction
No public download signal
Freshness
Updated 2d ago
Rank
80
A Model Context Protocol (MCP) server for GitLab
Traction
No public download signal
Freshness
Updated 2d ago
Rank
74
Expose OpenAPI definition endpoints as MCP tools using the official Rust SDK for the Model Context Protocol (https://github.com/modelcontextprotocol/rust-sdk)
Traction
No public download signal
Freshness
Updated 2d ago
Rank
72
An actix_web backend for the official Rust SDK for the Model Context Protocol (https://github.com/modelcontextprotocol/rust-sdk)
Traction
No public download signal
Freshness
Updated 2d ago
Contract JSON
{
"contractStatus": "missing",
"authModes": [],
"requires": [],
"forbidden": [],
"supportsMcp": false,
"supportsA2a": false,
"supportsStreaming": false,
"inputSchemaRef": null,
"outputSchemaRef": null,
"dataRegion": null,
"contractUpdatedAt": null,
"sourceUpdatedAt": null,
"freshnessSeconds": null
}Invocation Guide
{
"preferredApi": {
"snapshotUrl": "https://xpersona.co/api/v1/agents/mcp-bjoernrave-i18n-magic/snapshot",
"contractUrl": "https://xpersona.co/api/v1/agents/mcp-bjoernrave-i18n-magic/contract",
"trustUrl": "https://xpersona.co/api/v1/agents/mcp-bjoernrave-i18n-magic/trust"
},
"curlExamples": [
"curl -s \"https://xpersona.co/api/v1/agents/mcp-bjoernrave-i18n-magic/snapshot\"",
"curl -s \"https://xpersona.co/api/v1/agents/mcp-bjoernrave-i18n-magic/contract\"",
"curl -s \"https://xpersona.co/api/v1/agents/mcp-bjoernrave-i18n-magic/trust\""
],
"jsonRequestTemplate": {
"query": "summarize this repo",
"constraints": {
"maxLatencyMs": 2000,
"protocolPreference": [
"MCP"
]
}
},
"jsonResponseTemplate": {
"ok": true,
"result": {
"summary": "...",
"confidence": 0.9
},
"meta": {
"source": "GITHUB_MCP",
"generatedAt": "2026-04-17T02:18:06.177Z"
}
},
"retryPolicy": {
"maxAttempts": 3,
"backoffMs": [
500,
1500,
3500
],
"retryableConditions": [
"HTTP_429",
"HTTP_503",
"NETWORK_TIMEOUT"
]
}
}Trust JSON
{
"status": "unavailable",
"handshakeStatus": "UNKNOWN",
"verificationFreshnessHours": null,
"reputationScore": null,
"p95LatencyMs": null,
"successRate30d": null,
"fallbackRate": null,
"attempts30d": null,
"trustUpdatedAt": null,
"trustConfidence": "unknown",
"sourceUpdatedAt": null,
"freshnessSeconds": null
}Capability Matrix
{
"rows": [
{
"key": "MCP",
"type": "protocol",
"support": "unknown",
"confidenceSource": "profile",
"notes": "Listed on profile"
},
{
"key": "i18n",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "internationalization",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "translation",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "localization",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "cli",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "ai",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "openai",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "gemini",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "react-i18next",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "next-i18next",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "vue-i18n",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "automation",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "typescript",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "javascript",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
}
],
"flattenedTokens": "protocol:MCP|unknown|profile capability:i18n|supported|profile capability:internationalization|supported|profile capability:translation|supported|profile capability:localization|supported|profile capability:cli|supported|profile capability:ai|supported|profile capability:openai|supported|profile capability:gemini|supported|profile capability:react-i18next|supported|profile capability:next-i18next|supported|profile capability:vue-i18n|supported|profile capability:automation|supported|profile capability:typescript|supported|profile capability:javascript|supported|profile"
}Facts JSON
[
{
"factKey": "docs_crawl",
"category": "integration",
"label": "Crawlable docs",
"value": "6 indexed pages on the official domain",
"href": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceUrl": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceType": "search_document",
"confidence": "medium",
"observedAt": "2026-04-15T05:03:46.393Z",
"isPublic": true
},
{
"factKey": "vendor",
"category": "vendor",
"label": "Vendor",
"value": "Bjoernrave",
"href": "https://github.com/BjoernRave/i18n-magic#readme",
"sourceUrl": "https://github.com/BjoernRave/i18n-magic#readme",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-02-25T03:22:16.509Z",
"isPublic": true
},
{
"factKey": "protocols",
"category": "compatibility",
"label": "Protocol compatibility",
"value": "MCP",
"href": "https://xpersona.co/api/v1/agents/mcp-bjoernrave-i18n-magic/contract",
"sourceUrl": "https://xpersona.co/api/v1/agents/mcp-bjoernrave-i18n-magic/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-02-25T03:22:16.509Z",
"isPublic": true
},
{
"factKey": "traction",
"category": "adoption",
"label": "Adoption signal",
"value": "5 GitHub stars",
"href": "https://github.com/BjoernRave/i18n-magic",
"sourceUrl": "https://github.com/BjoernRave/i18n-magic",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-02-25T03:22:16.509Z",
"isPublic": true
},
{
"factKey": "handshake_status",
"category": "security",
"label": "Handshake status",
"value": "UNKNOWN",
"href": "https://xpersona.co/api/v1/agents/mcp-bjoernrave-i18n-magic/trust",
"sourceUrl": "https://xpersona.co/api/v1/agents/mcp-bjoernrave-i18n-magic/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true
}
]Change Events JSON
[
{
"eventType": "docs_update",
"title": "Docs refreshed: Sign in to GitHub · GitHub",
"description": "Fresh crawlable documentation was indexed for the official domain.",
"href": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceUrl": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceType": "search_document",
"confidence": "medium",
"observedAt": "2026-04-15T05:03:46.393Z",
"isPublic": true
}
]Sponsored
Ads related to @scoutello/i18n-magic and adjacent AI workflows.