The MachineRecord
Data

Get the data

256 cases, 671 archived sources, 49 companies. Everything below is free and needs no account. Case metadata is CC BY 4.0; quoted text from news sources stays with its publisher.

Effective 24 September 2026

JSON API

/api/public/cases returns every published case, 200 per page, with the licence stated in each response. Filter with ?page=, ?year= and ?category=. CORS is open, so it works from a browser.

fields
ref, url, title, date_of_incident, company, category, incident_type, severity, location, escalation_stage, sources
rate
Be reasonable. Pro adds an API key with 1,000 requests a day, filtered exports and capture dates.

MCP server for agents

The register is also an MCP server at https://themachinerecord.com/api/mcp: add that URL to Claude, ChatGPT, Cursor or any client that speaks Streamable HTTP and the agent can search cases, open one with its timeline and sources, read a company profile, pull the totals and query the NHTSA Standing General Order file. No key, read only, the same CC BY 4.0 data as the JSON API.

tools
search_cases, get_case, list_companies, get_company, register_totals, search_nhtsa_sgo
stdio clients
npx -y mcp-remote https://themachinerecord.com/api/mcp

CSV and JSON files

The whole register as flat files, refreshed every day at 08:00 UTC: cases with 24 columns, the timeline events of every case, every source with its tier and archived copy, and the links to NHTSA filings. A codebook defines every column and closed vocabulary, the annotation guidelines state the rules each field is assigned by, and a limitations note says what the data cannot support.

GitHub
https://github.com/vzolot/machine-record-data
Codebook
https://github.com/vzolot/machine-record-data/blob/main/CODEBOOK.md
Guidelines
https://github.com/vzolot/machine-record-data/blob/main/ANNOTATION_GUIDELINES.md
Limitations
https://github.com/vzolot/machine-record-data/blob/main/LIMITATIONS.md
Inter-rater pilot
https://github.com/vzolot/machine-record-data/blob/main/irr/2026-10-model-pilot.md
cases.csv
https://raw.githubusercontent.com/vzolot/machine-record-data/main/data/cases.csv
events.csv
https://raw.githubusercontent.com/vzolot/machine-record-data/main/data/events.csv
sources.csv
https://raw.githubusercontent.com/vzolot/machine-record-data/main/data/sources.csv
Hugging Face
https://huggingface.co/datasets/Vzolot/machine-record
Kaggle
https://www.kaggle.com/datasets/volodymyrzolotukhin/commercial-robot-incidents
import pandas as pd
cases = pd.read_csv("https://raw.githubusercontent.com/vzolot/machine-record-data/main/data/cases.csv")
cases[cases.company == "Waymo"].groupby("severity").size()

The same four tables come from the API without a key, 500 rows a page: /api/public/cases, /api/public/events, /api/public/sources and /api/public/sgo-links.

Research releases

A versioned release is cut every quarter and archived on Zenodo with the codebook, the annotation guidelines and a changelog frozen with it, so a paper can cite a fixed snapshot. Release 1.1.0 of 23 October 2026 is the first research release: 284 cases, 720 timeline events, 694 sources across 326 domains. The next is due in January 2027. Between releases the daily mirror moves. The changelog lists every change of method and vocabulary: CHANGELOG.md.

NHTSA SGO crash reports

Every filing under NHTSA's Standing General Order, the current files and the 2021-2025 archive, driverless and Level 2 together, one row per report at its latest version: /reports/sgo. The CSV endpoint takes the same filters as the page and needs no account.

CSV, latest versions
https://themachinerecord.com/reports/sgo/csv
CSV, all versions
https://themachinerecord.com/reports/sgo/csv?versions=all
filters
program=ADS|ADAS|OTHER, entity=, severity=, state=, year=, crash=, q=
import pandas as pd
sgo = pd.read_csv("https://themachinerecord.com/reports/sgo/csv")
sgo[sgo.injury_severity == "Fatality"].groupby(["program", "reporting_entity"]).size()

Data descriptor preprint

The methods, tables, vocabularies and limitations are written up as a data descriptor, preprint version 1 of 26 October 2026: doi.org/10.5281/zenodo.23664150. Journal submission follows the January 2027 release. Cite the preprint for the method and the dataset DOI below for the data.

Citing the register

The dataset has a DOI that always resolves to the latest archived release: 10.5281/zenodo.22925531. Cite a single case by its reference and permanent URL, for example TMR-0238 and its case page.

The Machine Record (2026). The Machine Record: incidents involving commercial
physical robots [Data set]. Zenodo. https://doi.org/10.5281/zenodo.22925531

Feeds

all cases
https://themachinerecord.com/feed.xml
one company
https://themachinerecord.com/company/waymo/feed.xml, and the same for any company slug
weekly digest
https://themachinerecord.com/digest, one email every Monday

Badge for dashboards and notebooks

If you build on the data, this badge links back to the register and tells your readers where the numbers come from:

Data: The Machine Record

[![Data: The Machine Record](https://themachinerecord.com/badge.svg)](https://themachinerecord.com)

Questions about the data, and requests for slices that are not on the site, go to hello@themachinerecord.com. See also the licence and the methodology.

Live counter for a page or a README

The number of verified cases on the register, with how many involved a person hurt, rebuilt every fifteen minutes. One image, no script, and it always carries the address of the register so a reader can check the count.

Verified cases on The Machine Record
<a href="https://themachinerecord.com"><img src="https://themachinerecord.com/embed/counter" alt="Verified commercial robot incidents on The Machine Record" width="320" height="96"></a>