Skip to main content

MCP server

The corpus, served to AI agents over JSON-RPC — the same consent and ownership gates as the REST API.

Endpoint

One endpoint, speaking JSON-RPC 2.0 (the Model Context Protocol): POST /api/v1/mcp. It authenticates the same way the rest of the API does — an Auth0 JWT or a brs_ token — but requires the corpus:read scope specifically. Nothing a tool call returns exceeds what the same identity could already reach over REST: the consent gate (public / anon / private) and the org-ownership check both run inside the same rules the REST corpus and replay-report endpoints use, not a second copy of them.

JSON-RPC request
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "search_signatures",
    "arguments": { "query": "checkout 5xx burst never paged", "topK": 3 }
  }
}

Methods

initialize, ping, tools/list, tools/call, resources/list, resources/templates/list, resources/read.

Tools

ToolArgumentsReturns
search_signaturesquery (string, required), class? (one of the six canonical classes), topK? (1–20, default 5)Semantic search over the corpus — the same contract POST /corpus/search answers to.
get_signaturesignatureKey (string, required, e.g. sig_checkout_5xx)One signature by key.
classify_replayorgId (string, required), replayId (string, required)The classified report of one replay — 404 rather than 403 outside the caller’s org, so a tenant’s existence is never confirmed to an agent that cannot see it.
explain_classclass (one of the six canonical classes, required)What the class is, plus up to three corpus examples the caller is entitled to see.

Resources

One resource per canonical failure class, at corpus://signatures/{class} — reading one returns the class's explanation plus up to 50 signatures the caller may see. See Guides for the same six classes explained in prose.