Skip to content

GROUNDING publishes the Hallucination Incident Index as a page, as a JSON/CSV open dataset, and now as an MCP server — so an agent can query it directly instead of scraping a page or shipping a copy of the dataset in a prompt. It’s public, read-only, and requires no API key: point any MCP-capable client at the endpoint and four tools are immediately available.

This exists because the niche is empty. There is no standing incident radar most coding agents can query mid-session to ask “has this model had jailbreak reports lately?” or “what’s this week’s severity breakdown?” — this server is that lookup, wired straight into the environments where agents already run.

Tools

ToolArgumentsWhat it returns
latest_incident_indexnoneThe most recent weekly aggregate — totals by severity (S1–S4) and category (hallucination/jailbreak/refusal/bias), that week’s top mentioned models — plus the dataset’s generation timestamp.
search_incidentsmodel?, category?, severity?, since?, limit? (default 20, max 100)Individual incident records matching all given filters, newest first. model is a case-insensitive substring match, so "claude" matches "Claude", "Claude Opus 4.8", "Anthropic Claude Fable 5", etc.
model_scorecardmodelOne model’s history: incident counts by severity and category, how many distinct weeks had at least one flagged incident, and its 5 most recent incidents.
list_modelsnoneEvery model name mentioned anywhere in the index, with incident counts, most-mentioned first — useful for discovering exact name strings before calling search_incidents or model_scorecard.

Every response — success or error — is wrapped with the same three fields so a caller always knows where the data came from and how it can be reused:

{
  "license": "CC-BY-4.0",
  "attribution": "Grounding — grounding.fyi",
  "source": "https://grounding.fyi/incidents/Hallucination-Incident-Index"
}

If the upstream dataset is temporarily unreachable, a tool call returns an MCP error result with a plain-text reason instead of failing silently or serving stale data past its cache window (responses are cached for up to an hour).

Example queries

Once connected, ask your agent things like:

  • “Call latest_incident_index and tell me this week’s severity breakdown.”
  • “Use search_incidents to find S1/S2 jailbreak incidents since 2026-06-01.”
  • “Run model_scorecard for Fable 5 — how many weeks has it shown up in, and what’s the most recent incident?”
  • “Call list_models and tell me which models have never had an S1 incident.” (combine with search_incidents per model)

Connect a client

Claude Code:

claude mcp add --transport http grounding https://mcp.grounding.fyi/mcp

claude.ai: Settings → Connectors → Add custom connector → paste the same https://mcp.grounding.fyi/mcp URL. No API key or OAuth step — the server is unauthenticated and read-only.

Any other MCP client: point it at https://mcp.grounding.fyi/mcp (Streamable HTTP, recommended) or https://mcp.grounding.fyi/sse (legacy SSE fallback, for older clients only). A plain GET to /health on the same host returns a machine-readable status and endpoint summary.

The server is a small, stateless Cloudflare Worker: no auth, no user data, no write operations — every tool call just re-reads the same public dataset above and re-derives its answer from it, so pointing a client at the endpoint is the only setup step.

Data and methodology

The server has no data of its own: every tool call reads the same public dataset described in Open Dataset: LLM Incident Index, including its methodology caveats (this is an MVP proxy index, not a verified incident registry — see that page before citing a number). If you’d rather consume the raw files directly, they’re at /static/data/incidents.json and /static/data/incidents.csv.

For the same data as a live, human-readable page, see the Hallucination Incident Index itself, or subscribe to updates via RSS.