claude-code-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| healthA | System health check: binary availability + summary of all known sessions. Returns |
| session_startA | Pre-create a Claude Code session. Usually unnecessary —
|
| session_sendA | Send prompt to a session and return immediately (non-blocking). Creates the session if it does not exist — no Sending while Claude is working is supported and is how you steer a run
mid-flight; the input is queued and the pending result still spans the whole
run. The returned Launch options apply only when the session is created. Set working_dir on the first send. Returns |
| session_waitA | Block until the session finishes its pending work, then return the answer. This is the completion trigger: it returns Claude's final response as the tool result. Resumable. If timeout (seconds, max 3600) elapses while Claude is
still working, this returns Set auto_compact_at (e.g. 70) to run Returns |
| session_tailA | Peek at the last lines of pane output without blocking. Use this to check on a long-running task instead of assuming it is stuck.
Returns |
| session_respondA | Answer an on-screen prompt when choice is an option number ("1", "2", ...) or a navigation key: Launch dialogs (workspace trust, bypass-permissions, effort) are handled automatically — this is only for questions Claude itself asks. |
| session_interruptA | Stop the current turn without killing the session. Sends Escape (Claude Code's own interrupt), verifies the session left the
busy state, and only falls back to Ctrl-C if Escape did not take. Follow up
with |
| session_statusA | Return state info for one session.
|
| session_listA | List all managed sessions (metadata) plus any live tmux sessions. |
| session_compactA | Compress the session's context via Optionally pass focus to bias what is retained, e.g. "the auth refactor". Output quality degrades above ~70% context usage, so compact before then. |
| session_contextA | Run Returns |
| session_destroyA | Kill the tmux session and remove its stored metadata. Do this when a task is finished — tmux sessions outlive this server. Do not
use it to stop a slow run; use |
| session_stopA | Kill the tmux session but keep the conversation. Use this to free a session's transcript — so |
| session_set_claude_idA | Bind an existing Claude conversation ID to name for future Only needed to adopt a session this server did not create — new sessions are assigned an ID automatically. |
| claude_runA | Run a one-shot Best for work that needs no conversation: review a diff, answer a question, make one contained change. Cheaper and faster than a tmux session. Pass session_name to resume a managed session's conversation, so one-shot and interactive work share history. A live, busy session is refused (two writers would corrupt the transcript); a live idle one is allowed but the running TUI will not show the turn until restarted. fork=True branches to a new session ID instead, avoiding both issues. Returns |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 15 tools
Most tools have clearly distinct purposes, but session_stop and session_destroy both kill the tmux session, differentiated only by keeping metadata. Also, session_status, session_context, and session_tail all read session state, though they target different aspects. Descriptions clarify the boundaries sufficiently.
The vast majority follow a consistent session_<verb> pattern (list, start, send, wait, tail, respond, interrupt, status, compact, destroy, stop). The claude_run tool deviates by using a different prefix, but it is still a clear, readable name that fits the server's purpose.
At 15 tools, it sits at the upper edge of the ideal range. Each tool covers a distinct aspect of session lifecycle or health, so the count feels justified rather than bloated. It is slightly heavy but not excessive for the domain.
The tool set covers the full session lifecycle: create, send, wait, tail, respond, interrupt, compact, stop, destroy, plus one-shot execution and health/context checks. There are no obvious missing operations that would leave an agent stuck.