Querying the graph¶
Toise exposes one read model — the current-state projection plus the bi-temporal change log — through three surfaces. They all read the same in-memory projection and event log, so they always report the same world.
-
GraphQL API
The typed, introspectable query surface for tools, dashboards, and scripts. Relay pagination, bi-temporal queries, live subscriptions.
-
MCP for AI assistants
A native Model Context Protocol server so an AI assistant can query the graph in plain language — over stdio or Streamable HTTP.
-
Debug UI
A minimal, zero-dependency browser view for operators to eyeball the graph.
Which one should I use?¶
| If you are… | Use |
|---|---|
| an AI assistant / LLM agent | MCP — typed tools, name-bearing results |
| a script, dashboard, or another service | GraphQL — introspectable, paginated |
| an operator wanting a quick look | Debug UI — open a browser, no setup |
Toise is a read model for producer truth: graph state enters only through the
OTLP ingestion boundary. The one write either surface exposes is
annotate_entity (MCP) / annotateEntity (GraphQL) — operator notes kept as an
overlay in a per-tenant sidecar, never mixed into the event log. It needs a
write-capable token; a read-only token is refused.