关于 🌐 i18n MCP Server
i18n MCP Server 面向需要维护 JSON 国际化文件的开发者,可从基础语言文件分批生成多语言译文,并保存到对应语言文件。它通过 MCP 工具与 Cursor Agent 等客户端协作,使用所选模型翻译。
主要功能
- 01从基础文件生成多语言译文
- 02按文本块获取待译内容
- 03缓存译文并写入语言文件
- 04通过所选模型执行翻译
适用场景
- 01为应用新增语言文件
- 02将基础语言文本分批翻译
- 03保存生成的 JSON 译文
MCP 相关
这是通过 stdio 与 Cursor IDE 等客户端配合的 MCP 服务,提供读取基础语言文件、获取待译文本块、缓存译文及保存语言文件的工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
🌐 i18n MCP 服务
i18n MCP 服务是一款功能强大的工具,可用于管理项目中的国际化(i18n)。它简化了 JSON 语言文件的翻译流程,让你可以使用强大的语言模型直接根据基础语言文件生成翻译,整个过程都可通过便捷的服务接口完成。
此 MCP 服务旨在通过 stdio 传输方式与 Cursor IDE 配合使用,也应能与任何支持 stdio 传输方式的客户端正常配合使用。
💡 为什么选择 i18n MCP 服务?
- 节省数小时的手动翻译时间
- 确保 i18n 文件保持一致并及时更新
- 在应用面向全球用户扩展时,免去重复的复制和粘贴工作。
🚀 功能
🌍 多语言支持
根据单个基础语言文件自动生成多种语言的翻译。
🤖 使用 Cursor 上的模型进行翻译
你无需为额外的翻译服务付费。选择所需的翻译模型,按需生成翻译。
⚡ 轻松的工作流
无需手动复制或编辑 JSON 文件——只需发送请求,即可获得可直接使用的翻译文件。
🛠️ 对开发者友好
以简洁和高效为设计理念,可无缝集成到开发流水线中。
工作流程
此 MCP 服务可帮助对 JSON 文件进行增量翻译。它提供了简单的工具来:
- 获取包含单一语言所有文本的基础语言文件,以及支持的语言集合。
- 获取待翻译的文本块。每个文本块都是由换行符分隔的文本列表。
- 将生成的翻译更新到内存缓存中。
- 将翻译保存到特定语言的 JSON 文件中。
📦 安装和配置
- 克隆仓库
git clone
- 安装依赖项:
pnpm install # or npm/yarn
- 构建服务:
pnpm run build
- 在 Cursor 上配置 MCP 服务
前往 Cursor Settings / MCP,然后点击添加新的 MCP 服务。在打开的 JSON 文件中,添加服务定义:
{
"mcpServers": {
...
"i18n-translation-server": {
"command": "node",
"args": ["<base-path>/i18n-mcp/dist/mcp_server.js"]
},
...
}
}
你需要将 <base-path> 替换为已编译服务的正确绝对路径。
📤 使用方法
MCP 服务运行后,你可以使用 Cursor Agent 与服务工具交互。例如:
We are preparing the i18n files for a project and have a base language file. Using the following data, execute the
proposed tasks to prepare the additional required languages.
Base JSON language file: <absolute path to the base language file>
Base language: <base language>
Supported languages: <comma-separated list of supported languages>
These are the tasks that we need to perform:
1. Clear the previous data
2. Read the base JSON language file
3. Get the next chunk
4. For each language in the supported languages, do the following subtasks:
4.1. Translate all items in the chunk from the base language to the target language. Ensure that the order is
preserved and that any i18n string parameters are respected.
4.2. Update the translations for the language
5. Repeat from task 3 until the next chunk does not return any data.
6. After processing all chunks, save translations for each supported language.
此请求会在与基础 JSON 语言文件相同的文件夹中,为每种语言生成一个 JSON 文件。当前版本已使用 gpt-4.1 和 250 条目的分块大小进行测试。对于其他模型,由于令牌限制,可能需要调整此值。另一个可能出现的问题是,工作流程有时会在第 5 步和第 6 步之间中断;由于 Cursor 限制最多调用 25 次工具,因此需要手动恢复。
这只是一个建议的任务请求,你也可以通过串联已定义的工具来编写新的请求。
在测试过程中,我们发现,每次请求只生成一种语言的语言文件,速度比一次性生成所有语言更快。此外,响应时间也取决于所用的模型。
📚 未来计划
- 支持多个缓存
- 检查语言文件完整性
- 支持动态分块大小
- 仅翻译缺失的条目
- 仅翻译特定条目
- 跟踪语言文件版本
- 改进翻译的本地缓存
🙌 参与贡献
欢迎提交拉取请求和问题!让我们携手打造更好的翻译工作流。
📄 许可证
本项目采用 GNU Affero General Public License v3.0 许可。详情请参阅 LICENSE 文件。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。