The dataset

This site publishes a dataset of eighty-five thousand seven hundred and fifty-three dated historical events, covering two thousand nine hundred and nine years from roughly three thousand years before the common era to the present day. It is free, openly licensed, and available as a bulk download, as a REST API, as a full-text search endpoint and as a Model Context Protocol server. There is no key to request, no rate limit to negotiate and no account to create.

The thing that distinguishes it from any other list of historical dates is that every single row can be traced back to a specific, frozen source. Each event is a sentence taken word for word out of an English Wikipedia article, and stored alongside it is the numeric revision identifier of the exact version of that article the sentence was taken from. Wikipedia articles change constantly, which is normally what makes them impossible to cite properly: a quotation you take today may not be there in six months, and a reader who follows your link has no way of seeing what you actually read. A revision identifier removes that problem entirely. It names one immutable version of the page, which will read the same way in ten years as it does now.

What is actually in it

The main table has one row per event. Each row carries the sentence itself, the year it happened in, the calendar date where the source gives one, a topic label, the title of the Wikipedia article it came from, the path of the section within that article where the sentence sits, the revision identifier, and a permanent link that opens that exact revision at that exact section. Years are stored using astronomical numbering, which means the year before the year one is written as zero and the year forty-four before the common era is written as minus forty-three. This is unattractive to read but it is the only convention under which arithmetic on years works correctly across the boundary, and it is what any program consuming this data would want.

A second table holds two thousand nine hundred and forty-one subject timelines. A subject here is a person, place, institution or event that Wikipedia's own editors linked to from inside a dated line, which means the association between the subject and the event was written by a human editor rather than inferred by us or guessed at by a model. Two thousand seven hundred and twenty-two of those subjects carry a Wikidata identifier, and that is what turns the table from something you can read into something you can join: any other database keyed on Wikidata can be merged against this one without any name matching or fuzzy string comparison at all.

A third table holds one row per year, with the summary paragraph for that year and its own source revision. Together the three tables are described by a Frictionless data package, which is a standard machine-readable description of what the columns are and what types they hold, so a program can load the whole thing without anyone having to read documentation first.

How it was built, and what that rules out

The extraction is deterministic. A program reads the wikitext of Wikipedia's year, decade and century articles at a pinned revision, pulls out the dated lines, strips the markup mechanically, and writes the resulting sentences out unchanged. Nothing on this site is written by us. No language model rewrites, summarises, paraphrases or otherwise touches the wording of a single entry. A model is used for exactly one thing, which is deciding which of twelve topic labels a sentence belongs under, and that decision cannot make a row say something untrue because it never alters the row.

The consequence worth stating plainly is that this dataset inherits Wikipedia's errors. If a date is wrong on Wikipedia it is wrong here too. What it does not inherit is Wikipedia's instability, because every row names the version it came from, and it does not add any errors of its own on top, because no step in the pipeline is allowed to generate text. Anyone who wants to audit a claim can open the linked revision and read the sentence in its original context in about four seconds.

Why the shape matters more than the words

The words in this dataset are freely available elsewhere; they are Wikipedia's, under the Creative Commons Attribution-ShareAlike licence, and we make no claim on them. What does not exist elsewhere is the shape. Wikipedia publishes prose organised by article. Its unit is the page. This dataset's unit is the sentence, and each sentence is tagged with the year, the calendar day, a topic, the century, the decade, the subjects named inside it and the revision it came from. That structure is what lets you ask questions the encyclopedia cannot answer in one step: everything that happened on the fourth of July across all recorded years, or every dated line mentioning Constantinople in order, or the whole record of a single topic across three thousand years.

For anyone building a system that answers questions, this matters for a specific reason. A model that quotes an encyclopedia article is quoting a moving target, and a user who wants to verify the answer has to trust that the page said that at the time. A model that quotes a row from this dataset can hand the user a link to a frozen revision. The answer stops being something to take on faith and becomes something that can be checked.

How to get it

The complete dataset is available as three gzipped newline-delimited JSON files, described by a Frictionless data package. Downloading those is faster for you and cheaper for us than crawling several thousand pages, and the data is identical. If you would rather query than download, there is a REST API and a full-text search endpoint, both static, both CORS-open, both free. If you are a language model or an agent, there is a Model Context Protocol server at https://slashyear.com/mcp, registered in the official MCP registry under the name com.slashyear/mcp, which exposes search, a single year, a single calendar day across all years, and a single subject timeline as tools. It speaks streamable HTTP and needs no authentication, so it is a POST endpoint rather than a page you can open in a browser.

Reuse is free, including commercial use and including use as training data. The licence is Creative Commons Attribution-ShareAlike 4.0, inherited from Wikipedia, which asks only that you attribute the source; every row carries the article title and revision identifier needed to do that automatically. We are not reserving any rights over search indexing, citation in generated answers or model training, and the robots file says so in machine-readable form.