Token导航 LogoToken导航

MCP Server · AI代理

Crowdin Translation MCP

AI驱动的Crowdin项目翻译工作流自动化服务,支持与任何MCP兼容的AI客户端集成,实现智能字符串过滤、标签管理和批量翻译上传。

stdio官方级别未说明来源级核验工具 5
工作流自动化PythonClaudeClaude DesktopCline

快速开始

作者 / 组织
Trofimov-Y
提供方
Trofimov-Y
运行时
Python

工具数量

5

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

0

仓库热度

收录来源

1 个

MCP World

选型结论

Crowdin Translation MCP 属于AI代理类 MCP Server,公开资料标注 5 个工具,通过stdio 本地进程接入,适配 Claude Desktop、Claude、Cline,有可以直接复制的安装命令;接入前先确认权限范围。

分类

AI代理

传输方式

stdio

认证方式

无需认证

部署方式

公开资料未说明

安装与配置

安装命令

python3 -m venv venv

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 Python,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 5 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

详细介绍

翻译MCP服务器

Crowdin项目的人工智能翻译工作流程自动化。使用 任何兼容MCP的AI客户端 (克劳德桌面,克莱恩,Zed等)。

______________________________________________________________________

🎯 它做什么

此MCP服务器将您的AI助手直接连接到Crowdin,从而实现:

  • 🔍 智能字符串过滤 基于标签的组织
  • 📊 基于表格的工作流程 便于翻译审查
  • 🏷️ 标签管理 将字符串标记为不翻译
  • 🔄 批量翻译 带有详细的上传反馈
  • 🎯 精确字符串搜索 检查翻译状态

不需要单独的API密钥 -使用您现有的AI订阅进行翻译!

______________________________________________________________________

🚀 快速开始

先决条件

  • Python 3.10或更高版本(或直接安装 uv)
  • API代币众筹账户
  • MCP兼容的AI客户端(Claude Desktop、Cline、Zed等)

安装

选项1:使用uvx(推荐-无需设置)

只需添加到AI客户端的配置中- uvx 自动处理安装:

{
  "mcpServers": {
    "translation-mcp": {
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/Trofimov-Y/crowdin-translation-mcp",
        "translation-mcp"
      ],
      "env": {
        "CROWDIN_API_TOKEN": "your_crowdin_token_here",
        "CROWDIN_PROJECT_ID": "your_project_id_here"
      }
    }
  }
}

优点:

  • ✅ 无需克隆存储库
  • ✅ 无虚拟环境设置
  • ✅ 重启时自动更新
  • ✅ 开箱即用

方案2:地方发展

对于想要修改代码的开发人员:

# Clone repository
git clone https://github.com/Trofimov-Y/crowdin-translation-mcp
cd translation-mcp

# Create virtual environment
python3 -m venv venv
source venv/bin/activate  # Windows: venv\Scripts\activate

# Install dependencies
pip install -e .

然后配置绝对路径:

{
  "mcpServers": {
    "translation-mcp": {
      "command": "/absolute/path/to/translation-mcp/venv/bin/python",
      "args": ["-m", "translation_mcp.server"],
      "env": {
        "CROWDIN_API_TOKEN": "your_token",
        "CROWDIN_PROJECT_ID": "your_project_id"
      }
    }
  }
}

______________________________________________________________________

🔑 获取您的凭据

Crowdin API代币

  1. 首选https://crowdin.com/settings#api-钥匙
  2. 点击“新建令牌”
  3. 名称:“翻译MCP”
  4. 所需范围:

- project.read -阅读项目信息 - string.read -读取源字符串 - translation.write -上传翻译 - label.read -阅读标签 - label.write -管理标签

  1. 复制令牌

Crowdin项目ID

  1. 打开您的Crowdin项目
  2. 查看URL: https://crowdin.com/project/your-project/12345
  3. 数字 12345 是您的项目ID

______________________________________________________________________

📝 配置

克劳德桌面

地点: ~/Library/Application Support/Claude/claude_desktop_config.json (macOS)\ 地点: %APPDATA%\Claude\claude_desktop_config.json (Windows)

{
  "mcpServers": {
    "translation-mcp": {
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/Trofimov-Y/crowdin-translation-mcp",
        "translation-mcp"
      ],
      "env": {
        "CROWDIN_API_TOKEN": "your_crowdin_token_here",
        "CROWDIN_PROJECT_ID": "your_project_id_here"
      }
    }
  }
}

