Kagi Translate MCP Server
Provides tools for translating text, translating content from URLs, and proofreading text using Kagi's Translate API.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Kagi Translate MCP Servertranslate 'good morning' to Spanish"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Kagi Translate MCP Server
An MCP server that exposes Kagi Translate as tools for any MCP-compatible assistant. It is BYOK: set your own KAGI_API_KEY and the server calls Kagi’s Translate API over stdio.
Tools
translate_text- translate plain text or batch text inputstranslate_url- translate content fetched from a URLproofread- proofread and correct text
Related MCP server: Lara Translate MCP Server
Requirements
Node.js 20 or newer
A Kagi API key in
KAGI_API_KEY
Kagi’s translate service is currently in a free test period. If you need a key, email support@kagi.com.
Setup
npm install
cp .env.example .envEdit .env and set your real API key:
KAGI_API_KEY=your_real_key_hereBuild
npm run buildThis compiles TypeScript into dist/.
Run
npm startFor local development with rebuilds:
npm run devThis command builds once, watches src/ for changes, and restarts the server automatically.
Claude Desktop Configuration
Add the server to claude_desktop_config.json and point it at the built entry point:
{
"mcpServers": {
"kagi-translate": {
"command": "node",
"args": ["/absolute/path/to/kagi-translate-mcp/dist/index.js"],
"env": {
"KAGI_API_KEY": "your_real_key_here"
}
}
}
}If you prefer to keep secrets out of the config file, start Claude Desktop with KAGI_API_KEY already present in the environment and omit the env block.
Assumptions
The public Kagi docs page is authenticated, so this implementation assumes the confirmed quick-start request shape for translation and conservative optional fields for advanced controls. The code currently sends these payloads:
POST /api/translatewithtextortexts,source_lang,target_lang, and optionalformality,gender, andcontextPOST /api/translate-urlwithurl,source_lang,target_lang, and optionalformality,genderPOST /api/proofreadwithtextand optionallanguageortarget_lang
If Kagi’s authenticated docs differ on field names or response shapes, update src/kagi/types.ts and the tool request mapping in src/tools/.
Implementation Notes
All outbound Kagi requests go through
src/kagi/client.ts.Tool inputs are validated with Zod and inferred from the schemas.
Logging uses
console.erroronly; stdout is reserved for MCP protocol traffic.Each tool lives in its own file under
src/tools/and is registered fromsrc/tools/index.ts.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/subhangadirli/kagi-translate-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server