referencesource-mcp
MCP server for referencesource.org —
small, verified reference datasets where every record carries its source
URL and a verbatim quote from that page, so any value an assistant gives
you can be checked, not just believed.
285 datasets, 110,000+ records: regulatory thresholds and deadlines, version
compatibility, standards supersessions, certification registers, inspection
requirements, and more. Each dataset states its coverage and its
last-verified date.
Tools
list_datasets | every dataset with record counts and descriptions |
search_records | search within a dataset; each hit returns the value plus its source URL and verbatim source quote |
get_record | one record by id, full provenance included |
verify_quote | give it a dataset slug and a value you already hold (record id and field optional) — it checks that claim against our published records and says whether it matches |
verify_quote is the unusual one: assistants invent plausible-but-wrong
values roughly 19% of the time in our own measurements, and this is the
check. Four verdicts come back:
matches_record | the claim equals the stored value; the match type is named (exact, case-insensitive, normalised) |
matches_quote | not a stored value, but it does appear in the record's source quote |
differs | the record holds a different value — both are returned, with the source |
not_found | no record in that dataset carries it |
Where a record is found, the answer carries the stored value, the record URL,
the source URL and the verbatim quote, so the claim can be traced upstream —
plus an attestation saying plainly that the verdict is about what our source
states, not about what is true in the world. Asking whether the 2026
conforming loan limit for Autauga County, Alabama is $806,500 returns
differs, stored value $832,750, quoting the FHFA row it came from.
Scope, stated so nobody overclaims: these tools search
referencesource.org's own published records. They do not fetch arbitrary
URLs and cannot check a claim against a page we have not harvested.
not_found means "not in this dataset", never "false".
Setup
Claude Desktop — add to claude_desktop_config.json:
{
"mcpServers": {
"referencesource": {
"command": "npx",
"args": ["-y", "referencesource-mcp"]
}
}
}
Cursor / other stdio MCP clients — same idea: command npx, args
["-y", "referencesource-mcp"].
Clients that support remote servers directly don't need this package at
all — point them at the streamable-HTTP endpoint:
https://referencesource.org/mcp.
Notes
- Zero dependencies; Node 18+. The package is a thin stdio→HTTPS bridge to
the stateless server at
referencesource.org/mcp.
- No accounts, no keys, no tracking beyond standard server request logs
(see referencesource.org/privacy).
- Data is free to read on the site in HTML, Markdown, and JSON; this
package just makes it callable mid-conversation.
MIT licensed.
The data behind it
Every record carries source (the page the value was read from) and
source_quote (the verbatim line on that page which states it), so any answer
this server returns can be checked against its source. verify_quote runs that
check against a value you already hold: it tells you whether our record agrees,
and hands back the source and quote either way.
Licence
MIT — see LICENSE. The reference data itself is CC BY 4.0; see the
data repository for the full position on the quoted excerpts.