Kagi Translate MCP Server
Provides tools for translating text, translating content from URLs, and proofreading text using Kagi's Translate API.
Click on "Deploy 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: Kagi 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.
Available Tools
3 toolsproofreadC
Proofread text with Kagi Translate.
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | ||
| language | No | ||
| target_lang | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full responsibility for behavioral disclosure. It merely states the action without explaining side effects, data handling, or limitations. No behavioral traits are revealed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short (one sentence), which is concise but not sufficient. It sacrifices necessary detail for brevity, failing to earn its place as a standalone definition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has three parameters, no output schema, and no annotations, the description is severely incomplete. It does not specify input expectations, output format, or example usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, yet the description adds no parameter information. It does not explain the role of 'language' and 'target_lang' parameters, leaving the agent to guess.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: proofreading text using Kagi Translate. It sets it apart from siblings 'translate_text' and 'translate_url' by using a different verb. However, it could be more specific about what 'proofread' entails.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No usage guidelines are provided. The description does not indicate when to use this tool versus the translation tools, nor does it mention any prerequisites or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
translate_textB
Translate text between languages using Kagi Translate.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full burden. It does not disclose important behaviors like language detection, authentication needs, rate limits, or how the text input is provided (given zero parameters).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no extraneous information. It is efficiently structured for quick reading.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters, no output schema, and minimal description, the tool lacks sufficient context. The description does not specify input method, supported languages, or output format, leaving the agent underinformed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With zero parameters and 100% schema description coverage, baseline is 4. However, the description does not explain how to supply the text or configure the translation, so it does not fully compensate. Score 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'Translate text' and the resource 'text', with a specific service 'Kagi Translate'. It distinguishes itself from siblings 'proofread' and 'translate_url' by implying it handles arbitrary text translation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool vs. siblings, such as 'proofread' or 'translate_url'. No exclusions or context for appropriate usage are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
translate_urlC
Translate the content of a URL using Kagi Translate.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | ||
| source_lang | Yes | ||
| target_lang | Yes | ||
| formality | No | ||
| gender | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description is minimal and does not disclose any behavioral traits beyond 'translate the content'. No details on navigation, restrictions, or error handling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence is concise but underspecified; lacks structure that adds value beyond the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 5 parameters, no output schema, and no annotations, the description is severely incomplete. Missing guidance on language codes, formality, gender, and behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%. The description does not explain any parameter's meaning, format, or constraints, leaving agents to infer from field names only.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it translates the content of a URL using Kagi Translate, with a specific verb and resource. It distinguishes from siblings like 'proofread' and 'translate_text'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus siblings. Implies usage when URL content translation is needed, but lacks when-not or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
3 tool updates
v0.1.1- First observed
proofread - First observed
translate_text - First observed
translate_url
TDQS
Scored across 3 tools
Each tool has a clearly distinct purpose: proofreading text, translating text, and translating a URL's content. There is no overlap or ambiguity.
All tool names follow a consistent verb_noun pattern (proofread, translate_text, translate_url) using lowercase with underscores, making them predictable.
Three tools is well-scoped for a translation/proofreading server. Each tool serves a necessary function without excess or deficiency.
The surface covers the core domain: text translation, URL translation, and proofreading. No obvious gaps given the stated purpose.
Maintenance
Related MCP Connectors
MCP server for Crowdin — projects, files, strings, translation progress, tasks, and members.
Translate MCP — wraps LibreTranslate API (https://libretranslate.com/)
An MCP server that integrates with Discord to provide AI-powered features.
LibreTranslate MCP — open-source machine translation (BYO endpoint)
Related MCP Servers
- AlicenseBqualityDmaintenanceAn MCP server integrating Perplexity AI's API to offer advanced search capabilities with support for multiple models and result configuration.1988 npm1MIT

Kagi MCP Serverofficial
AlicenseAqualityCmaintenanceAn MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.2518MIT- FlicenseNot gradedqualityDmaintenanceAn MCP server integrating LangChain, RAG, and Agent to provide knowledge retrieval and tool invocation through natural language.-
- AlicenseNot gradedqualityDmaintenanceMCP server for managing Kaiten tasks through AI agents like Claude, enabling task retrieval, creation, updating, and time logging.14 npm2MIT