> ## Documentation Index
> Fetch the complete documentation index at: https://docs.murmur.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# MCP server

> Use Murmur tools from inside Claude Code, Cursor, and other MCP clients — spawn agents, send follow-ups, manage tasks, and monitor progress.

The Murmur MCP server exposes agent operations as tools over the [Model Context Protocol](https://modelcontextprotocol.io/). Claude Code discovers these tools automatically and invokes them alongside its built-in tools.

## Setup

If you ran [`murmur setup`](/cli/setup) and accepted the MCP prompt, the server is already configured. Otherwise, add it manually:

```bash theme={null}
claude mcp add murmur murmur mcp
```

On agent VMs, no setup is needed — the MCP server is auto-configured at boot.

## Available tools

The MCP server exposes 17 tools:

### Agent lifecycle

| Tool                                           | Purpose                                       |
| ---------------------------------------------- | --------------------------------------------- |
| [`spawn`](/mcp-server/spawn)                   | Create a new agent                            |
| [`spawn_profiles`](/mcp-server/spawn-profiles) | List the identities you can spawn an agent as |
| [`status`](/mcp-server/status)                 | Query an agent's current state                |
| [`ls`](/mcp-server/ls)                         | List agents                                   |
| [`kill`](/mcp-server/kill)                     | Cancel an agent and its subtree               |
| [`interrupt`](/mcp-server/interrupt)           | Interrupt an agent's current turn             |
| [`wait`](/mcp-server/wait)                     | Block until an agent reaches a target phase   |
| [`queue_add`](/mcp-server/queue-add)           | Send a follow-up message to a running agent   |
| [`clear_queue`](/mcp-server/clear-queue)       | Discard all queued follow-ups                 |

### Task management

| Tool                                     | Purpose                                          |
| ---------------------------------------- | ------------------------------------------------ |
| [`task_create`](/mcp-server/task-create) | Add an item to an agent's checklist              |
| [`task_update`](/mcp-server/task-update) | Update task status, description, or dependencies |
| [`task_list`](/mcp-server/task-list)     | List all tasks in an agent's checklist           |
| [`task_get`](/mcp-server/task-get)       | Retrieve a single task by ID                     |

### Utilities

| Tool                                 | Purpose                               |
| ------------------------------------ | ------------------------------------- |
| [`upload`](/mcp-server/upload)       | Upload a file and get a public URL    |
| [`port_url`](/mcp-server/port-url)   | Get a public tunnel URL for a VM port |
| [`agent_url`](/mcp-server/agent-url) | Get the dashboard URL for an agent    |
| [`version`](/mcp-server/version)     | Print the client version              |

## Slug targeting

Tools that target an agent accept a `slug` parameter. Slugs follow two forms:

**Relative** — a bare name like `fix-bug` resolves relative to the calling agent. On a VM, it targets a child. On a laptop, it targets a root agent.

**Absolute** — a path starting with `/` overrides the caller's context: `/w/workspace/u/account/slug`.

When `slug` is omitted, most tools target the calling agent itself.

## Channel events

On agent VMs, the MCP server pushes real-time events via the `claude/channel` capability. Events arrive as `<channel>` tags — PR comments, CI results, child lifecycle changes, and file-changed notifications. Agents react to these without polling.