Cline(VSCode扩展)

添加到临床MCP设置:

{
  "translation-mcp": {
    "command": "uvx",
    "args": [
      "--from",
      "git+https://github.com/Trofimov-Y/crowdin-translation-mcp",
      "translation-mcp"
    ],
    "env": {
      "CROWDIN_API_TOKEN": "your_token",
      "CROWDIN_PROJECT_ID": "your_project_id"
    }
  }
}

Zed编辑

添加到Zed设置:

{
  "context_servers": {
    "translation-mcp": {
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/Trofimov-Y/crowdin-translation-mcp",
        "translation-mcp"
      ],
      "env": {
        "CROWDIN_API_TOKEN": "your_token",
        "CROWDIN_PROJECT_ID": "your_project_id"
      }
    }
  }
}

______________________________________________________________________

💡 用法示例

配置后,在AI助手中使用自然语言命令:

"Show me untranslated strings"
"Get project languages"
"Mark strings 274, 284, 300 as do not translate"
"Search for string 'Welcome'"
"Translate the untranslated strings to French and German"

典型工作流程

  1. 查看需要翻译的内容:
   "Show untranslated strings"
  1. 标记不应翻译的名称/品牌:
   "Mark strings 36, 38, 42 as do-not-translate"
  1. 获取筛选列表:
   "Show untranslated strings again"
  1. 翻译和上传:
   "Translate these strings to all missing languages and upload"

______________________________________________________________________

🛠️ 可用的MCP工具

get_project_info

获取Crowdin项目信息和目标语言。

在以下情况下使用:

  • 开始新的翻译会话
  • 需要知道项目中有哪些语言
  • 想要验证项目配置

退货:

{
  "project_id": "12345",
  "target_languages": ["fr", "de", "es-ES", "it", "pt-BR"],
  "total_languages": 5,
  "message": "✅ Project loaded successfully"
}

______________________________________________________________________

get_untranslated_strings

获取需要翻译的字符串 表格格式.

在以下情况下使用:

  • 用户问“需要翻译什么?”
  • 想要查看翻译进度
  • 需要查找特定语言中缺少的字符串

参数:

  • limit (可选):要返回的最大字符串数(默认值:35,最大值:500)
  • exclude_labels (可选):要过滤的标签(默认值: ["do-not-translate"])

退货:

一个包含所有未翻译字符串的markdown表:

| ID  | Text                  | Identifier       | Missing Languages |
|-----|-----------------------|------------------|-------------------|
| 36  | `Routine`             | `routine`        | fr, de, it        |
| 38  | `{numMinutes} min`    | `numMinutes`     | fr, es-ES, it     |
| 42  | `Welcome to app`      | `app.welcome`    | fr, de            |

重要提示: 此工具始终返回一个表,即使是空的。

标签筛选:

  • 默认情况下,排除具有以下条件的字符串 do-not-translate 标签
  • 使用 exclude_labels=[] 查看所有字符串,包括标记的字符串

示例:

"Show untranslated strings"                    → Returns filtered table
"Get all untranslated including marked ones"   → Use exclude_labels=[]
"Show 100 untranslated strings"                → Use limit=100

______________________________________________________________________

manage_labels

管理Crowdin中字符串的标签(标记为不翻译,组织字符串)。

在以下情况下使用:

  • 需要将字符串标记为“不翻译”
  • 想要用自定义标签组织字符串
  • 需要查看可用标签
  • 想要从字符串中删除标签

行动:

1.列出所有标签
{
  "action": "list"
}

返回项目中的所有标签。

2.为字符串分配标签
{
  "action": "assign",
  "label_name": "do-not-translate",
  "string_ids": [274, 284, 300]
}

如果标签不存在,则创建标签并将其分配给指定的字符串。

3.从字符串中删除标签
{
  "action": "unassign",
  "label_name": "do-not-translate",
  "string_ids": [284]
}

常见工作流程:

  1. 查看未翻译的字符串
  2. 请注意,有些是品牌名称或专有名词
  3. 标记它们: "Mark strings 274, 284, 300 as do not translate"
  4. 下一步 get_untranslated_strings 呼叫会自动过滤掉它们

______________________________________________________________________

upload_translations

将翻译后的字符串批量上传到Crowdin。

