
DeepL MCP Server
MCPDeepL's official MCP: translate text and documents (PDF, DOCX, PPTX, XLSX and more) and rephrase or polish writing, using the glossaries and style rules in your account. Needs a DeepL API key.
deepl-mcp-server
[!NOTE] For the best experience and the latest features check out the DeepL remote MCP server to use DeepL in your AI agent. No installation required, just add it to Claude, ChatGPT, Microsoft Copilot or any MCP client and sign in with your DeepL account.
Working in a terminal or with a coding agent? Try the DeepL CLI. It covers translation, documents, glossaries and i18n file sync with your API key.
A Model Context Protocol (MCP) server that exposes DeepL text translation, document translation, rephrasing, and glossary and style rule lookups as MCP tools.
Usage
You need Node.js 18 or newer and a DeepL API key. Pick an API plan and create a key in your DeepL account.
The server communicates over stdio, so it is normally started by an MCP client rather than by hand. To try it directly:
DEEPL_API_KEY=your-api-key npx -y deepl-mcp-server
It exits immediately if DEEPL_API_KEY is not set.
To work on the server itself:
git clone https://github.com/DeepL/deepl-mcp-server.git
cd deepl-mcp-server
npm install
Configuration
Register it as a stdio server with DEEPL_API_KEY in the server's environment. In Claude Code:
claude mcp add deepl --env DEEPL_API_KEY=your-api-key -- npx -y deepl-mcp-server
For clients configured through a JSON file:
{
"mcpServers": {
"deepl": {
"command": "npx",
"args": ["-y", "deepl-mcp-server"],
"env": {
"DEEPL_API_KEY": "your-api-key"
}
}
}
}
Where that file lives and how each client expects local stdio servers to be declared:
To run a local checkout instead of the published package, use node as the command and the absolute path to src/index.mjs as the argument.
Tools
| Tool | Description | Parameters |
|---|---|---|
translate-text | Translates text into a target language. | text, targetLangCode, sourceLangCode?, formality?, glossaryId?, styleId?, context?, preserveFormatting?, splitSentences?, customInstructions? |
translate-document | Translates a document file (PDF, DOCX, PPTX, XLSX, HTML, TXT, and more) and writes the result to disk. | inputFile, targetLangCode, outputFile?, sourceLangCode?, formality?, glossaryId?, styleId?, outputFormat? |
rephrase-text | Rephrases text, optionally into another language. | text, targetLangCode?, style?, tone? |
get-source-languages | Lists the language codes accepted as a translation source. | none |
get-target-languages | Lists the language codes accepted as a translation target. | none |
get-writing-styles | Lists the style values rephrase-text accepts. | none |
get-writing-tones | Lists the tone values rephrase-text accepts. | none |
list-glossaries | Lists every glossary in the account with its id, name, dictionaries, and creation time. | none |
get-glossary-info | Returns the same metadata as list-glossaries for a single glossary. | glossaryId |
get-glossary-dictionary-entries | Returns the term entries of one glossary dictionary, meaning one language pair in one direction. | glossaryId, sourceLangCode, targetLangCode |
list-style-rules | Lists the style rules in the account with their id, name, language, and timestamps. | page?, pageSize?, detailed? |
get-style-rule | Returns one style rule in full, including its configured rules and custom instructions. | styleId |
get-custom-instruction | Returns a single custom instruction belonging to a style rule. | styleId, instructionId |
Notes:
texttakes either a single string or an array of strings. Each entry is translated or rephrased independently.- Language codes are ISO 639-1, optionally with a region (
en-US). OmittingsourceLangCodetriggers automatic detection. A target code whose language requires a region gets a default applied:enbecomesen-US,ptbecomespt-BR,zhbecomeszh-Hans. - Glossary dictionaries are keyed by non-regional codes, so
get-glossary-dictionary-entriesdrops any region you pass. - Translating with a glossary requires an explicit
sourceLangCode. formalityacceptsless,more,default,prefer_less, andprefer_more. Theprefer_*values fall back to the default when the target language has no formality support.translate-documentreads and writes files on the machine running the server. WithoutoutputFile, the output path is derived from the input by appending the target language code, for examplereport_de.pdf. WithoutputFormat, the derived path uses that extension instead.- Style rules and custom instructions are read-only here. Create and edit them in your DeepL account.
License
MIT
관련 리소스

DeepL CLI
CLIDeepL's official CLI: translate text and PDF, Word, PowerPoint and Excel documents while keeping formatting, with glossaries and translation memory. Needs a DeepL API key (free plan available); install from source with Node.js 24.15+. Have legal translations reviewed.
DeepL/deepl-cli46
DeepL plugin for Claude
PluginDeepL's official Claude Code plugin: uses DeepL's hosted service to translate text and Word, PowerPoint, Excel and PDF files with formatting intact, rephrase and polish, fix grammar and apply glossaries. Needs an eligible DeepL subscription; browser sign-in on first use.
DeepL/claude-plugin2
POEditor MCP Server
MCPPOEditor's official remote MCP: translators and localization teams can manage projects, terms and translations from chat, run Google, Microsoft or DeepL machine translation, check quality and export language files. Needs a POEditor account (browser sign-in or API token).
POEditor/poeditor-mcp1
OpenCC
CLIOpen-source Simplified/Traditional Chinese converter: deterministic dictionary-based conversion (no LLM) covering variant characters and regional vocabulary for mainland China, Taiwan and Hong Kong, with limited Japanese kanji support. Runs offline; CLI plus Node.js and Python APIs.
BYVoid/OpenCC10.1k
Canva Translate Design
SkillCanva's official skill (OpenAI plugin directory): translates all text in a Canva design into another language and saves a copy, leaving the original intact. Useful for multilingual marketing. Needs a Canva account and the Canva MCP; longer text may need layout tweaks.
openai/plugins7.5k
Argos Translate
CLIOpen-source offline machine translation built on OpenNMT, usable as a CLI, Python library or GUI. Download language packages as needed; when no direct model exists it pivots through an intermediate language. Suits text you would rather not upload to the cloud.
argosopentech/argos-translate6.6k