MCP quick start

The StGB Operome MCP server speaks JSON-RPC 2.0 over Streamable HTTP. Stateless, POST-only. Anonymous tier: 60 requests/min per client. Registered tier: 600/min with a bearer token (request one below).

Endpoint

https://operome.dev/mcp

From any command line

A plain REST convenience layer sits beside the MCP endpoint. Same evaluator, same telemetry, same rate limits. No JSON-RPC, no client library - just GET requests with query parameters. Pass the section as a paragraph number (e.g. 211) or by id (e.g. Murder), and every other query parameter is treated as a variable assignment (Name=true|false|unknown or a numeric value).

bash
curl "https://operome.dev/api/evaluate?section=211&KillsPerson=true"
bash - list all sections
curl "https://operome.dev/api/sections"

Returns {section, result, derivation, missing, escalations} as JSON. For the section list: {sections: [{id, ref, title_en, chapter}, ...]}.

Claude Code

claude config (~/.claude/mcp.json)
{
  "mcpServers": {
    "stgb-operome": {
      "transport": {
        "type": "http",
        "url": "https://operome.dev/mcp"
      }
    }
  }
}

Codex (OpenAI)

codex config
{
  "mcp": {
    "servers": {
      "stgb-operome": {
        "url": "https://operome.dev/mcp",
        "headers": { "Accept": "application/json, text/event-stream" }
      }
    }
  }
}

curl — list tools

bash
curl -X POST 'https://operome.dev/mcp' \
  -H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

curl — evaluate a section

bash
curl -X POST 'https://operome.dev/mcp' \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json, text/event-stream' \
  -d '{
    "jsonrpc": "2.0", "id": 1, "method": "tools/call",
    "params": {
      "name": "stgb_evaluate",
      "arguments": {
        "id": "AbuseOfPersonUnderCare",
        "facts": {
          "VictimUnderEighteen": "true",
          "UnderCare": "true",
          "Torments": "true"
        }
      }
    }
  }'

Tools reference

ToolParametersReturns

stgb_list_sections

List sections, optionally filtered by chapter.

chapter? : stringArray<{id, ref, title_en, chapter}>

stgb_get_section

Full record for a section by id.

id : stringFull section record (variables, computables, rules, markup, flags)

stgb_get_schema

Synthesised XSD-style schema for the section.

id : stringXSD string

stgb_evaluate

Evaluate a single section deterministically (Kleene K3).

id : string, facts : {var → "true"|"false"|"unknown"|<number>}{composite, result, derivation[], missing[], escalations[]}

stgb_master_rule

Evaluate MasterRule (§13). ExceptionActApplies derived from §32 / §34 / §228 vs §35.

factsSame shape as stgb_evaluate

stgb_search

Search in titles, variable surfaces and rule bodies.

query : stringArray<{id, ref, title_en, chapter}>

Request an API key

Single field, no account, no password. We email your key once. Anonymous use does not require this — it only raises your rate limit to 600 requests/min.