Data Access

The dataset behind this site is open to machines as well as people. No key, no registration, no account.

The endpoint

https://www.gliderincidents.com/public/mcp

It speaks the Model Context Protocol over HTTP, so any MCP-capable client or agent can read it directly. It is read-only at the database level, not merely by convention.

Connecting a client

Most MCP clients take a JSON config of this shape:

{
  "mcpServers": {
    "gliderincidents": {
      "type": "http",
      "url": "https://www.gliderincidents.com/public/mcp"
    }
  }
}

In Claude Code, one line does it:

claude mcp add --transport http gliderincidents https://www.gliderincidents.com/public/mcp

Or call it directly

curl -s https://www.gliderincidents.com/public/mcp \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call",
       "params":{"name":"search_incidents",
                 "arguments":{"tag":"winch launch","fatalities_min":1}}}'

What it serves

Around 550 glider accident and incident records drawn from six national safety authorities — the BFU, SUST, BEA, SUB, NTSB and AAIB — each read against its source report and rewritten in English, German, French and Spanish. Beyond the narrative, most records carry a structured event chain (the sequence of what happened, node by node) and tags on four axes: flight phase, contributing factor, decision pattern, and the mitigation that would have broken the chain.

Records are selected on the investigative depth of the source report, not on which authority wrote it. A report is included only where the authority documents work of its own — a site visit, an examination, witness statements, recorded data, records checked, or an attempted determination whose outcome it reports. A report resting solely on the account of the crew involved is not included, and 57 such records were withdrawn in September 2026. This makes the set thinner on minor occurrences, because authorities investigate least where nobody was hurt. Full statement of the standard on the licence page.

ToolArgumentsReturns
search_incidentsaircraft_type, tag, country, date_from, date_to, fatalities_min, injuries_min, manually_reviewed, keyword, limitSearch published incidents. Every filter is optional; combine them freely. Returns matches plus a total count that ignores the limit.
get_incidentincident_id, languagesOne full record: title, summary, date, place, coordinates, aircraft, damage, tags and the event chain, in any of en / de / fr / es.
get_report_sourceincident_idWhere to read the official report: the investigating authority, its own reference number, and a link to the document on the authority's site.
find_similarincident_id, limitComparable incidents, ranked by shared tags and aircraft type. Useful for assembling a briefing around a theme.
chain_searchpattern, limitSubstring search inside the event chains — the node-by-node sequence of what happened. Finds mechanisms that titles and summaries do not name.
safety_lessons_by_tagtag, limitTrigger and factor labels pulled from the chains of every incident carrying a tag. A quick read of how one failure mode actually starts.
aircraft_searchquery, limitThe aircraft catalogue by manufacturer or model substring, with a count of published incidents per type.
list_tagsThe whole taxonomy, grouped by axis: flight phase, factor, decision pattern, mitigation.
stats_overviewTotals by country, by year and by source.
pick_random_incidentprefer_chain, prefer_reviewedOne random published record. Built for a daily-briefing seed.

Bold arguments are required. Call tools/list for the authoritative schema — this table is written by hand and the endpoint is not.

What it does not serve, and why

The authorities' report text. This site does not republish the official investigation reports — it links to them. That is a deliberate position, set out in the license, and it is what keeps a link from becoming redistribution. Use get_report_source to get the authority, its reference number and a URL, then read the report from the authority itself, under its terms.

Exact pilot ages. No name is published anywhere here, but an exact age together with a date, a place and an aircraft type can single somebody out in a country with a few thousand glider pilots. Age is therefore banded to five years wherever it crosses this boundary, with both tails left open (<2070–74, 75+). The figures that actually explain an accident — hours on type, recent currency, launches in the last 90 days — are unbanded, because they are what matter.

Anything unpublished. Records still in editorial review are not served, and are not discoverable by asking for them by number.

Rate limits

60 requests per minute per caller, with a burst of 20. Over that, the endpoint returns 429 with a Retry-After header saying how long to wait. There is no quota beyond that and no key to run out.

If you need a bulk copy rather than a query interface, ask — tom@segelflug.io. A dump is less costly on both sides than paging an endpoint several hundred times.

Terms

What comes back is licensed CC BY-SA 4.0: use it, including commercially, provided you credit it and license adaptations alike. Each record carries its originating authority and that authority's reference number — please keep them. If you are grounding or training a model on this, the attribution requirement is not met by a general nod to “public web data”. Full terms, and this project's position on each of the six source authorities, are on the license page.

Corrections

Records are written by people from source documents, and they contain errors. If one misstates what an authority found, that is a defect worth reporting: tom@segelflug.io.

Glider Incidents · License & Sources · Privacy · Imprint