ladder-mcp
The ladder-mcp server is a Windows-native bridge that exposes Kimi Code's AI coding capabilities as MCP tools, allowing clients like Claude Code to drive Kimi for codebase analysis, editing, session management, and diagnostics.
kimi_code: Perform agentic codebase analysis and editing in a repository. Supports two transports:cli(default): robust one-shot process, best for straightforward codegen/analysisacp: persistent JSON-RPC session with granular live progress and interactive permission promptsSupports background execution (
background: true) for long-running jobs, and session resumption viasession_id/new_session
kimi_ask: Ask stateless, text-only questions without repo access. Supply acontextto switch into review mode, where Kimi acts as a skeptical second-opinion reviewer.kimi_sessions: List and inspect Kimi sessions from the CLI catalog, ACP, or both. Filter by working directory and limit results.kimi_tasks: Manage long-running background jobs — check status, retrieve full output/transcripts, or cancel a running task or ACP session.kimi_status: Diagnose installation, authentication, and overall health of the Kimi Code environment (binary, credentials, config, API).kimi_setup: Generate or merge a Kimi-hosted MCP config entry (.kimi-code/mcp.json) at project or user scope.Experimental tools (enabled via
LADDER_EXPERIMENTAL=1):kimi_export_session: Export sessions to ZIP archiveskimi_visualize_session: Preview or launch a session visualizerkimi_desktop_status: Probe Kimi Desktop Work statuskimi_budget_probe: Guided budget-separation evidence workflow
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., "@ladder-mcpAnalyze the code in my current directory for security issues."
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.
Ladder_mcp
Windows-first MCP bridge for the Kimi CLI (v24). It exposes Kimi Code as MCP tools so a client like Claude Code can run codebase analysis, native sessions, API queries, ACP chat, background tasks, and CLI admin/diagnostics — all on Windows without hardcoded POSIX assumptions.
Published on npm (version badge above). Supported platform is Windows 11 only.
Highlights
Agentic codegen & analysis — point Kimi at a repo to read or edit files.
ACP-only transport —
kimi_codedrives Kimi over the ACP JSON-RPC protocol (onekimi acpprocess per call; continuity viasession_id), with granular watchable live progress and interactive permission prompts.Background tasks — run several Kimi tasks in parallel and wait for each with a single blocking
kimi_tasks action=waitcall (no polling loop), with a live TODO checklist surfaced as Kimi works.Multi-agent support —
agent_ask,agent_code,agent_cycle,agent_sessions,agent_status, andagent_tasksadd a provider-neutral layer over Kimi and the local MiniMaxmmxCLI. Kimi stays the default and allkimi_*tools are unchanged.Dev cycle —
agent_cycleruns an automated coder→reviewer loop (two independent agent sessions) until the reviewer approves or the caller'smax_iterationsbudget is spent. This is the recommended way to write code withprovider=minimax.Independent review —
kimi_askruns stateless questions or a skeptical second-opinion review of supplied material (no repo access, no edits).Session-aware — list, inspect, and resume Kimi sessions across the CLI catalog and ACP.
Diagnostics & setup — one call to check install/auth/health, one to emit the MCP config for a Kimi-hosted server.
Windows-native — resolves
kimi.exe,~/.kimi-code, and PATH correctly; no POSIX assumptions.
Related MCP server: kimi-code-mcp
Requirements
Windows 11
Node.js ≥ 18
Kimi Code CLI installed (
kimi.exeon PATH or at~/.kimi-code/bin/kimi.exe), authenticated (~/.kimi-code/)(Optional) MiniMax CLI (
mmxon PATH) foragent_askandagent_codewithprovider=minimax
Quick start (from npm)
You don't need to clone or build — the package is published on npm and your MCP
client launches it via npx, or you can install the package directly.
Claude Code (one command):
claude mcp add ladder-mcp -- npx -y ladder-mcpOr add it manually to your MCP config:
{
"mcpServers": {
"ladder-mcp": {
"command": "npx",
"args": ["-y", "ladder-mcp"]
}
}
}Then in Claude Code run /mcp (should show ladder-mcp: connected) and call
kimi_status to confirm the environment is detected.
The server speaks MCP over stdio: it is launched and managed by the client, not run by hand. Running
npx ladder-mcpdirectly will appear to "hang" — that is the server correctly waiting for a client. Exit with Ctrl+C.
Prefer a global install? npm install -g ladder-mcp, then use ladder-mcp as the
command instead of npx -y ladder-mcp.
Or install locally into your project:
npm install ladder-mcpThen point your MCP config at ./node_modules/.bin/ladder-mcp (or use
npx -y ladder-mcp, which resolves the locally installed copy when available).
To let Kimi Code itself host this server, use the kimi_setup
tool to produce/merge a .kimi-code/mcp.json entry.
Tools
Core (always on)
Tool | Purpose | Key parameters |
| Agentic work in a repository — analyze and (optionally) edit files. |
|
| Stateless question, or independent review when |
|
| List/inspect Kimi sessions from the CLI catalog, ACP, or both. |
|
| Manage background work. |
|
| Installation, auth, and diagnostics. |
|
| Generate/merge the Kimi-hosted MCP config entry for this server. |
|
| Provider-neutral stateless question/review. |
|
| Provider-neutral agentic code work — analyze and (optionally) edit files. For MiniMax codegen prefer |
|
| Iterative dev cycle: coder agent implements, independent reviewer agent reviews the diff, loop repeats until |
|
| List sessions across providers: Kimi (CLI catalog + ACP) and MiniMax (Ladder session store). |
|
| Installation/auth diagnostics for Kimi and MiniMax together. |
|
| Provider-neutral background-task management (same store as |
|
* = required.
kimi_code drives Kimi exclusively through the ACP JSON-RPC transport. Prefer
the default foreground call: it blocks until Kimi finishes, streams live
progress to clients that render it (Claude Code does), and costs the host model
nothing while it waits. Set background: true only when you need several Kimi
tasks running in parallel.
Experimental (off by default)
Enable with the environment variable LADDER_EXPERIMENTAL=1:
Tool | Purpose |
| Export a Kimi session ZIP (requires explicit |
| Preview or launch the Kimi session visualizer on localhost ( |
| Read-only Kimi Desktop Work status probe. |
| Guided budget-separation evidence workflow (does not submit Work tasks). |
Background tasks
Foreground (the default) is the right choice for a single task: the call blocks,
live progress is visible, and no tokens are spent while waiting. Use
background: true to run several Kimi tasks in parallel — each call returns
immediately with a task id. Then wait with one blocking call instead of a
polling loop (every status poll is a full model turn and costs tokens):
// 1. start two tasks in parallel
kimi_code { "prompt": "...", "work_dir": "C:\\repo1", "edit": true, "background": true }
kimi_code { "prompt": "...", "work_dir": "C:\\repo2", "edit": true, "background": true }
// 2. wait — blocks until the task finishes (or timeout_ms, default 20 min);
// returns the status snapshot plus the last log lines
kimi_tasks { "action": "wait", "task_id": "task_1" }
// 3. read a paginated slice of the full transcript (TODO checklist + every action)
kimi_tasks { "action": "output", "task_id": "task_1", "mode": "full", "offset": 0, "limit": 100 }
// 4. quick non-blocking check — list all, or pass task_id; metadata only
kimi_tasks { "action": "status" }
// 5. stop early (kills the Kimi child process)
kimi_tasks { "action": "cancel", "task_id": "task_1" }The task log keeps the full transcript — every progress event and each TODO
snapshot as Kimi maintains its plan. The status action returns only metadata;
the body is opt-in via output. On server shutdown all running background
tasks are cancelled so no kimi acp child processes are orphaned.
Dev cycle (coder ↔ reviewer)
agent_cycle automates the "one agent codes, another reviews" loop inside a
single tool call:
The coder session implements the task (
edit: true).The reviewer — a separate, always read-only session — inspects
git diffplus the coder's report and must end withVERDICT: APPROVEDorVERDICT: REVISE+ a numbered fix list.On REVISE the feedback goes back into the same coder session; the loop repeats until approval or
max_iterations(set by the caller, 1–10).
Both roles default to one provider (different sessions/dialogues); override
either role with coder_provider / reviewer_provider for cross-provider
review. For MiniMax codegen this cycle is the recommended mode — it
compensates for the single-shot quality gap without burning a second
provider's quota by default.
agent_cycle {
"prompt": "Add input validation to the /users endpoint",
"work_dir": "C:\\repo",
"provider": "minimax",
"max_iterations": 3
}
// or in the background:
agent_cycle { ...same..., "background": true }
agent_tasks { "action": "wait", "task_id": "task_1" }The result includes per-iteration verdicts, the final review, and both session
ids (agent_code + session_id continues the coder session manually).
Configuration
Environment variables
Variable | Effect |
| Register the 4 experimental tools. |
| API key used by |
Timeouts
Every tool that drives Kimi accepts a timeout_ms override. Defaults: ACP
kimi_code 30 min (1 800 000 ms) floor — smaller values are raised to the
floor; kimi_ask 2 min (5 min in verify mode); API 5 min; CLI admin calls 30 s.
Safety boundaries
editdefaults tofalse(analysis-only intent). Read-only is enforced at the ACP proxy since 1.2.0:fs/write_text_filerequests are rejected with a JSON-RPC error before touching disk, and mutating permission requests are denied (reads stay allowed), in addition to the read-only prompt guard. This is best-effort hardening within the protocol — an airtight guarantee would require OS-level sandboxing of the Kimi process.kimi_export_sessionrequires an explicitoutput_path, stays within the working directory, and excludes the global diagnostic log by default.Desktop Work tools are experimental and read-only: they do not read the desktop token store, replay web auth, or submit desktop Work tasks.
The vendored
kimi-code-mcp/is a read-only reference and is never edited or written to by the tools.
Build from source (contributors)
npm install
npm run build # compiles src/ -> dist/ (tests excluded)Quick checks:
npm test # vitest
npm run typecheck # tsc --noEmit (incl. tests)
npm run dev # run the server from source via tsxTroubleshooting
ladder-mcpnot connected / tools missing — runkimi_status. It reports whether the binary, catalog, credentials, and config are found and whether the API is configured.npx ladder-mcpseems to hang — expected; it is the stdio server waiting for a client. It is meant to be launched by your MCP client, not by hand.kimi_askerrors about a missing key — setKIMI_API_KEY(legacyKIMICODE_API_KEYis also accepted) or addapi_keyto~/.kimi-code/config.toml.kimi_codedoes not need this key.kimi_codetimed out — the Kimi process is stopped on timeout, but Kimi persists session state on disk and the response includes asession_id. Callkimi_codeagain with thatsession_idto continue the same Kimi session. Resume is best-effort and not guaranteed; do not start a new task or perform the work yourself.
Project layout
src/— the Ladder_mcp application (packageladder-mcp)kimi-code-mcp/— upstream reference (read-only, MIT)
License
MIT. Ports logic from the MIT-licensed kimi-code-mcp reference.
Available Tools
6 toolskimi_askC
Stateless question or independent review. Text only, no repo, no edits.
| Name | Required | Description | Default |
|---|---|---|---|
| role | No | Reviewer persona override for verify mode. | |
| prompt | Yes | The question to ask or the focus for verification. | |
| context | No | Material to examine (switches to verify mode). | |
| timeout_ms | No | ||
| include_thinking | No | ||
| max_output_tokens | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must fully disclose behavior. It states stateless and text-only, but does not clarify authentication requirements, rate limits, side effects, or how the tool behaves when parameters like context are used (e.g., switching to verify mode). The description is insufficient for understanding the tool's full 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 very concise (one sentence) and front-loads key traits, but it omits necessary detail. While there is no redundancy, the brevity comes at the cost of completeness, making it minimally adequate.
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 6 parameters, no output schema, and no annotations, the description is severely incomplete. It does not explain the purpose of several parameters (e.g., timeout_ms, include_thinking, max_output_tokens) or what the tool returns. This leaves the agent with insufficient context 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?
Schema description coverage is only 50%, and the tool's description adds no information about any parameters. Three parameters (timeout_ms, include_thinking, max_output_tokens) lack schema descriptions and are not addressed in the description. The description does not compensate for the low coverage.
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 it is for 'stateless question or independent review' and emphasizes 'text only, no repo, no edits', which strongly distinguishes it from sibling tools like kimi_code (code-related) and kimi_sessions (session management). The purpose is specific and actionable.
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 vs alternatives is provided. While it implies it is for stateless text queries, there is no mention of scenarios where other tools like kimi_code or kimi_tasks would be more appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
kimi_codeA
Agentic work in a repository: analyze and edit files. Defaults to in-process CLI transport.
| Name | Required | Description | Default |
|---|---|---|---|
| edit | No | Allow file modifications. Default: false (analysis-only intent). On Kimi 0.20.1 this is prompt-enforced (advisory): when false/omitted the prompt is prefixed with a read-only guard, but the CLI itself provides no hard read-only flag for -p mode. | |
| prompt | Yes | The analysis or coding prompt for Kimi. | |
| work_dir | Yes | Absolute path to the codebase root directory. | |
| transport | No | How the server drives Kimi. Both edit files and resume sessions; they differ in robustness and live-progress detail. 'cli' (default): one-shot process, most robust on Windows, but live progress is coarse — only streaming-output volume, no per-action lines. 'acp': persistent JSON-RPC session that emits granular live progress (tool calls, plan steps) and supports interactive permission prompts, but is heavier and more fragile. Prefer 'cli' for plain codegen/analysis; choose 'acp' when you need to watch each action live or handle mid-run prompts. | |
| background | No | Track as a long-running background task. Every progress event (including each action) is appended to the task log, readable via kimi_tasks — the full accumulating transcript, unlike the single overwriting live-progress line of a foreground call. | |
| session_id | No | Explicit Kimi session id to resume. | |
| timeout_ms | No | ||
| new_session | No | Start fresh instead of continuing the last session. Default: false. | |
| detail_level | No | ||
| session_mode | No | ACP session mode when transport='acp'. Default: inferred from session_id/new_session. | |
| include_thinking | No | ||
| max_output_tokens | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description must cover behavior. It mentions the default read-only guard for edit=false and transport differences, but does not disclose potential risks of editing files, required permissions, or error conditions. Moderate 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 concise at two sentences, front-loading the core purpose. The extensive parameter descriptions are placed in the schema, keeping the main description clean. Minor reduction for not exemplifying structure.
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 12 parameters and no output schema, the description omits crucial details like return values, error handling, and session lifecycle. The parameter descriptions are helpful but do not compensate for the lack of overall 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?
Schema description coverage is 67%, and the description adds meaningful context beyond the schema, such as the read-only guard behavior for 'edit' and the detailed transport comparison. Some parameters like 'detail_level' lack descriptions, but overall the description enhances understanding.
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: 'Agentic work in a repository: analyze and edit files.' This is a specific verb+resource pair and distinguishes it from siblings like kimi_ask (likely Q&A) and kimi_setup (setup).
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 briefly mentions defaults but lacks explicit guidance on when to use versus alternatives. However, the transport parameter description provides some context on preferring cli vs acp, but the main description does not offer clear when-to-use or when-not-to-use instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
kimi_sessionsB
List/inspect Kimi sessions from the CLI catalog, ACP, or both.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max sessions to return. Default: 20. | |
| source | No | Source: 'cli', 'acp', or 'all'. Default: 'all'. | |
| work_dir | No | Filter sessions by working directory path. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must disclose behavioral traits. It only states 'list/inspect' without clarifying if it modifies data, required permissions, rate limits, or what 'inspect' entails. The read-only nature is assumed but not explicit.
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, front-loaded sentence that efficiently conveys the core purpose. It is concise but could be slightly more informative without becoming verbose.
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 listing tool with 3 optional parameters and no output schema, the description covers the basic purpose and source options. However, it lacks details on output format, default behavior, or error handling, which a moderately complete description would include.
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 parameters are already described. The description adds no new meaning beyond the schema summary (e.g., does not explain how 'limit' interacts with pagination or how 'work_dir' filtering works). Baseline 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 explicitly states the verb 'List/inspect' and the resource 'Kimi sessions', and distinguishes among sources ('CLI catalog, ACP, or both'), making the purpose clear and distinct from siblings like 'kimi_ask' or 'kimi_code'.
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 listing sessions from specific sources but provides no guidance on when to use this tool versus siblings (e.g., 'kimi_ask') or when to avoid it. No exclusions or alternatives are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
kimi_setupC
Generate the Kimi-hosted MCP config entry for Ladder_mcp.
| Name | Required | Description | Default |
|---|---|---|---|
| args | No | ||
| scope | No | ||
| write | No | When false/omitted, only preview the merged config. | |
| command | No | ||
| project_dir | No | ||
| server_name | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavioral traits. It only states 'Generate... config entry,' which implies a write operation, but does not mention side effects, permissions, or the dual preview/write mode hinted by the 'write' parameter. The 'write' parameter schema description adds some context, but the description itself is silent on 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 very brief (one sentence), but it is under-specified rather than concise. Important details about the tool's function and parameters are omitted, so the brevity does not serve the agent effectively.
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 six parameters (none required), no output schema, and no annotations, the description is critically incomplete. It does not explain what a 'Kimi-hosted MCP config entry' is, how the parameters affect the output, or what the tool returns. The agent lacks adequate information to use the tool correctly.
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 schema description coverage is only 17% (one parameter documented), and the tool description adds no additional meaning or context for the six parameters. The description does not explain any of the parameters, leaving the agent to infer from parameter names alone.
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 states 'Generate the Kimi-hosted MCP config entry for Ladder_mcp,' which provides a specific verb and resource, distinguishing it from sibling tools like kimi_ask or kimi_code that focus on queries or code. However, the term 'Ladder_mcp' is ambiguous and the phrase 'MCP config entry' is not elaborated, slightly reducing clarity.
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 given on when to use this tool versus alternatives, nor are there any prerequisites or usage contexts mentioned. The description lacks any 'when to use' or 'when not to use' information.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
kimi_statusC
Installation, auth, and diagnostics.
| Name | Required | Description | Default |
|---|---|---|---|
| detail | No | Detail level: 'basic' or 'full'. Default: 'basic'. | |
| doctor_path | No | Optional config/tui path for the doctor subcall when detail='full'. | |
| doctor_target | No | Target for the doctor subcall when detail='full'. Default: 'config'. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. 'Installation, auth, and diagnostics' does not disclose whether tool is read-only, destructive, or what side effects occur. Behavioral traits are not described.
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?
Very concise (3 words) but lacks detail. While brevity is positive, it compromises informational value. Front-loads key terms but not fully earned.
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 3 parameters, no annotations, no output schema, the description is incomplete. Does not explain return values, the nature of diagnostics, or how auth/installation are checked. Insufficient for complete understanding.
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 has 100% coverage with descriptions for all 3 parameters. The description adds minimal extra meaning beyond the schema (e.g., mentions 'diagnostics' relating to doctor subcall). Baseline score applicable.
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 states 'Installation, auth, and diagnostics' – a general purpose but not specific verb+resource. The name 'kimi_status' implies status checking, but description is broader. Does not clearly distinguish from siblings like kimi_setup (installation) or kimi_tasks (diagnostics?). Adequate but not precise.
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 on when to use this tool versus alternatives. No context on prerequisites or scenarios. Agent has to infer usage from sibling tool names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
kimi_tasksC
Manage background work: status, output, or cancel.
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | Action: 'status', 'output', or 'cancel'. | |
| task_id | No | Omit for status to list all tasks. Required for output. | |
| session_id | No | Cancel an ACP session instead of a task (action=cancel). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It only mentions actions without disclosing side effects (e.g., cancellation being irreversible), permission requirements, or whether operations are read-only. The description is too minimal.
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?
Extremely concise: single sentence front-loads the core idea. No unnecessary words. Perfectly structured for quick scanning.
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 low complexity, the description lacks context about what tasks are (e.g., from kimi_ask) and return format. Without output schema, it should at least hint at response structure. Incomplete for an agent to use effectively.
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% with clear parameter descriptions. The description adds no additional semantic information beyond the schema. Baseline 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 states a clear purpose: managing background work with specific actions (status, output, cancel). It differentiates from siblings like kimi_status (which likely handles a different type of status) but does not specify what kind of tasks, leaving some ambiguity.
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 alternatives like kimi_status or kimi_sessions. The description only lists actions without context for appropriate usage scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
Each tool has a clearly distinct purpose: ask handles questions, code does repository edits, sessions lists/inspects, setup generates config, status provides diagnostics, tasks manages background work – no overlap.
All tools follow a consistent 'kimi_<noun/verb>' pattern with lowercase and underscores. The naming is uniform and predictable.
Six tools is well-scoped for a management MCP server covering core functionality without being excessive or sparse.
The set covers primary use cases (ask, code, sessions, setup, status, tasks). Minor gaps like a dedicated help or search tool exist but do not hinder core workflows.
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
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
MCP server for progressive tool usage at any scale (see https://klavis.ai)
MCP Server for Slima - AI Writing IDE for Novel Authors with AI Beta Reader.
Related MCP Servers
- FlicenseAqualityDmaintenanceMinimal MCP server bridging a Roslyn C# language server to AI agents, exposing tools for diagnostics, call hierarchy, and type hierarchy.1
- AlicenseBqualityDmaintenanceMCP server wrapping Kimi Code CLI (kimi-k2.5) to provide tools for filesystem, shell, web, and agent operations.14337MIT
- AlicenseAqualityDmaintenanceBridges MCP clients to Moonshot AI's Kimi Code CLI, enabling file analysis, brainstorming, batch tasks, code reviews, and session management within editors like Claude Desktop and Cursor.14821MIT
- AlicenseNot gradedqualityBmaintenanceBridges Kimi Code CLI to OpenAI Computer Use, enabling Kimi to control local macOS applications via MCP.276MIT
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/Arhimage/ladder-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server