About equalang-mcp
equalang-mcp connects MCP clients to Equalang for translating files, media, and text, or transcribing recordings. It returns documents in their original format and preserves layout elements such as tables, images, and formulas.
Key features
- 01Translate documents while retaining format and layout
- 02Translate timed subtitles and text in images
- 03Create translated subtitles or transcripts from media
- 04Translate short texts in batches
- 05Detect source language and list supported languages
- 06Estimate cost and track or cancel jobs
Use cases
- 01Translate a PDF or presentation while preserving its layout
- 02Create subtitles in another language from a video
- 03Transcribe a recording with timestamps
- 04Estimate a file translation job before starting
MCP support
The MCP server exposes Equalang translation and transcription operations as tools, including file translation, job management, language listing, and credit checks.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
npx -y @equalang/mcpEQUALANG_API_KEYSecretEqualang API key. Create one at https://equalang.com/api-keysLocal servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.
Tools
8Saved tool list · updated 2w ago
| Parameter | Type | Required | Description |
|---|---|---|---|
| source | string | No | The file: an absolute path on this machine, or a public http(s) URL (fetched by Equalang, not downloaded here). Omit when passing file_id. |
| file_id | string | No | A file already uploaded by estimate_cost, instead of source: starts the job without uploading again. |
| bilingual | boolean | No | Subtitles and recordings only: keep the original line above each translated one. |
| output_dir | string | No | Directory for the results. Defaults to beside a local source. A URL source has no "beside": without this the answer carries temporary links. |
| wait_seconds | number | No | Seconds to wait before answering with a job_id instead (default 50, at most 240). |
| output_formats | array | No | Recordings only: the formats to write (default srt). |
| source_language | string | No | Language of the file; omit to detect it. |
| target_language | string | Yes | Language to translate into. A language code such as en, zh-CN, zh-TW, ja, ko, es, fr, de. list_languages has the codes: fewer for files than for text. |
Details
From the project READMEequalang-mcp
English · 简体中文 · 日本語 · 한국어 · Español · Français · Deutsch · Português · Italiano · Русский · Polski · Türkçe · Tiếng Việt · Bahasa Indonesia · ไทย · हिन्दी · العربية
Website · Pricing · Developer docs · API keys
Keywords: document translation, pdf translator, translate pdf keep layout, docx translation, pptx translation, excel translation, epub translation, subtitle translation, srt translator, image translation, video translation, audio transcription, speech to text, ai translator, mcp server, model context protocol, claude mcp, cursor mcp, translation api
Translate the file, keep the layout. An MCP server for Equalang - an AI translator that works on whole files: a PDF comes back as a PDF, a deck as a deck, with tables, images and formulas where they were. It also translates subtitles and pictures, turns audio and video into translated subtitles or a transcript, and translates short texts in bulk. Works in Claude Code, Claude Desktop, Codex, Cursor, Windsurf, Cline, VS Code and every other MCP client.
claude mcp add equalang -s user -e EQUALANG_API_KEY=el_your_key -- npx -y @equalang/mcp
Try asking
- "Translate ~/Documents/contract.pdf into Chinese, keeping the layout."
- "Translate pitch-deck.pptx into Japanese and German."
- "Translate https://example.com/whitepaper.pdf into Spanish and save it in ~/Downloads."
- "How much would it cost to translate thesis.docx into French?"
- "Make Korean subtitles for interview.mp4, with the original line above each one."
- "Transcribe standup.m4a with timestamps."
- "Make an English version of menu.jpg."
- "Translate novel.epub into English."
Features
- Documents - PDF, DOCX, PPTX, XLSX, EPUB, HTML and TXT come back in the same format, still editable, with tables, images, formulas and page layout in place
- Subtitles and pictures - SRT and VTT keep their timing, optionally with the source line above the translation; JPG, PNG, WebP and BMP come back with the text in the picture translated
- Audio and video - MP3, M4A, WAV, FLAC, OGG, AAC, Opus, MP4, MOV, WebM and MKV become translated subtitles, or a transcript in the language spoken (SRT, VTT, TXT, JSON)
- Text in bulk - short texts translated in order, or one long text (up to 100,000 characters) that Equalang cuts at sentences itself
- Languages — 152 for text and documents; the live language list reflects the current deployment. Omit the source language to detect it automatically.
- PDF formulas — Formula optimization is optional and off by default. Enable it only for PDF files.
translate_file→optimize_math_formula: trueAdds 10 credits per original PDF page at the default rate. Use the same option when estimating the cost.estimate_cost→optimize_math_formula: true
Get a key
Sign up at https://equalang.com and create a key at https://equalang.com/api-keys. New accounts start with free credits, enough to put a document through.
The key goes in an environment variable of the MCP client's config, never in a URL. Without a key the server still starts and lists its tools; a tool that needs the key answers with how to get one.
The key can also live once per machine, in ~/.config/equalang/.env, which the Equalang skill reads too:
# Replace el_your_key with your key
mkdir -p ~/.config/equalang && echo 'EQUALANG_API_KEY=el_your_key' > ~/.config/equalang/.env && chmod 600 ~/.config/equalang/.env
The server takes EQUALANG_API_KEY from its environment first, and reads the file only when the environment has none: a key in the client config wins, and with the file in place the client config needs no env.
Install
Needs Node 18 or later.
Claude Code
claude mcp add equalang -s user -e EQUALANG_API_KEY=el_your_key -- npx -y @equalang/mcp
-s user puts it in every project; the default scope, local, loads the server only in the directory the command was run from.
OpenAI Codex
codex mcp add equalang --env EQUALANG_API_KEY=el_your_key -- npx -y @equalang/mcp
Claude Desktop, Cursor, Windsurf, Cline and other JSON-configured clients
Add this to the client's MCP config - claude_desktop_config.json, ~/.cursor/mcp.json, ~/.codeium/windsurf/mcp_config.json, or the file your client documents:
{
"mcpServers": {
"equalang": {
"command": "npx",
"args": ["-y", "@equalang/mcp"],
"env": { "EQUALANG_API_KEY": "el_your_key" }
}
}
}
VS Code
code --add-mcp '{"name":"equalang","command":"npx","args":["-y","@equalang/mcp"],"env":{"EQUALANG_API_KEY":"el_your_key"}}'
Prefer a skill? equalang-skill offers the same operations as an Agent Skill - one Python script, nothing to install.
Tools
| Tool | What it does |
|---|---|
translate_file | Translate a file (path or public URL) into another language and save the result beside it. |
transcribe_recording | Write down what an audio or video file says, as timed text (SRT, VTT, TXT, JSON). |
translate_text | Translate short texts, in order - or one long text, which Equalang cuts at sentences itself. |
estimate_cost | Upload a file without starting anything; answers with the most a job on it can cost, and a file_id that starts the job without a second upload. Free. |
check_job | Pick a job up again, and save its results once it has finished. |
cancel_job | Stop a queued or running job. A cancelled job is not charged. |
get_credit_balance | The account's credits. |
list_languages | Every language code and name. Needs no key. |
Language codes look like en, zh-CN, ja; list_languages has the full list. A job takes minutes - a tool waits up to wait_seconds (50 s by default, 240 at most), then hands back a job id for check_job to pick up.
Links
- Equalang · Pricing · Developer docs
- API for agents: llms.txt · llms-full.txt · OpenAPI
- equalang-skill - the same operations as an Agent Skill
- Questions: [email protected]
License
Apache-2.0 © Equalang
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.