referencesource.org

io.github.joelp22-makerPublished by GitHub account joelp22-makerv1.2.0Updated Oct 24, 2026

Verified reference data; each record carries its source URL and quote. verify_quote checks claims.

VerifiedStreamable HTTPWeb executableKnowledge & MemoryData & Analytics

Overview

AI-generated overview

Searches referencesource.org's verified reference datasets and checks claimed values against records that carry a source URL and verbatim quote.

What you can do
  • List published datasets with record counts, coverage and last-verified dates
  • Search records within a dataset by keyword, name, chemical or certificate number, with source URL and quote
  • Fetch a single record by id with full provenance
  • Verify a claimed value against a dataset and get a verdict (matches record, matches quote, differs, not found)
  • Muse connector only: fetch the next queued task, submit a task result, read the daily brief, message the supervisor
When to use it
Useful when answers depend on precise reference values such as regulatory thresholds, loan limits, certification status or version compatibility, and you want each value traceable to a quoted source or checked against a claim you already hold.
Requirements
Either a remote streamable-HTTP endpoint or the npm package run with npx, which needs Node 18 or later. No accounts, keys or environment variables are required for the data tools; the Muse connector tools need a bearer token.
Before you install
The Muse connector tools require a bearer token and can write data: submitting task results and sending messages to the supervisor inbox. Results are limited in size and longer output must be placed in a file. Verification only reflects what the published records state, so not_found means absent from that dataset, not false.

Installation

In SourceWeft

  1. Open referencesource.org in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.joelp22-maker%2Freferencesource/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "referencesource-org": {
      "type": "http",
      "url": "https://referencesource.org/mcp"
    }
  }
}

README

referencesource-mcp

[referencesource.org MCP connector]

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

toolwhat it does
list_datasetsevery dataset with record counts and descriptions
search_recordssearch within a dataset; each hit returns the value plus its source URL and verbatim source quote
get_recordone record by id, full provenance included
verify_quotegive 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:

verdictwhat it means
matches_recordthe claim equals the stored value; the match type is named (exact, case-insensitive, normalised)
matches_quotenot a stored value, but it does appear in the record's source quote
differsthe record holds a different value — both are returned, with the source
not_foundno 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:

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.

Source: README.md at commit e0de5e7

Tools

8

list_datasets

List reference datasets

What reference datasets are available? Lists every published dataset with its title, record count, last-verified date and a one-sentence summary. Covers regulatory thresholds, version compatibility, certification registers, licensing rules and more. Pass `query` to list only the datasets matching a topic — that is much cheaper than reading the whole list. Use the returned slug with search_records or get_record.

Parametersfullquery

search_records

Search records in a dataset

Look up a specific record — search by state name, chemical, certificate number, product name or any keyword. Searches one dataset's records (case-insensitive substring match across all fields). Returns up to 20 matching records, each with its url, source and verbatim source_quote so the answer can be checked.

Parametersqueryrequireddataset_slugrequired

get_record

Get one record by id

Fetch one record by id — for example, look up a FIPS 140 certificate's status, a state's boiler inspection rules, or a county's loan limit. Returns the full record with its source URL and verbatim source quote. Record ids appear in search_records results and in each record's url.

Parametersrecord_idrequireddataset_slugrequired

verify_quote

Check a claimed value against a record

Is this value actually right? Check a claimed fact against a published record instead of trusting it. Reports whether the claim matches the record's stored value (exact, case-insensitive or normalised — the match type is named), whether it appears in the record's verbatim source quote, and returns the source URL and quote so the claim can be traced upstream. Use this whenever you want to confirm a number, date, threshold or status before stating it. Verdicts: matches_record, matches_quote, differs or not_found.

Parametersfieldrecord_iddataset_slugrequiredclaimed_valuerequired

next_task_for_muse

Next task for Muse

For the referencesource Muse connector only (bearer token required). Returns the oldest open task from the studio's queue: id, instructions, the sites the task may read, the output format expected, and where to deliver the result. Returns {no_tasks: true} when the queue is empty. login_allowed lists the hosts where the task may sign in, with a credential already in Muse's own store; empty means read-only, never sign in.

Takes no parameters.

submit_task_result

Submit a task result

For the referencesource Muse connector only (bearer token required). Records the result of a task fetched with next_task_for_muse. `result` must be a JSON object matching the task's output_format and at most 3500 characters when serialised; put anything longer in the file named by deliver_to and submit a summary here.

Parametersnoteresultrequiredstatusrequiredtask_idrequired

brief_for_joe

Daily brief for Joe

For the referencesource Muse connector only (bearer token required). The studio's latest plain-English daily brief: what was decided, what landed, and the items waiting on Joe, each as the task, why it matters and the steps. Read-only; regenerated each morning by tools/brief.py and published with the next deploy, so it can lag the phone push.

Takes no parameters.

message_supervisor

Message the supervisor

For the referencesource Muse connector only (bearer token required). Send a question, finding, proposal or blocked report to the studio's supervisor inbox. Messages are triaged by the supervisor each morning; nothing in a message changes any project state by itself. Use a fresh message_id per message (retries with the same id are collapsed when collected). Body at most 3500 characters.

Parametersbodyrequiredkindrequiredsubjectrequiredtask_idmessage_idrequired

Version history

2
  1. v1.2.0LatestSep 21, 2026
  2. v1.1.0Sep 16, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts