gitlab-mcp
A Model Context Protocol (MCP) server for GitLab
Crawler Summary
MCP server for automatic Android strings.xml translation Android i18n MCP Server <div align="right"> <a href="https://github.com/realskyrin/android-i18n-mcp/blob/main/README.md">English</a> | <a href="https://github.com/realskyrin/android-i18n-mcp/blob/main/README-ZH.md">中文</a> </div> An MCP (Model Context Protocol) server that automatically translates Android app string resources to multiple languages by detecting changes in the default strings.xml files using Git diff. � Published capability contract available. No trust telemetry is available yet. 4 GitHub stars reported by the source. Last updated 2/24/2026.
Freshness
Last checked 2/22/2026
Best For
Contract is available with explicit auth and schema references.
Not Ideal For
android-i18n-mcp is not ideal for teams that need stronger public trust telemetry, lower setup complexity, or more explicit contract coverage before production rollout.
Evidence Sources Checked
editorial-content, capability-contract, runtime-metrics, public facts pack
MCP server for automatic Android strings.xml translation Android i18n MCP Server <div align="right"> <a href="https://github.com/realskyrin/android-i18n-mcp/blob/main/README.md">English</a> | <a href="https://github.com/realskyrin/android-i18n-mcp/blob/main/README-ZH.md">中文</a> </div> An MCP (Model Context Protocol) server that automatically translates Android app string resources to multiple languages by detecting changes in the default strings.xml files using Git diff. �
Public facts
7
Change events
1
Artifacts
0
Freshness
Feb 22, 2026
Published capability contract available. No trust telemetry is available yet. 4 GitHub stars reported by the source. Last updated 2/24/2026.
Trust score
Unknown
Compatibility
MCP
Freshness
Feb 22, 2026
Vendor
Realskyrin
Artifacts
0
Benchmarks
0
Last release
1.0.0
Key links, install path, and a quick operational read before the deeper crawl record.
Summary
Published capability contract available. No trust telemetry is available yet. 4 GitHub stars reported by the source. Last updated 2/24/2026.
Setup snapshot
git clone https://github.com/realskyrin/android-i18n-mcp.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
Realskyrin
Protocol compatibility
MCP
Auth modes
mcp, api_key
Machine-readable schemas
OpenAPI or schema references published
Adoption signal
4 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
git clone <repository-url> cd android-i18n-mcp
bash
npm install
bash
npm run build
bash
cp .env.example .env
env
ANDROID_PROJECT_ROOT=/path/to/your/android/project TRANSLATION_PROVIDER=openai TRANSLATION_API_KEY=your_api_key_here # Optional: TRANSLATION_API_BASE_URL=https://api.openai.com/v1 TRANSLATION_MODEL=gpt-4o-mini # Comma-separated list of languages to translate (optional, defaults to all 28 languages) TRANSLATION_LANGUAGES=zh-CN,es,fr,de,ja,ko # Source language setting (optional, defaults to 'en'. If your default strings.xml uses another language like Chinese, set it to 'zh-CN') TRANSLATOR_SOURCE_LANGUAGE=en
json
{
"mcpServers": {
"android-i18n": {
"command": "node",
"args": ["/path/to/android-i18n-mcp/build/index.js"],
"env": {
"ANDROID_PROJECT_ROOT": "/path/to/your/android/project",
"TRANSLATION_PROVIDER": "openai",
"TRANSLATION_API_BASE_URL": "https://api.deepseek.com/v1",
"TRANSLATION_API_KEY": "your_api_key_here",
"TRANSLATION_LANGUAGES": "zh-CN,es,fr,de", // Optional: specific languages
"TRANSLATOR_SOURCE_LANGUAGE": "en" // Optional: source language (default: en)
}
}
}
}Full documentation captured from public sources, including the complete README when available.
Docs source
GITHUB MCP
Editorial quality
ready
MCP server for automatic Android strings.xml translation Android i18n MCP Server <div align="right"> <a href="https://github.com/realskyrin/android-i18n-mcp/blob/main/README.md">English</a> | <a href="https://github.com/realskyrin/android-i18n-mcp/blob/main/README-ZH.md">中文</a> </div> An MCP (Model Context Protocol) server that automatically translates Android app string resources to multiple languages by detecting changes in the default strings.xml files using Git diff. �
An MCP (Model Context Protocol) server that automatically translates Android app string resources to multiple languages by detecting changes in the default strings.xml files using Git diff.
📖 Project Introduction Article (Chinese)
strings.xml files using Git diffThe server supports translation to 28 languages. You can configure which languages to translate to using the TRANSLATION_LANGUAGES environment variable.
zh-CN - Simplified Chinese (values-zh-rCN)zh-TW - Traditional Chinese Taiwan (values-zh-rTW)zh-SG - Traditional Chinese Singapore (values-zh-rSG)zh-HK - Traditional Chinese Hong Kong (values-zh-rHK)zh-MO - Traditional Chinese Macau (values-zh-rMO)en - English (values-en)es - Spanish (values-es)hi - Hindi (values-hi)fr - French (values-fr)ar - Arabic (values-ar)bn - Bengali (values-bn)pt - Portuguese (values-pt)ru - Russian (values-ru)ur - Urdu (values-ur)id - Indonesian (values-id)de - German (values-de)ja - Japanese (values-ja)sw - Swahili (values-sw)mr - Marathi (values-mr)te - Telugu (values-te)tr - Turkish (values-tr)ko - Korean (values-ko)ta - Tamil (values-ta)vi - Vietnamese (values-vi)az - Azerbaijani (values-az)be - Belarusian (values-be)it - Italian (values-it)uk - Ukrainian (values-uk)git clone <repository-url>
cd android-i18n-mcp
npm install
npm run build
cp .env.example .env
Edit .env file with your configuration:
ANDROID_PROJECT_ROOT=/path/to/your/android/project
TRANSLATION_PROVIDER=openai
TRANSLATION_API_KEY=your_api_key_here
# Optional:
TRANSLATION_API_BASE_URL=https://api.openai.com/v1
TRANSLATION_MODEL=gpt-4o-mini
# Comma-separated list of languages to translate (optional, defaults to all 28 languages)
TRANSLATION_LANGUAGES=zh-CN,es,fr,de,ja,ko
# Source language setting (optional, defaults to 'en'. If your default strings.xml uses another language like Chinese, set it to 'zh-CN')
TRANSLATOR_SOURCE_LANGUAGE=en
{
"mcpServers": {
"android-i18n": {
"command": "node",
"args": ["/path/to/android-i18n-mcp/build/index.js"],
"env": {
"ANDROID_PROJECT_ROOT": "/path/to/your/android/project",
"TRANSLATION_PROVIDER": "openai",
"TRANSLATION_API_BASE_URL": "https://api.deepseek.com/v1",
"TRANSLATION_API_KEY": "your_api_key_here",
"TRANSLATION_LANGUAGES": "zh-CN,es,fr,de", // Optional: specific languages
"TRANSLATOR_SOURCE_LANGUAGE": "en" // Optional: source language (default: en)
}
}
}
}
Add the following to your codx.toml:
[mcp_servers.android-i18n]
command = "node"
args = ["/path/to/android-i18n-mcp/build/index.js"]
[mcp_servers.android-i18n.env]
ANDROID_PROJECT_ROOT = "/path/to/android/project"
TRANSLATION_PROVIDER = "deepseek"
TRANSLATION_API_BASE_URL = "https://api.deepseek.com/v1"
TRANSLATION_API_KEY = "sk-xxxxxx"
TRANSLATION_MODEL = "deepseek-chat"
TRANSLATION_LANGUAGES = "zh-CN,es,fr,de,ja,ko" # Optional: specific languages
TRANSLATOR_SOURCE_LANGUAGE = "en" # Optional: source language (default: en)
You can configure AGENTS.md or CLAUDE.md to have the Agent automatically call MCP when strings.xml files are modified:
## Copy res update Guidelines
- Whenever a strings.xml file is modified, run android-i18n mcp to check and update copy.
translate_all_modulesDetects changes in all default strings.xml files across all modules and translates them to all supported languages.
Parameters:
projectRoot (optional): Android project root directory. Uses ANDROID_PROJECT_ROOT env var if not provided.Example:
{
"tool": "translate_all_modules",
"arguments": {
"projectRoot": "/path/to/android/project"
}
}
translate_moduleDetects changes in a specific module's default strings.xml and translates to all languages.
Parameters:
modulePath (required): Path to the Android module directoryExample:
{
"tool": "translate_module",
"arguments": {
"modulePath": "/path/to/android/project/app"
}
}
check_changesChecks for uncommitted changes in default strings.xml files without performing translation.
Parameters:
projectRoot (optional): Android project root directoryExample:
{
"tool": "check_changes",
"arguments": {
"projectRoot": "/path/to/android/project"
}
}
check_missing_languagesChecks which language directories are missing compared to the configured TRANSLATION_LANGUAGES environment variable.
Parameters:
projectRoot (optional): Android project root directoryExample:
{
"tool": "check_missing_languages",
"arguments": {
"projectRoot": "/path/to/android/project"
}
}
create_and_translate_missing_languagesCreates missing language directories and translates the default strings.xml into them for all configured languages.
Parameters:
projectRoot (optional): Android project root directoryExample:
{
"tool": "create_and_translate_missing_languages",
"arguments": {
"projectRoot": "/path/to/android/project"
}
}
Change Detection: The server uses Git diff to detect which strings have been added or modified in the default values/strings.xml files since the last commit.
Batch Translation: Changed strings are translated in batches to the target language using the configured AI translation API.
XML Merging: Translated strings are merged into the existing language-specific strings.xml files, preserving existing translations and only updating changed ones.
Module Support: The server can process multiple Android modules in a single operation, detecting all strings.xml files matching the pattern **/src/main/res/values/strings.xml.
Currently supported:
Planned support:
TRANSLATION_PROVIDER=deepseek
TRANSLATION_API_KEY=your_deepseek_api_key
# Optional: defaults to deepseek-chat
TRANSLATION_MODEL=deepseek-chat
# Optional: specific languages to translate (defaults to all 28)
TRANSLATION_LANGUAGES=zh-CN,en,es,fr,de,ja,ko
# Optional: source language (defaults to 'en')
TRANSLATOR_SOURCE_LANGUAGE=en
You can configure which languages to translate to using the TRANSLATION_LANGUAGES environment variable:
Translate to all 28 supported languages (default):
# Don't set TRANSLATION_LANGUAGES or leave it empty
Translate to specific languages only:
TRANSLATION_LANGUAGES=zh-CN,es,fr,de,ja,ko
Single language:
TRANSLATION_LANGUAGES=zh-CN
Note: If you specify languages that are not supported, the server will:
By default, the server assumes your default values/strings.xml file uses English (en). If your project uses a different language as the default (e.g., Chinese), you need to configure the source language:
Scenario 1: Default strings.xml uses English (no configuration needed)
# Don't set TRANSLATOR_SOURCE_LANGUAGE, defaults to 'en'
Scenario 2: Default strings.xml uses Chinese
TRANSLATOR_SOURCE_LANGUAGE=zh-CN
Scenario 3: Using other languages as default
# Any supported language code
TRANSLATOR_SOURCE_LANGUAGE=es # Spanish
TRANSLATOR_SOURCE_LANGUAGE=fr # French
TRANSLATOR_SOURCE_LANGUAGE=ja # Japanese
# etc...
Important Notes:
Run in development mode with hot reload:
npm run dev
Build the project:
npm run build
android-i18n-mcp/
├── src/
│ ├── index.ts # MCP server entry point
│ ├── xmlParser.ts # Android strings.xml parsing
│ ├── gitDiff.ts # Git diff analysis
│ ├── translator.ts # Translation API integration
│ └── translationManager.ts # Translation orchestration
├── package.json
├── tsconfig.json
├── .env.example
└── README.md
translatable attribute not set to falseMIT
Machine endpoints, protocol fit, contract coverage, invocation examples, and guardrails for agent-to-agent use.
Contract coverage
Status
ready
Auth
mcp, api_key
Streaming
No
Data region
global
Protocol support
Requires: mcp, lang:typescript
Forbidden: none
Guardrails
Operational confidence: medium
curl -s "https://www.xpersona.co/api/v1/agents/mcp-realskyrin-android-i18n-mcp/snapshot"
curl -s "https://www.xpersona.co/api/v1/agents/mcp-realskyrin-android-i18n-mcp/contract"
curl -s "https://www.xpersona.co/api/v1/agents/mcp-realskyrin-android-i18n-mcp/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
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.
A Model Context Protocol (MCP) server for GitLab
A Model Context Protocol (MCP) server for GitLab
This agent researches trends, scripts videos, sets up engagement automation, and compiles everything into a shareable document.
This agent analyzes Reddit data to generate trending content concepts tailored to your audience.
Contract JSON
{
"contractStatus": "ready",
"authModes": [
"mcp",
"api_key"
],
"requires": [
"mcp",
"lang:typescript"
],
"forbidden": [],
"supportsMcp": true,
"supportsA2a": false,
"supportsStreaming": false,
"inputSchemaRef": "https://github.com/realskyrin/android-i18n-mcp#input",
"outputSchemaRef": "https://github.com/realskyrin/android-i18n-mcp#output",
"dataRegion": "global",
"contractUpdatedAt": "2026-02-24T19:46:27.483Z",
"sourceUpdatedAt": "2026-02-24T19:46:27.483Z",
"freshnessSeconds": 19550472
}Invocation Guide
{
"preferredApi": {
"snapshotUrl": "https://www.xpersona.co/api/v1/agents/mcp-realskyrin-android-i18n-mcp/snapshot",
"contractUrl": "https://www.xpersona.co/api/v1/agents/mcp-realskyrin-android-i18n-mcp/contract",
"trustUrl": "https://www.xpersona.co/api/v1/agents/mcp-realskyrin-android-i18n-mcp/trust"
},
"curlExamples": [
"curl -s \"https://www.xpersona.co/api/v1/agents/mcp-realskyrin-android-i18n-mcp/snapshot\"",
"curl -s \"https://www.xpersona.co/api/v1/agents/mcp-realskyrin-android-i18n-mcp/contract\"",
"curl -s \"https://www.xpersona.co/api/v1/agents/mcp-realskyrin-android-i18n-mcp/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-10-09T02:27:40.141Z"
}
},
"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": "supported",
"confidenceSource": "contract",
"notes": "Confirmed by capability contract"
}
],
"flattenedTokens": "protocol:MCP|supported|contract"
}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": "protocols",
"category": "compatibility",
"label": "Protocol compatibility",
"value": "MCP",
"href": "https://www.xpersona.co/api/v1/agents/mcp-realskyrin-android-i18n-mcp/contract",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/mcp-realskyrin-android-i18n-mcp/contract",
"sourceType": "contract",
"confidence": "high",
"observedAt": "2026-02-24T19:46:27.483Z",
"isPublic": true
},
{
"factKey": "auth_modes",
"category": "compatibility",
"label": "Auth modes",
"value": "mcp, api_key",
"href": "https://www.xpersona.co/api/v1/agents/mcp-realskyrin-android-i18n-mcp/contract",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/mcp-realskyrin-android-i18n-mcp/contract",
"sourceType": "contract",
"confidence": "high",
"observedAt": "2026-02-24T19:46:27.483Z",
"isPublic": true
},
{
"factKey": "schema_refs",
"category": "artifact",
"label": "Machine-readable schemas",
"value": "OpenAPI or schema references published",
"href": "https://github.com/realskyrin/android-i18n-mcp#input",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/mcp-realskyrin-android-i18n-mcp/contract",
"sourceType": "contract",
"confidence": "high",
"observedAt": "2026-02-24T19:46:27.483Z",
"isPublic": true
},
{
"factKey": "vendor",
"category": "vendor",
"label": "Vendor",
"value": "Realskyrin",
"href": "https://github.com/realskyrin/android-i18n-mcp",
"sourceUrl": "https://github.com/realskyrin/android-i18n-mcp",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-02-24T19:43:14.176Z",
"isPublic": true
},
{
"factKey": "traction",
"category": "adoption",
"label": "Adoption signal",
"value": "4 GitHub stars",
"href": "https://github.com/realskyrin/android-i18n-mcp",
"sourceUrl": "https://github.com/realskyrin/android-i18n-mcp",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-02-24T19:43:14.176Z",
"isPublic": true
},
{
"factKey": "handshake_status",
"category": "security",
"label": "Handshake status",
"value": "UNKNOWN",
"href": "https://www.xpersona.co/api/v1/agents/mcp-realskyrin-android-i18n-mcp/trust",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/mcp-realskyrin-android-i18n-mcp/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 android-i18n-mcp and adjacent AI workflows.