在以下情况下使用:

  • 用户提供可上传的翻译
  • 从以下位置翻译字符串后 get_untranslated_strings
  • 需要一次添加多个翻译

重要提示:

  • 仅上传显示为“缺少”的语言的翻译
  • 对于已翻译的语言,不要上传
  • 每个翻译需要:string_id、language_code、翻译文本

输入格式:

{
  "translations": [
    {
      "string_id": 36,
      "language_code": "fr",
      "translation": "Routine"
    },
    {
      "string_id": 36,
      "language_code": "de",
      "translation": "Routine"
    },
    {
      "string_id": 38,
      "language_code": "fr",
      "translation": "{numMinutes} min"
    }
  ]
}

退货:

# 📤 Translation Upload Results

**Total translations:** 3
**✅ Successful:** 3
**❌ Failed:** 0

## ✅ Successfully Uploaded

- **String ID 36:** fr, de
- **String ID 38:** fr

**Status:** ✅ All translations uploaded successfully!

______________________________________________________________________

search_string

按文本搜索特定字符串并查看其所有翻译。

在以下情况下使用:

  • 用户问“X被翻译了吗?”
  • 需要检查特定字符串的状态
  • 想查看现有的翻译以供参考
  • 查找字符串的ID

输入:

{
  "source_text": "Welcome"
}

退货:

# 🔍 String Search Results

**String ID:** 123
**Identifier:** `app.welcome`
**Source Text:** `Welcome`
**Translation Progress:** 3/5 languages

## Translation Status

| Language | Status         | Translation |
|----------|----------------|-------------|
| fr       | ✅ Translated  | Bienvenue   |
| de       | ✅ Translated  | Willkommen  |
| es-ES    | ✅ Translated  | Bienvenido  |
| it       | ❌ Missing     | -           |
| pt-BR    | ❌ Missing     | -           |

**Missing languages:** it, pt-BR

______________________________________________________________________

🏷️ 标签系统

标签系统有助于组织和过滤字符串:

默认行为

  • get_untranslated_strings 自动排除 字符串与 do-not-translate 标签
  • 这会过滤掉您已经标记的名称、品牌和技术术语

工作流程

  1. 获取未翻译的字符串 (自动过滤)
  2. 查看表格
  3. 标记名称/品牌:
   "Mark strings 36, 42 as do-not-translate"
  1. 获取更新列表 (标记的字符串消失)
  2. 翻译剩余字符串

自定义标签

您可以创建任何您想要的标签:

  • do-not-translate -跳过这些字符串
  • reviewed -标记为已审核
  • context-needed -需要更多上下文
  • technical-term -技术术语

______________________________________________________________________

📂 项目结构

translation-mcp/
├── src/translation_mcp/
│   ├── __init__.py          # Package initialization
│   ├── server.py            # MCP server implementation
│   ├── crowdin_client.py    # Crowdin API client (using official SDK)
│   └── config.py            # Configuration management
├── pyproject.toml           # Project dependencies & metadata
├── README.md                # This file
├── .gitignore               # Git ignore rules
└── claude_desktop_config_uvx.json  # Example configuration

______________________________________________________________________

🔧 故障排除

MCP服务器未出现

  1. 检查配置文件路径:

- macOS克劳德: ~/Library/Application Support/Claude/claude_desktop_config.json - Windows克劳德: %APPDATA%\Claude\claude_desktop_config.json

  1. 验证JSON语法:

- 使用https://jsonlint.com/验证 - 确保没有尾随逗号 - 检查所有报价是否正确

  1. 完全重新启动AI客户端:

- 退出应用程序(不仅仅是关闭窗口) - 重新启动应用程序

“找不到模块:translation_mcp”

对于uvx用户:

  • uv 应自动处理安装
  • 尝试: uvx --from git+https://github.com/Trofimov-Y/crowdin-translation-mcp translation-mcp --help
  • 如果失败,请确保 uv 已安装: curl -LsSf https://astral.sh/uv/install.sh | sh

对于本地安装:

# Verify virtual environment has packages
ls /path/to/translation-mcp/venv/lib/python*/site-packages/

# If missing, reinstall
pip install -e .

“API错误:无效的令牌”

  • 验证配置中的令牌(无额外空格)
  • Crowdin设置中的检查令牌尚未过期
  • 确认令牌具有所有必需的作用域:

