MCP server for Kimi Code Desktop - a native desktop harness for Kimi Code CLI with support for agent runtime, thread management, file operations, git integration, and MCP server orchestration
42 tools with explicit schemas and descriptions visible in server.ts. Naming follows verb_noun convention (env.bootstrap, threads.create, git.commit). Descriptions are present but brief (10-50 chars typical), below the 50-200 char LLM-optimized baseline. Parameter schemas are well-typed with enums, patterns, and constraints (e.g., instanceId regex, image mimeType pattern). However, many descriptions lack context on WHEN to use the tool or what it returns. No output schemas documented. Error handling and recovery guidance absent. Composition is strong, tools are single-responsibility and chainable (e.g., threads.create → threads.sendTurn). Risk annotations (READ_ONLY, WRITE, DESTRUCTIVE) present but not mapped to tool annotations in the protocol.
Begin login process for a provider
Cancel authentication
Logout from a provider
List checkpoints for a thread
Revert to a checkpoint
Revert a part of a checkpoint
Review a checkpoint
Bootstrap the environment
Descriptions are uniformly brief (10-50 chars) and lack context on WHEN to use each tool or what it returns. LLM-optimized descriptions should be 50-200 chars and answer: What does it do? When should I call it? What does it return?
No output schemas documented for any tool. LLMs cannot plan downstream calls or extract required fields (e.g., threadId from threads.create) without knowing the response structure.
Risk annotations (READ_ONLY, WRITE, DESTRUCTIVE) are metadata but not exposed as tool annotations in the MCP protocol (readOnlyHint, destructiveHint). Agents cannot infer safety properties from the tool definition alone.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 56 | 2026-07-28+ | v2 |
Cancel an update
Confirm an update
Install the CLI
Prepare an update
Read a file
Get file tree for a directory
Create a git commit
Get git diff for a file
Get git repository information
Stage files in git
Get git status
Unstage files in git
List available providers
Get runtime configuration defaults
Inspect a subagent
Stop a subagent
Archive or unarchive a thread
Clear the goal for a thread
Clear the queue for a thread
Create a new thread
Create a side thread
Delete a thread
Export threads
Interrupt the current turn
List threads
Remove a queued turn
Rename a thread
Respond to a request
Resume a thread
Send a turn message to a thread
Set a configuration option for a thread
Set a goal for a thread
Steer a queued turn
Update a queued turn
No error handling or recovery guidance. Tools like threads.delete and git.commit are destructive but provide no confirmation step, dry-run option, or error messages guiding the agent on what to do if the operation fails.
Pagination not documented for list tools (threads.list, checkpoints.list, files.tree). No limit, offset, or cursor parameters visible. Large result sets could exhaust context windows.