内容
# 深文MCP服务器
[](https://www.npmjs.org/package/deepl-mcp-server)
[](https://github.com/DeepLcom/deepl-mcp-server/blob/main/LICENSE)
[](https://smithery.ai/server/@DeepLcom/deepl-mcp-server)
一个模型上下文协议(MCP)服务器,提供使用DeepL API的翻译功能。
## 功能特点
- 在众多语言之间翻译文本
- 翻译文档
- 使用DeepL的能力改写文本
- 访问所有DeepL API语言和功能
- 自动语言检测
- 支持语言的形式化控制
- DeepL词汇表支持,用于一致的术语翻译
## 用法
运行此服务器的最简单方法是使用npm包,无需安装任何内容:
```bash
npx deepl-mcp-server
```
如果您想本地安装,以便您可以随意使用,可以使用npm:
```bash
npm install deepl-mcp-server
```
或者,如果您想贡献,可以克隆此仓库并安装依赖项:
```bash
git clone https://github.com/DeepLcom/deepl-mcp-server.git
cd deepl-mcp-server
npm install
```
## 配置
### DeepL API密钥
您需要DeepL API密钥才能使用此服务器。您可以通过在[DeepL API](https://www.deepl.com/pro-api?utm_source=github&utm_medium=github-mcp-server-readme)注册来获取密钥。使用DeepL API免费账户,您可以免费翻译最多50万个字符/月。
## 与Claude Code一起使用
要将此MCP服务器添加到[Claude Code](https://docs.anthropic.com/en/docs/claude-code),请运行:
```bash
claude mcp add deepl -e DEEPL_API_KEY=您的-api-key -- npx deepl-mcp-server
```
用您的实际DeepL API密钥替换`您的-api-key`。
## 与Claude Desktop一起使用
此MCP服务器与Claude Desktop集成,提供直接在您与Claude的对话中进行翻译的功能。
### 配置步骤
1. 如果您尚未安装,请安装Claude Desktop
2. 创建或编辑Claude Desktop配置文件:
- 在macOS上:`~/Library/Application Support/Claude/claude_desktop_config.json`
- 在Windows上: `%AppData%\Claude\claude_desktop_config.json`
- 在Linux上: `~/.config/Claude/claude_desktop_config.json`
3. 添加DeepL MCP服务器配置。如果您想使用npm包,无需安装任何内容,如上所述:
```json
{
"mcpServers": {
"deepl": {
"command": "npx",
"args": ["deepl-mcp-server"],
"env": {
"DEEPL_API_KEY": "{您的_API密钥}"
}
}
}
}
```
或者,如果您已本地安装,请为Claude提供服务器的绝对路径,如下所示:
```json
{
"mcpServers": {
"deepl": {
"command": "node",
"args": ["/{服务器绝对路径}/deepl-mcp-server/src/index.mjs"],
"env": {
"DEEPL_API_KEY": "{您的_API密钥}"
}
}
}
}
```
如果您已克隆此代码,但尚未执行`npm install`,或者您更喜欢这样做,可以在此处使用`npx /{服务器绝对路径}/deepl-mcp-server`代替`node /{服务器绝对路径}/deepl-mcp-server/src/index.mjs`。
4. 将`{服务器绝对路径}`替换为此仓库的**绝对路径** - 例如`/Users/robotwoman/Code/deepl-mcp-server`
5. 将`{您的_API密钥}`替换为您的实际DeepL API密钥
6. 重启Claude Desktop
配置完成后,Claude将能够在需要时使用DeepL翻译工具。您可以要求Claude在语言之间翻译文本,它将在后台使用DeepL API。
## 可用工具
此服务器提供以下工具:
- `get-source-languages`:获取翻译的可用源语言列表
- `get-target-languages`:获取翻译的可用目标语言列表
- `translate-text`:将文本翻译到目标语言
- `rephrase-text`:在相同或不同语言中改写文本
- `translate-document`:翻译文档
- `list-glossaries`:获取所有词汇表及其关联元数据的列表
- `get-glossary-info`:获取特定词汇表的元数据
- `get-glossary-dictionary-entries`:从词汇表字典中检索条目
## 工具详情
### 翻译工具
#### translate-text
此工具使用DeepL API在语言之间翻译文本。
参数:
- `text`:要翻译的文本
- `sourceLangCode`(可选):源语言代码(例如,'en','de','fr')。留空以进行自动检测。**使用词汇表时必填**。
- `targetLangCode`:目标语言代码(例如,'en-US','de','fr')
- `formality`(可选):控制翻译的形式级别:
- `'less'`:使用非正式语言
- `'more'`:使用正式、更礼貌的语言
- `'default'`:使用默认形式级别
- `'prefer_less'`:如果可用,使用非正式语言;否则使用默认形式级别
- `'prefer_more'`:如果可用,使用正式语言;否则使用默认形式级别
- `glossaryId`(可选):应用于翻译的词汇表ID
#### translate-document
此工具使用DeepL API翻译文档文件。支持的格式包括PDF、DOCX、PPTX、XLSX、HTML、TXT等。
**注意**:由于此工具需要文件名,因此您的AI代理需要访问文件系统工具。
参数:
- `inputFile`:要翻译的输入文档文件路径
- `outputFile`(可选):翻译后的文档将保存的路径。如果未提供,将根据输入文件名自动生成,追加目标语言代码(例如,`document_de.pdf`表示德语翻译)
- `sourceLangCode`(可选):源语言代码(例如,'en','de','fr')。留空以进行自动检测。**使用词汇表时必填**。
- `targetLangCode`:目标语言代码(例如,'en-US','de','fr')
- `formality`(可选):控制形式级别(与`translate-text`相同)
- `glossaryId`(可选):用于一致术语翻译的词汇表ID
返回:
- 翻译状态
- 计费字符数
- 输出文件路径
### 词汇表工具
大多数代理都足够智能,可以在翻译时使用给定的词汇表,如果您传递词汇表的名称。
代理可以使用`list-glossaries`拉取所有词汇表的元数据,其中包括词汇表的名称。
然后它可以包含正确的词汇表ID。 但您也可以直接给代理一个词汇表ID。
#### list-glossaries
列出DeepL账户中所有可用的词汇表及其元数据。
每个词汇表返回:
- `id`:词汇表的唯一标识符
- `name`:人类可读的名称
- `dictionaries`:可用的语言对字典(例如,`{"en": ["de"], "de": ["en"]}`表示EN↔DE双向)
- `creationTime`:词汇表创建时间
**注意**:此工具仅返回元数据,不返回实际的词汇表条目。
#### get-glossary-info
通过词汇表ID检索特定词汇表的元数据。
参数:
- `glossaryId`:词汇表的唯一标识符
返回与`list-glossaries`相同的信息,但仅限于单个词汇表。
**注意**:此工具仅返回元数据,不返回实际的词汇表条目。
#### get-glossary-dictionary-entries
从特定词汇表字典中检索实际术语条目。
字典是特定语言对和翻译方向的条目列表。
词汇表可以包含多个字典。 例如,双向英语-德语词汇表将有两个字典:一个用于EN→DE,另一个用于DE→EN。
大多数代理都能够通过使用`list-glossaries`或`get-glossary-info`查找可用字典,然后为每个字典调用此工具来检索整个词汇表。
参数:
- `glossaryId`:词汇表的唯一标识符
- `sourceLangCode`:字典的源语言代码(例如,'en')
- `targetLangCode`:字典的目标语言代码(例如,'de')
返回:
- 词汇表名称
- 检索的语言对
- 字典中的所有条目作为键值对
### 其他工具
#### rephrase-text
此工具在给定语言中改写文本。
参数:
- `text`:要改写的文本
- `style`(可选):改写文本的写作风格。使用`get-writing-styles`查看可用选项(例如,'business','academic','casual')
- `tone`(可选):改写文本的写作语气。使用`get-writing-tones`查看可用选项(例如,'enthusiastic','friendly','professional')
#### get-source-languages
返回DeepL API支持的源语言的完整列表,包含语言名称和ISO-639代码。
_无需参数。_
#### get-target-languages
返回DeepL API支持的目标语言的完整列表,包含语言名称和ISO-639代码。
_无需参数。_
#### get-writing-styles
返回可与`rephrase-text`工具一起使用的可用写作风格列表。这些风格调整写作的整体特征,以适应不同的上下文。
无需参数。
## 支持的语言
DeepL API支持多种语言进行翻译。您可以使用`get-source-languages`和`get-target-languages`工具查看当前支持的所有语言。
一些支持的语言示例包括:
- 英语(en,en-US,en-GB)
- 德语(de)
- 西班牙语(es)
- 法语(fr)
- 意大利语(it)
- 日语(ja)
- 中文(zh)
- 葡萄牙语(pt-BR,pt-PT)
- 俄语(ru)
- 以及更多
## 调试
有关调试信息,请访问[MCP调试文档](https://modelcontextprotocol.io/docs/tools/debugging)。
## 错误处理
如果您遇到DeepL API错误,请检查以下内容:
- 验证您的API密钥是否正确
- 确保您不超过API使用限制
- 确认您正在使用的语言代码是否受支持
## 许可证
MIT
## 链接
- [DeepL API文档](https://www.deepl.com/docs-api?utm_source=github&utm_medium=github-mcp-server-readme)
- [模型上下文协议文档](https://modelcontextprotocol.io/docs/)