Docs · Developers
Zero as MCP server
Zero exposes a Model Context Protocol server. Any MCP-compatible client can list and read Work items, proofs, and sessions as structured resources.
Overview
Zero runs an embedded MCP server alongside the main API. It exposes Work items and proof records as MCP resources, and provides a small set of tools for reading and running Work.
No external configuration is required. The MCP endpoints are available at the same base URL as the rest of the Zero API.
Resources
GET /mcp/resources returns the full list of available resources. Each resource maps to a Work item in the current project.
GET /mcp/resources
{
"resources": [
{
"uri": "zero://cases/abc123",
"name": "Fix auth token expiry",
"mimeType": "application/json",
"description": "IMPLEMENTING — reproducing session token …"
}
]
}To read a specific resource, pass its URI to GET /mcp/resources/*uri. The server parses the zero:// scheme and returns the full record.
GET /mcp/resources/zero://cases/abc123
{
"contents": [
{
"uri": "zero://cases/abc123",
"mimeType": "application/json",
"text": "{ ... full case JSON ... }"
}
]
}Supported resource types:
| Type | URI pattern | Description |
|---|---|---|
| Work item | zero://cases/:id | Full case record |
| Proof | zero://proofs/:case_id | Proof records for a Work item |
Tools
GET /mcp/tools returns Zero's MCP tool definitions. These follow the standard MCP tool schema (name, description, inputSchema).
GET /mcp/tools
{
"tools": [
{
"name": "zero_list_cases",
"description": "List all Work items with their state and title",
"inputSchema": { "type": "object", "properties": { "state_filter": { "type": "string" } } }
},
{
"name": "zero_get_case",
"description": "Get full details of a specific Work item by ID",
"inputSchema": { "type": "object", "properties": { "case_id": { "type": "string" } }, "required": ["case_id"] }
},
{
"name": "zero_run_session",
"description": "Run an agent session on a Work item with a given prompt",
"inputSchema": { "type": "object", "properties": { "case_id": { "type": "string" }, "prompt": { "type": "string" } }, "required": ["case_id", "prompt"] }
}
]
}URI scheme
Zero uses a zero:// URI scheme to identify its resources. The path after the scheme is type/id:
zero://cases/abc123
zero://proofs/abc123When calling /mcp/resources/*uri, the URI is passed as a path segment. Percent-encode the colon and slashes if your client does not handle them natively.
API reference
| Method | Path | Description |
|---|---|---|
| GET | /mcp/resources | List all MCP resources |
| GET | /mcp/resources/*uri | Read a resource by URI |
| GET | /mcp/tools | List available MCP tools |