使用说明
Translate MCP Server
基于 MCP (Model Context Protocol) HTTP SSE 协议的翻译服务,支持 Google 翻译和百度翻译。
功能特性
- 支持 Google 翻译(优先)和百度翻译(备用)
- 支持 LLM 指定渠道翻译,如 "baidu 文本" 或 "文本 baidu" 使用百度渠道,"google 文本" 或 "文本 google" 使用 Google 渠道
- MCP HTTP SSE 协议兼容
- Docker 容器化部署
- 支持代理配置
- 智能 TKK 更新机制
快速开始
Docker 部署
- 构建镜像
docker build -t translate-mcp .
- 运行容器
docker run -d \
-p 38089:38089 \
-e TRANSLATE_PROXY="your-proxy:port" \
-e HTTP_PROXY=http://your-proxy:port \
-e HTTPS_PROXY=http://your-proxy:port \
--name translate-mcp \
translate-mcp
- 验证服务
# 测试 SSE 连接
curl -N -H "Accept: text/event-stream" http://localhost:38089/sse
# 输出示例:
# event: endpoint
# data: /messages/?session_id=xxx
环境变量
| 变量名 | 说明 | 必填 |
|---|---|---|
TRANSLATE_PROXY |
翻译服务代理地址 | 否 |
HTTP_PROXY |
HTTP 代理 | 否 |
HTTPS_PROXY |
HTTPS 代理 | 否 |
BAIDU_TRANSLATE_APPID |
百度翻译 App ID | 否 |
BAIDU_TRANSLATE_SECRET_KEY |
百度翻译密钥 | 否 |
AI 工具配置 MCP
Trae IDE 配置
在 Trae IDE 的 MCP 设置中添加以下配置:
{
"mcpServers": {
"translate": {
"type": "sse",
"url": "http://localhost:38089/sse"
}
}
}
Claude Desktop 配置
在 Claude Desktop 配置文件中添加:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"translate": {
"type": "sse",
"url": "http://localhost:38089/sse"
}
}
}
其他支持 MCP 的 AI 工具
对于支持 MCP HTTP SSE 协议的 AI 工具,配置方式类似:
- 服务类型:
sse或http-sse - SSE 端点:
http://your-server:38089/sse - 消息端点:
http://your-server:38089/messages/
MCP 工具说明
translate
翻译文本到目标语言。
参数:
text(必填): 待翻译的文本target(可选): 目标语言代码,默认zh
支持的语言代码:
zh- 中文en- 英文ja- 日语ko- 韩语fr- 法语de- 德语es- 西班牙语- 等等...
示例调用:
- 默认翻译(先 Google 后百度)
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "translate",
"arguments": {
"text": "Hello world",
"target": "zh"
}
}
}
- 指定百度渠道
{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "translate",
"arguments": {
"text": "Hello world",
"target": "zh",
"channel": "baidu"
}
}
}
- 指定 Google 渠道
{
"jsonrpc": "2.0",
"id": 3,
"method": "tools/call",
"params": {
"name": "translate",
"arguments": {
"text": "Hello world",
"target": "zh",
"channel": "google"
}
}
}
- 通过文本前缀指定渠道
{
"jsonrpc": "2.0",
"id": 4,
"method": "tools/call",
"params": {
"name": "translate",
"arguments": {
"text": "baidu Hello world",
"target": "zh"
}
}
}
- 通过文本后缀指定渠道
{
"jsonrpc": "2.0",
"id": 5,
"method": "tools/call",
"params": {
"name": "translate",
"arguments": {
"text": "Hello world google",
"target": "zh"
}
}
}
响应:
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"content": [
{
"type": "text",
"text": "{\"originalText\":\"Hello world\",\"originalLanguageCode\":\"en\",\"targetText\":\"你好世界\",\"targetLanguageCode\":\"zh\"}"
}
],
"isError": false
}
}
本地开发
# 安装依赖
pip install requests urllib3
# 运行服务
python sse_server.py
# 或使用代理
TRANSLATE_PROXY="192.168.1.1:7890" python sse_server.py
项目结构
translate/
├── sse_server.py # MCP SSE 服务器
├── GoogleTranslator.py # Google 翻译实现
├── BaiduTranslator.py # 百度翻译实现
├── TranslationManager.py # 翻译管理器
├── Dockerfile # Docker 构建文件
├── start.sh # 启动脚本
├── requirements.txt # Python 依赖
└── README.md # 本文档
协议规范
本项目遵循 MCP HTTP SSE 传输协议:
- 客户端通过 GET
/sse建立 SSE 连接 - 服务器发送
endpoint事件,包含消息端点 URL - 客户端通过 POST
/messages/发送 JSON-RPC 请求 - 服务器返回 HTTP 202 Accepted,响应通过 SSE 推送
致谢
本项目的 Google 翻译实现基于 VictorZhang2014/free-google-translate 项目源码,感谢原作者的开源贡献。
许可证
MIT License