- project.read - string.read - translation.write - label.read - label.write

表未显示

现在不应该发生这种事!该工具总是返回一个表格。

如果你看到的是文本:

  1. 检查您是否使用最新版本
  2. 用示例报告bug

“找不到未翻译的字符串”(但有)

  • 验证正确的Crowdin项目ID
  • 检查字符串是否标记为 do-not-translate
  • 尝试: "Get all untranslated including marked ones" 看到一切

______________________________________________________________________

🧪 发展

设置开发环境

git clone https://github.com/Trofimov-Y/crowdin-translation-mcp
cd translation-mcp

# Create virtual environment
python3 -m venv venv
source venv/bin/activate

# Install with dev dependencies
pip install -e ".[dev]"

运行测试

pytest

代码格式化

# Format code
black src/

# Check style
ruff check src/

手动测试

# Test that MCP server starts
python -m translation_mcp.server

# Should show MCP initialization messages

______________________________________________________________________

🔐 安全

  • 通过环境变量传递的令牌 -从未硬编码
  • 文件中未存储令牌 -仅在MCP配置中
  • MCP在本地运行 -所有处理都在您的机器上进行
  • 直接API调用 -仅限Crowdin,无中介

______________________________________________________________________

💰 成本

  • Crowdin API: 免费(在您的Crowdin计划限制内)
  • 人工智能翻译: 包含在您的AI客户端订阅中
  • MCP服务器: 免费和开源
  • 额外费用总额: $0

______________________________________________________________________

🤝 贡献

欢迎投稿!请随时提交拉取请求。

贡献领域

  • 附加语言检测
  • 批量操作优化
  • UI便于配置
  • 其他Crowdin功能
  • 更好的错误消息

______________________________________________________________________

📄 许可证

MIT许可证-有关详细信息,请参阅许可证文件

______________________________________________________________________

🐛 支持

有问题吗?

  1. 请先查看此自述文件
  2. 查看GitHub上的已解决问题
  3. 通过以下方式打开新问题:

- 您的AI客户端(Claude Desktop、Cline等) - 错误消息(已删除令牌!) - 配置(已删除令牌!) - 重现步骤

______________________________________________________________________

🙏 致谢

______________________________________________________________________

📊 版本历史记录

  • 2.0.0 -使用官方Crowdin SDK、标签系统、改进的提示进行重大重构
  • 0.1.0 -首次发布

______________________________________________________________________

由以下材料制成❤️ 更好的翻译工作流程

工具与能力

工具数量

5

资源数量

0

提示词数量

0

能力标签

AI翻译Python本地部署工作流自动化多语言支持Crowdin集成MCP协议

支持客户端

Claude DesktopClaudeCline

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

多步任务编排

把拆解、检索、执行串成一条链,模型按步骤调用工具。

长期上下文

把会话、笔记和知识放到外部存储,换个会话还能接着做。

接自有流程

把内部系统和模型连起来,让助手调用已有的工作流。

选择建议

值得选的地方

  • 只提供 5 个工具,职责集中,接入后不容易误操作。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 已经适配 Claude Desktop、Claude、Cline,换客户端不用重新研究配置。

先想清楚的地方

  • stdio 方式要求本地装好 Python,换机器要重新装一遍。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在AI代理场景里让模型直接调用外部能力的人。
  • 已经在用 Claude Desktop 的用户,接入路径最短。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Crowdin Translation MCP

MCP World · 本页

5stdio有1 个2026-05-17
Everything Claude Code

MCP World

0stdio有1 个2026-05-17
Filesystem 560c4363

MCP World

13未说明未标注2 个2026-05-17
Time 7365cb6d

MCP.so

2SSE有2 个2026-05-17
Server Everything (everything)

MCP World

11stdio有1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Crowdin Translation MCP 怎么安装?

公开资料给出的安装命令是 python3 -m venv venv,运行环境为 Python。装完后按客户端要求写进 MCP 配置,重启客户端生效。

Crowdin Translation MCP 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 Python;保存后完全退出客户端再打开,配置才会生效。

Crowdin Translation MCP 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Crowdin Translation MCP 需要 API Key 吗?

公开资料标注为无需认证,装好就能连;如果实际调用时报鉴权错误,按官方文档补上凭据。

Crowdin Translation MCP 支持哪些客户端?

公开资料标注支持 Claude Desktop、Claude、Cline;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP