Kimi MCP Server
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., "@Kimi MCP Serverreview the changes in my current branch"
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.
Kimi MCP Server
MCP server (stdio) that bridges Claude / Cursor / any MCP client to Moonshot AI's Kimi Code CLI.
Architecture mirrors @trishchuk/codex-mcp-tool — same patterns, adapted to Kimi's flag surface (--print, --quiet, -r, --continue, --add-dir, --mcp-config-file, --config).
Why
Kimi K2.6 (April 2026) is a 1T-parameter MoE open-weight model with native agent-swarm orchestration, 262k context, and SWE-Bench Pro on par with GPT-5.5. Kimi Code CLI is the reference agent harness. This server lets MCP-aware editors call Kimi as a sub-agent without leaving their primary interface.
Related MCP server: mcacp
Install
npm install -g @trishchuk/kimi-mcp-serverYou also need Kimi Code CLI:
curl -LsSf https://code.kimi.com/install.sh | bash
# OR
uv tool install --python 3.13 kimi-cliThen run kimi once and use /login to authenticate via the Kimi Code platform — or set MOONSHOT_API_KEY.
Configure (Claude Desktop / Cursor / Claude Code)
Minimal — working directory is auto-detected from PWD / INIT_CWD / process.cwd(), just like codex-mcp-tool:
{
"mcpServers": {
"kimi": {
"command": "kimi-mcp"
}
}
}Pin a specific project root only if your client launches the server from somewhere unrelated:
{
"mcpServers": {
"kimi": {
"command": "kimi-mcp",
"env": { "KIMI_MCP_CWD": "/absolute/path/to/your/project" }
}
}
}You can also override per call via the workingDir argument on ask-kimi, or let the server infer it from @path/to/file references in the prompt — same priority chain as codex-mcp-tool: workingDir arg → KIMI_MCP_CWD → PWD → INIT_CWD → @path inference → process.cwd().
Tools
Tool | What it does |
| Main entry — file analysis ( |
| Structured ideation (divergent / convergent / SCAMPER / design-thinking / lateral / auto) |
| Sequential or parallel atomic tasks with priority, stop-on-error, structured report |
| Code review of working tree / branch diff / specific commit (collects |
| List, delete, or clear active conversation sessions |
| Diagnose Kimi CLI installation, auth, and session state |
| Smoke tests + help passthrough |
ask-kimi highlights
prompt— supports@path/to/fileto drop file context (Kimi reads via working dir).model— overridesdefault_modelat runtime via--config. Known:kimi-for-coding,kimi-k2-6,kimi-k2-thinking-turbo,kimi-k2-5,kimi-latest.thinking— toggles thinking mode (writesdefault_thinkinginto runtime config).outputFormat—text(default) orstream-json(JSONL of assistant + tool messages, parsed transparently).responseMode—clean(default; final assistant text only) orfull(tool calls + stderr log + final).sessionId— workspace-isolated session ID (md5 of repo:head:path). The server tracks the native Kimi session ID returned by the CLI and replays it viakimi -r <id>.continueLatest— sets--continue(resume the most recent session in the cwd).mcpConfigFile— passes--mcp-config-fileso Kimi can talk to other MCP servers from inside this process.addDirs— repeats--add-dirfor multi-root projects.yolo/afk— approval shortcuts (print mode auto-approves anyway, but useful for documentation/logging).
CLI compatibility
Feature | Kimi CLI |
Print / non-interactive |
|
JSON streaming |
|
Sessions |
|
Configuration |
|
Workspace | spawn cwd + |
MCP passthrough |
|
Exit codes |
|
Environment
Var | Default | Purpose |
| — | Override working directory for every tool call |
| 86400000 (24h) | Session expiration |
| 50 | Max concurrent sessions |
| — | Forwarded to Kimi CLI for unattended auth |
Development
npm install
npm run build # tsc → dist/
npm run lint # tsc --noEmit
node dist/index.js # smoke run on stdioLicense
MIT — Taras Trishchuk
Available Tools
14 toolsask-kimiBDestructive
Execute Kimi Code CLI with file analysis (@syntax), session resume, MCP passthrough, and safety controls.
| Name | Required | Description | Default |
|---|---|---|---|
| cd | No | Working directory | |
| afk | No | --afk: auto-approve in away-from-keyboard mode (print mode implies this). | |
| plan | No | Start in plan mode (--plan). For richer planning, prefer the plan-kimi tool. | |
| yolo | No | ⚠️ --yolo: auto-approve everything (dangerous, full file access). | |
| agent | No | Builtin agent spec to use (--agent). "default" or "okabe". | |
| model | No | Optional model override. Known: kimi-for-coding, kimi-k2-6, kimi-k2-6-turbo, kimi-k2-thinking-turbo, kimi-k2-5, kimi-latest. If omitted, uses your Kimi CLI default (~/.kimi/config.toml). | |
| quiet | No | Use --quiet (= --print --output-format text --final-message-only). | |
| config | No | Configuration overrides — string (JSON/TOML) or object passed via --config. | |
| dryRun | No | Return the resolved CLI argv as JSON without spawning Kimi. | |
| prompt | Yes | Task or question. Use @ to include files (e.g., '@largefile.ts explain'). | |
| addDirs | No | Additional writable directories (--add-dir, repeatable). | |
| timeout | No | Maximum execution time in milliseconds (optional) | |
| thinking | No | Toggle thinking mode (overrides default_thinking from config). | |
| agentFile | No | Custom agent spec file (--agent-file). | |
| finalOnly | No | Add --final-message-only — skip intermediate tool-call output. Default: true. | |
| sessionId | No | Internal session ID for conversation continuity (workspace-isolated). | |
| configFile | No | Path to a config file (TOML or JSON). | |
| skillsDirs | No | Custom skills directories (--skills-dir, repeatable). Overrides default discovery. | |
| workingDir | No | Working directory for execution (alias of cd) | |
| outputFormat | No | Kimi --output-format. "text" (default for clean responses) or "stream-json" (JSONL with assistant + tool messages). | |
| resetSession | No | Clear session context before execution. Starts fresh conversation. | |
| responseMode | No | Response verbosity: "clean" returns only the final answer (default), "full" includes tool calls and stderr execution log. | clean |
| mcpConfigFile | No | Path to an MCP config file with `mcpServers` (passed via --mcp-config-file). | |
| continueLatest | No | Use --continue to resume the most recent Kimi session in cwd. | |
| includeMetadata | No | Include tool-call metadata in response (only meaningful with stream-json). | |
| maxStepsPerTurn | No | Cap steps in one turn (--max-steps-per-turn). | |
| maxRalphIterations | No | Extra autonomous iterations after the first turn (--max-ralph-iterations, -1 = unlimited). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructiveHint and openWorldHint. The description adds context about safety controls but does not elaborate on destructive behaviors or side effects. It partially compensates by mentioning session resume and MCP passthrough.
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 sentence that efficiently lists key features without verbosity. It is front-loaded with the primary action, though the comma-separated list could be more structured for clarity.
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 complexity (27 parameters) and absence of output schema, the description is too brief. It does not describe return values or expected output format, leaving gaps for an agent to fully understand the tool's 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 coverage is 100%, so baseline is 3. The description adds value by summarizing key parameter intents (e.g., '@syntax' for prompt, session resume for sessionId, MCP passthrough for mcpConfigFile), helping the agent understand high-level functionality beyond individual schema descriptions.
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 executes the Kimi Code CLI, specifying key features like file analysis, session resume, MCP passthrough, and safety controls. However, it does not explicitly differentiate from sibling tools such as plan-kimi or brainstorm, which may have overlapping capabilities.
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 versus alternatives like plan-kimi or brainstorm. Given the many sibling tools, explicit usage context is missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
batch-kimiADestructive
Delegate multiple atomic tasks to Kimi for batch processing. Ideal for repetitive operations, mass refactoring, and automated transformations.
| Name | Required | Description | Default |
|---|---|---|---|
| yolo | No | Auto-approve everything (typical for batch jobs) | |
| model | No | Optional model override applied to every task. Known: kimi-for-coding, kimi-k2-6, kimi-k2-6-turbo, kimi-k2-thinking-turbo, kimi-k2-5, kimi-latest. | |
| tasks | Yes | Array of atomic tasks to delegate to Kimi | |
| timeout | No | Maximum execution time per task in milliseconds | |
| parallel | No | Execute independent tasks in parallel | |
| workingDir | No | Working directory for execution | |
| concurrency | No | Maximum parallel Kimi processes when parallel=true. Default: min(task count, 4) | |
| stopOnError | No | Stop execution if any task fails |
Output Schema
| Name | Required | Description |
|---|---|---|
| total | Yes | |
| failed | Yes | |
| results | Yes | |
| skipped | Yes | |
| successful | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and openWorldHint=true. Description provides no additional behavioral details beyond the tool's batch nature. No contradiction.
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?
Two concise sentences: first states purpose, second lists use cases. No redundant or extraneous information.
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 8 parameters and output schema, description covers core purpose. Could mention task atomicity or dependency handling for better completeness, but adequate.
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?
100% schema coverage means parameters are fully described in the schema. The main description adds no parameter-specific meaning beyond what the schema provides. Baseline 3 applies.
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?
Verbs 'Delegate multiple atomic tasks' clearly states action. 'to Kimi for batch processing' identifies resource and mode. Contrasts with sibling tools like ask-kimi (single) and brainstorm, making purpose distinct.
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?
Identifies ideal scenarios: repetitive operations, mass refactoring, automated transformations. No explicit when-not-to-use or alternatives, but the use cases imply batch nature vs. single-task siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bg-kimiADestructive
Run Kimi CLI as a detached background task. Subactions: start (returns taskId), status, tail (log output), stop, remove, list. Use for long-running autonomous work — the MCP call returns immediately and you poll status later.
| Name | Required | Description | Default |
|---|---|---|---|
| cd | No | ||
| plan | No | Start in plan mode. | |
| yolo | No | --yolo: auto-approve everything (default for bg tasks: afk; pass yolo for full power). | |
| agent | No | ||
| label | No | Human-readable label to identify this task later. | |
| lines | No | Lines to return from log tail. | |
| model | No | Optional model override. Known: kimi-for-coding, kimi-k2-6, kimi-k2-6-turbo, kimi-k2-thinking-turbo, kimi-k2-5, kimi-latest. | |
| action | Yes | Background task action. | |
| prompt | No | Prompt (required for action=start). | |
| signal | No | Signal for stop action. | SIGTERM |
| taskId | No | Task ID returned by action=start. | |
| addDirs | No | ||
| thinking | No | ||
| agentFile | No | ||
| skillsDirs | No | ||
| workingDir | No | ||
| mcpConfigFile | No | ||
| maxStepsPerTurn | No | ||
| maxRalphIterations | No | Extra autonomous iterations after the first turn. -1 = unlimited. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (destructiveHint=true, readOnlyHint=false) indicate mutation and potential destruction. The description adds that tasks run detached, require polling, and can be stopped or removed, providing helpful behavioral context beyond annotations.
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 concise: two sentences plus a list of subactions. It front-loads the core purpose and immediately follows with actionable subcommands, earning its place without fluff.
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 19 parameters, no output schema, and destructive behavior, the description provides adequate high-level context but lacks details on parameters and return values. It is minimally sufficient for an agent but leaves gaps for complex 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 53%, leaving many parameters (e.g., cd, addDirs, thinking) undocumented in both schema and description. The description lists subactions and a few parameter contexts (e.g., --yolo, prompt required for start) but fails to explain many critical parameters, reducing value.
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: running Kimi CLI as a detached background task. It lists subactions (start, status, tail, stop, remove, list) and distinguishes it from synchronous siblings by emphasizing 'long-running autonomous work' and immediate return.
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 advises using this tool for long-running tasks and notes that the MCP call returns immediately for polling later. However, it does not explicitly state when not to use it or provide alternatives, missing clear exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
brainstormA
Generate creative ideas using structured frameworks with domain context and feasibility analysis.
| Name | Required | Description | Default |
|---|---|---|---|
| cd | No | Working directory | |
| afk | No | Auto-approve in AFK mode | |
| yolo | No | ⚠️ Bypass all approvals | |
| model | No | Optional model override. Known: kimi-for-coding, kimi-k2-6, kimi-k2-6-turbo, kimi-k2-thinking-turbo, kimi-k2-5, kimi-latest. If omitted, uses your Kimi CLI default. | |
| domain | No | Domain: software, business, creative, research, product, marketing, etc. | |
| prompt | Yes | Brainstorming challenge or question | |
| thinking | No | Enable thinking mode for deeper reasoning during ideation. | |
| ideaCount | No | Number of ideas (default: 12, range: 5-30) | |
| constraints | No | Limitations: budget, time, technical, legal, etc. | |
| methodology | No | Framework: divergent, convergent, scamper, design-thinking, lateral, auto (default) | auto |
| existingContext | No | Background info or previous attempts | |
| includeAnalysis | No | Include feasibility/impact analysis |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=false and openWorldHint=true. Description adds context that the tool generates ideas and incorporates analysis, but does not elaborate on side effects, permissions, or data handling beyond what annotations provide.
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 that effectively conveys the tool's purpose and key features with no redundant or extraneous words. Every phrase earns its place.
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 absence of an output schema and 12 parameters, the description provides high-level context (frameworks, domain, analysis) but does not explain the return format or how to iterate on results. Sufficient for basic understanding but not fully comprehensive.
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 100%, so the schema fully documents all 12 parameters. The description mentions 'domain context' and 'feasibility analysis' which map to 'domain' and 'includeAnalysis' parameters, but does not add significant extra meaning beyond the schema.
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?
Description clearly states verb 'Generate', resource 'creative ideas', and method 'structured frameworks with domain context and feasibility analysis'. This distinguishes it from sibling tools like ask-kimi (general Q&A) and plan-kimi (planning).
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?
Description implies usage for brainstorming with domain focus and analysis, but does not explicitly state when to use versus alternatives or provide exclusions. The context is clear but lacks explicit guidance on when not to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delegate-kimiADestructive
Delegate an implementation task to Kimi in an isolated git worktree. Kimi runs autonomously (--yolo) on a fresh branch, optionally looping against a test command. Returns a taskId; later 'collect' to grab the diff. Safe: changes are sandboxed, caller reviews & applies.
| Name | Required | Description | Default |
|---|---|---|---|
| task | No | What Kimi should accomplish (required for action=start). | |
| model | No | ||
| action | No | start: spawn delegated task; status: check progress; collect: stop + return diff + cleanup option. | start |
| taskId | No | ||
| cleanup | No | On collect: also run `git worktree remove` after grabbing the diff. | |
| autoTest | No | Shell command Kimi should run after editing to validate (e.g., "npm test"). If passed, Kimi is told to loop until it passes. | |
| baseBranch | No | Branch/commit to base the worktree on (default: current HEAD of repo). | |
| branchName | No | Name for the new branch in the worktree. Default: kimi/<random>. | |
| workingDir | No | Repo root (default: resolved automatically). | |
| acceptanceCriteria | No | Bullet list of criteria the implementation must satisfy. | |
| maxRalphIterations | No | Extra autonomous iterations (Ralph mode). Default 5 (use -1 for unlimited). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description complements annotations (readOnlyHint=false, destructiveHint=true, openWorldHint=true) by explaining the sandboxed workflow, autonomy via --yolo, and that changes require caller review. It adds context not in annotations, such as the task lifecycle (start, status, collect) and safety guarantees. However, it does not detail what happens on errors or cleanup behaviors beyond the 'cleanup' parameter.
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 concise (~60 words) and front-loaded with the core purpose. Each sentence adds information: autonomous execution, return value, collection step, and safety. No redundant or vague statements.
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?
For a tool with 11 parameters, multiple actions (start, status, collect), and no output schema, the description covers the basic flow but leaves gaps. It explains start and collect, but not what status returns. It omits details on progress tracking or error states. The high parameter count and complexity warrant more completeness.
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 coverage is high (82%), so the baseline is 3. The description adds some semantic value by linking parameters to the workflow (e.g., 'Returns a taskId' explains the purpose of action 'start', and 'optionally looping against a test command' relates to autoTest). However, it does not provide additional meaning beyond what the schema already gives for most parameters.
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: 'Delegate an implementation task to Kimi in an isolated git worktree.' It uses specific verbs ('delegate') and resources ('Kimi', 'isolated git worktree'), and distinguishes from siblings like 'ask-kimi' (query) and 'plan-kimi' (planning) by emphasizing autonomous execution and sandboxed changes.
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 explains when to use the tool: for autonomous implementation tasks with a test loop, and that changes are sandboxed for later review. It implicitly contrasts with interactive siblings like 'ask-kimi' or 'review-changes'. However, it lacks explicit 'when not to use' or alternative tool recommendations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
digest-kimiARead-only
Ingest many files at once and answer a focused question. Uses Kimi's 262K context to swallow whole modules / docs that don't fit in the caller's context. Walks directories, filters by extension, truncates oversized files, caps total payload. Returns a concentrated brief.
| Name | Required | Description | Default |
|---|---|---|---|
| model | No | ||
| paths | Yes | Files or directories to ingest. Directories are walked. Globs are NOT expanded — pass concrete paths. | |
| shape | No | summary: 1-paragraph; detailed: structured deep-dive; qa: focused answer to the question. | qa |
| exclude | No | Substrings to exclude from paths (matched against relative path). Default: node_modules, .git, dist, build. | |
| timeout | No | ||
| question | Yes | Focused question to answer using the provided files (e.g., "explain auth flow", "find dead code"). | |
| recursive | No | Walk into subdirectories. Default: true. | |
| extensions | No | Filter by extensions when walking dirs (e.g., [".ts", ".tsx"]). Default: all text-like files. | |
| workingDir | No | ||
| maxTotalBytes | No | Stop adding files once the total payload exceeds this (Kimi context is ~262K tokens / ~1MB safe). Default: 8 MB. | |
| maxBytesPerFile | No | Truncate any single file above this size. Default: 200 KB. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, destructiveHint=false. Description adds: walks directories, filters by extension, truncates oversized files, caps total payload. No contradictions.
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?
Three sentences, front-loaded with purpose, clear and efficient. No wasted words.
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?
Covers purpose, key behaviors, and constraints. Could be more specific about output format, but given no output schema, 'concentrated brief' is sufficient.
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 coverage is 73%. Description adds context by mentioning directory walking, extension filtering, truncation, and payload capping, which correspond to parameters. Adds value beyond schema.
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?
Clearly states it ingests many files and answers a focused question using Kimi's large context. Distinguishes from siblings like 'ask-kimi' by emphasizing bulk ingestion and focused answering.
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?
Explicitly says when to use: when files don't fit in the caller's context. Does not provide when-not or alternatives, but context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
healthARead-onlyIdempotent
Check Kimi CLI installation, authentication, and session health
| Name | Required | Description | Default |
|---|---|---|---|
| verbose | No | Include detailed diagnostic information | |
| sessionId | No | Optional session ID to check specific session health |
Output Schema
| Name | Required | Description |
|---|---|---|
| issues | Yes | |
| status | Yes | |
| kimiCli | Yes | |
| sessions | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, providing strong safety signals. The description adds behavioral context about what is checked (installation, auth, session), complementing the annotations without contradiction.
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 8-word sentence that front-loads the core action. No extraneous information; every word is necessary and earns its place.
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 presence of an output schema, the description need not explain return values. It covers the key components of the health check (installation, auth, session) and, combined with annotations, provides sufficient context for a diagnostic tool.
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 100% and both parameters ('verbose', 'sessionId') are self-explanatory from the schema. The description adds no extra meaning beyond what is already captured in the schema, so baseline score of 3 is appropriate.
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 uses a specific verb 'Check' and clearly identifies the resources: 'Kimi CLI installation, authentication, and session health'. It effectively distinguishes this diagnostic tool from siblings like 'ask-kimi' or 'ping' which are more interactive or focused on connectivity.
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 implies usage for checking health status but lacks explicit guidance on when to use it over alternatives like 'ping' or 'metrics'. No mention of prerequisites or conditions for use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
HelpARead-onlyIdempotent
Show Kimi CLI help output
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, indicating safe, idempotent behavior. The description adds no new behavioral context beyond stating it shows output. Since annotations cover the safety profile, a 3 is appropriate – adequate but no additional transparency.
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, direct sentence with no unnecessary words. It is perfectly concise and front-loaded.
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?
For a simple, parameterless help tool, the description is complete. It fully explains the tool's purpose. No output schema exists, but the return value is implied. The description suffices.
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?
There are no parameters, and schema coverage is 100%. The description does not need to add parameter semantics. Baseline 4 is correct as the description adds no extra meaning beyond the empty schema.
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 'Show Kimi CLI help output' clearly states the verb and resource, specifying exactly what the tool does. It is not a tautology and distinguishes it from sibling tools like ask-kimi or version, which have different purposes.
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 guidance is provided on when to use this tool vs alternatives. With 13 sibling tools, such guidance would help the agent choose correctly. The description offers no context for usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list-sessionsBDestructive
List active conversation sessions with metadata, or manage them (delete/clear)
| Name | Required | Description | Default |
|---|---|---|---|
| action | No | Action: list (default), delete (single session), clear (all sessions) | list |
| sessionId | No | Session ID for delete action |
Output Schema
| Name | Required | Description |
|---|---|---|
| stats | No | |
| action | Yes | |
| sessions | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description mentions delete/clear actions, which align with the destructiveHint: true annotation. However, it does not disclose additional behavioral details such as the effect of deletion, whether sessions are persistent, or any authentication requirements. With annotations already signaling destructiveness, the description adds minimal extra context.
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 sentence that conveys the tool's dual purpose (listing and managing) without redundancy. Every word earns its place, making it highly efficient and easy to parse.
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?
Despite the tool having multiple actions including destructive ones, the description does not explain when to use each action, what 'active' means, or what metadata is returned. An output schema exists but its contents are not visible; the description could still provide a brief summary of return structure. This is incomplete for a tool of this complexity.
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 coverage is 100%, so the input schema already describes both parameters and the action enum. The description adds no additional meaning beyond what is in the schema, so a baseline score of 3 is appropriate.
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 that the tool lists active conversation sessions with metadata, and can also manage them via delete/clear. This is specific and accurate. However, it does not differentiate from sibling tools that might also involve sessions, such as 'bg-kimi' or 'health'.
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 versus its siblings (e.g., ask-kimi, batch-kimi). It also lacks context on when to use the list action versus delete or clear, leaving the agent to infer from the schema.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
metricsARead-onlyIdempotent
Expose Prometheus-formatted metrics for Kimi MCP server
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint, indicating a safe and idempotent operation. The description adds that the output is in Prometheus format, which is useful behavioral context beyond what annotations provide.
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 that conveys the tool's purpose without any superfluous information. It is front-loaded and efficient.
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 no parameters, no output schema, and is a simple metrics endpoint, the description is complete. It tells the agent what the tool does and what format the output takes, which is sufficient for correct invocation.
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?
The tool has no parameters, and schema coverage is 100%. The description adds value by specifying the output format (Prometheus-formatted metrics), which compensates for the lack of parameter details.
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 exposes Prometheus-formatted metrics, which is a specific verb and resource. It distinguishes from sibling tools that perform different operations (asking, batching, health, etc.).
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 implies the tool is for retrieving metrics for monitoring purposes, but it does not explicitly state when to use it versus alternatives or provide exclusion criteria. Usage guidance is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pingCRead-onlyIdempotent
Echo
| Name | Required | Description | Default |
|---|---|---|---|
| prompt | No | Message to echo |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description offers no behavioral context beyond what annotations already declare (readOnlyHint, idempotentHint). It adds no new information about side effects, safety, or operational behavior.
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 concise with a single word. While efficient, it could be more informative without losing conciseness. It earns its place but is minimal.
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?
For a simple tool with no required parameters, annotations present, and no output schema, the description is adequate but could be more complete. It does not explain the tool's role as a connectivity check or how it relates to sibling tools.
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 100%, with the parameter 'prompt' described as 'Message to echo'. The description 'Echo' adds no additional meaning, so baseline score of 3 is appropriate.
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 'Echo' provides minimal clarity. It suggests the tool returns the input but does not explicitly state a specific verb-resource action like 'test connectivity'. Compared to siblings like 'health' or 'help', the purpose is vague.
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 over alternatives such as 'health' or 'metrics', nor does it specify 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.
plan-kimiARead-only
Generate a structured implementation plan using Kimi's --plan mode. Use BEFORE coding to get steps, files-to-touch, risks, and open questions. Distinct from ask-kimi: uses --plan flag (different system prompt) and parses structured output.
| Name | Required | Description | Default |
|---|---|---|---|
| goal | Yes | What you want planned (a feature, refactor, investigation). | |
| model | No | ||
| format | No | Output shape. json (default) returns structured steps/risks; markdown returns a checklist. | json |
| timeout | No | ||
| acceptance | No | Acceptance criteria the plan must satisfy. | |
| workingDir | No | ||
| constraints | No | Hard constraints (must-not-touch areas, style rules, deadlines). | |
| contextFiles | No | Paths/globs to include as @-references in the prompt. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true. The description adds behavioral context about the --plan mode and structured output parsing, without contradicting any annotations.
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 three sentences, front-loaded with the purpose, and contains no superfluous information. Every sentence adds value.
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 output schema, the description mentions the output structure (steps, files-to-touch, risks, open questions) and distinguishes from siblings. It could have briefly noted that it uses an external API, but overall it is complete enough for an AI agent.
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 63% schema description coverage, the schema provides some parameter details, but the main description does not add any parameter information. It fails to compensate for the 37% of parameters without schema descriptions, especially model, timeout, and workingDir.
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 verb 'Generate' and the resource 'structured implementation plan', and explicitly distinguishes from sibling 'ask-kimi' by referencing the --plan flag and different system prompt.
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 clear usage context: 'Use BEFORE coding' and mentions the distinct sibling 'ask-kimi'. However, it does not explicitly list when not to use it or mention other potential alternatives like 'brainstorm'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
review-changesARead-onlyIdempotent
Run a code review against the current repository using Kimi (collects git diff + structured review prompt).
| Name | Required | Description | Default |
|---|---|---|---|
| base | No | Review changes against a specific base branch (e.g., "main", "develop") | |
| model | No | Optional model override. Known: kimi-for-coding, kimi-k2-6, kimi-k2-6-turbo, kimi-k2-thinking-turbo, kimi-k2-5, kimi-latest. If omitted, uses your Kimi CLI default. | |
| title | No | Optional title for the review summary | |
| commit | No | Review changes introduced by a specific commit SHA | |
| prompt | No | Custom review instructions or focus areas (optional) | |
| timeout | No | Maximum execution time in milliseconds | |
| thinking | No | Enable thinking mode for deeper review (recommended). | |
| workingDir | No | Working directory to run the review in | |
| uncommitted | No | Review staged + unstaged + untracked changes (working tree) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint false, providing a clear safety profile. The description adds that it collects git diff and uses a structured review prompt, but this doesn't reveal new behavioral traits beyond what annotations cover.
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 efficient and includes essential information (git diff collection). Slightly more detail could be added without harming brevity, but it is well-structured.
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 9 optional parameters and no output schema, the description is brief but combined with the schema it provides adequate context for a tool that returns a review. However, it lacks guidance on output format or side effects.
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 covers all 9 parameters with descriptions, achieving 100% coverage. The description doesn't add parameter-specific meaning beyond what the schema provides, earning a baseline score of 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?
Description clearly states the tool runs a code review using Kimi by collecting git diff and a structured prompt. It distinguishes itself from siblings like ask-kimi or batch-kimi by specifying its action on repository changes.
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 implies usage for code review but does not explicitly discuss when to use it versus siblings like ask-kimi or plan-kimi. No exclusions or alternatives are mentioned, leaving the agent to infer from context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
versionARead-onlyIdempotent
Display version and system information
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| nodeJs | Yes | |
| kimiCli | No | |
| platform | Yes | |
| mcpServer | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint, openWorldHint, and idempotentHint, which cover most behavioral aspects. The description adds the specific information returned ('version and system information'), but does not elaborate on response format or potential side effects, which is acceptable given the annotations and 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 extremely concise (7 words) and front-loaded with the key verb and resource. Every word earns its place with no redundancy or filler.
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 zero parameters, comprehensive annotations, and the presence of an output schema, the description is complete. It succinctly states the tool's purpose without needing additional context.
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?
The tool has no parameters, and the schema coverage is 100%. The description correctly omits parameter details since none exist, adhering to the baseline expectation for parameter-richness compensation.
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 uses a clear verb 'display' and specifies the resource 'version and system information', making the purpose straightforward. However, it does not explicitly distinguish from sibling tools like 'health' or 'ping' that might also return system information, which slightly reduces clarity for nuanced selection.
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 over alternatives such as 'health' or 'ping'. An agent would need to infer usage from the name and context, which is insufficient for optimal tool selection.
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. Dates show when Glama detected each change.
14 tool updates
v0.2.0- First observed
ask-kimi - First observed
batch-kimi - First observed
bg-kimi - First observed
brainstorm - First observed
delegate-kimi - First observed
digest-kimi - First observed
health - First observed
Help - First observed
list-sessions - First observed
metrics - First observed
ping - First observed
plan-kimi - First observed
review-changes - First observed
version
TDQS
Each tool has a clearly distinct purpose: from single queries (ask-kimi) to batch processing, code review, brainstorming, background tasks, planning, file ingestion, sandboxed delegation, session management, and server info. No two tools overlap in functionality.
Most tools use lowercase with hyphens (e.g., ask-kimi, batch-kimi), but there are inconsistencies: some are single words (ping, health, version), 'Help' is capitalized, and patterns vary between verb-noun and noun-verb. The naming is readable but not fully consistent.
With 14 tools, the server provides a comprehensive interface to the Kimi CLI, covering core interactions (query, batch, planning, code review, brainstorming), background tasks, file digestion, sandboxed delegation, and management. The count feels well-scoped for its purpose.
The tool surface covers the major workflows expected from a CLI-based coding assistant: interactive queries, batch processing, code review, planning, brainstorming, file ingestion, and sandboxed execution. Minor gaps might include a direct file-editing tool, but the existing tools enable comprehensive automation.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
- QuallaaOAuthcom.quallaa
Talk to your public-facing AI from any MCP client — Claude, ChatGPT, Cursor, Cline, Windsurf.
Shared memory and actions for Claude, Kiro, OpenAI, Cursor, and other MCP-compatible AI clients.
Share one project context across ChatGPT, Claude, Telegram and any MCP client.
Real-time chat for AI agents. Claude Code, Cursor, Cline and Codex join channels over MCP.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceMCP server that provides file operations and Moonshot API-powered tools (reasoning, code review, testing, research, web search, agent) for Kimi K2.5, requiring only a Moonshot API key.591MIT
- AlicenseAqualityDmaintenanceBridges any MCP client (like Claude Code, Zed, VS Code) to any ACP coding agent, enabling multi-agent orchestration from a single chat interface.242109Apache 2.0
- AlicenseBqualityBmaintenanceWindows-first MCP bridge for Kimi Code CLI, exposing code analysis, editing, sessions, and diagnostics as tools for AI agents.622MIT
- AlicenseBqualityBmaintenanceBridges Codex Desktop with Kimi Code CLI, enabling direct control of AI coding sessions via MCP tools for prompt, status, cancel, and CLI operations.133MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- 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/x51xxx/kimi-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server