mcpbeat Sign in

Bill Commons MCP Server

by billcommons Your server? Claim it
answering

Bill Commons is answering right now. Last checked 7 min ago. It exposes 13 tools. Last commit 26 Aug 2026.

Search 209k+ US state bills, all 50 states + DC: full text, sponsors, votes, status. Free.

Uptime history 90 days of history · worst day 99%
90 days agonow
100.0%
Uptime 24h
91 of 91 checks
13
Tools
read from the server
412 ms
Response time
average over 24h
0
Stars
last commit 26 Aug 2026

What changed 11

Every tool that appeared, vanished or quietly changed what it asks for. Recorded since 27 September 2026. No other catalogue keeps this.

31 Oct 3 tools appeared build_policy_brief, get_policy_development, search_policy_developments
8 Oct 2 tool descriptions were rewritten get_bill_record, get_jurisdiction_coverage
8 Oct a tool appeared get_upcoming_hearings
8 Oct a tool disappeared get_upcoming_hearings
4 Oct a tool description was rewritten get_jurisdiction_coverage
2 Oct a tool description was rewritten get_upcoming_hearings
2 Oct a tool disappeared get_upcoming_hearings
27 Sep a tool description was rewritten get_bill_record

What the code does

We read the source, 3 d ago · tools taken from the live server · rules 995398eba69f

Capabilities

What this server is able to do. For an MCP server this is often the job itself — a terminal server runs commands because that is what it is for. Listed so you know what you are plugging in, not as an accusation.

Builds a database query by concatenation data/registry/session-csv-page-2026-07-23.html:13
…(t=>{t[0]?.on&&t[0].context()instanceof o.y&&!t[0].listeners(e).includes(t[1])&&t[0].on(e,t[1])})})}}s.isolatedBacklog||delete a[t],s.backlog[t]=null,s.emit("drain-"+t,[])}}function f(e,t){var r=e[1];Object.values(t[r]||{}).forEach(t=>{var r=e[0];if(t[0]===r){var n=t[1],i=e[3],s=…
In the project's build, not in the package

Found in continuous integration, deployment or infrastructure files, or in a neighbouring package of the same monorepo. None of this is installed when you add the server: it describes how the project is built and released. We list it because a leaked key in a build pipeline is still a real problem, but it is not something this server does on your machine.

    proc = subprocess.run(
                f"https://api.telegram.org/bot{cfg['telegram_bot_token']}/sendMessage",

Is this your server and something here is wrong? Tell us — corrections are free and do not require a plan.

This code can reach further than it looks

We found places where it runs commands, builds paths or queries from values it is given. None of that is a flaw by itself — it becomes one when the code changes, and code changes quietly between releases. We re-read it on every one.

Three servers free · no card

Connect this server

Endpoint below is the one we actually reach during checks — not the one copied from a README. Last verified 7 min ago.

run in your terminal
claude mcp add bill-commons --transport http https://mcp.billcommons.org/mcp
Settings → Connectors → Add custom connector, then paste this address
https://mcp.billcommons.org/mcp
~/.codex/config.toml
[mcp_servers.bill-commons]
url = "https://mcp.billcommons.org/mcp"
.cursor/mcp.json
{
  "mcpServers": {
    "bill-commons": {
      "url": "https://mcp.billcommons.org/mcp"
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "bill-commons": {
      "type": "http",
      "url": "https://mcp.billcommons.org/mcp"
    }
  }
}

Available tools 13

Read directly from the server with tools/list, grouped by what they act on. If a tool disappears, we record the date.

build
build_legislative_evidence_packet
Compile a citation-ready evidence packet for a bill: full official record, legislative history timeline, votes with member-level detail, and hearings -- each explicitly labeled official vs. derived with source URLs. Returns a `how_to_cite` block with a one-line `cite_as` sentence, a human `permalink`, a JSON `download_url`, and a `snapshot_id` that changes if and only if a cited fact about the bill changes -- so a reader can check later whether the citation still holds. Snapshots are NOT archived; the id is a change detector, not a way to retrieve an older packet. Pass `question` to record what the packet was assembled to answer; it is echoed into the artifact so a filed packet carries its own scope.
build_policy_brief
Build a citation-first comparison of one to twelve registry records. The brief preserves the registry's methodology and limitations and does not produce legal advice, compliance determinations, or a claim that the selected set is exhaustive. Supply stable slugs returned by `search_policy_developments`.
policy
get_policy_development
Retrieve one full, source-labelled policy development by its stable slug. The response can include cited sources, normalized obligations, explicit analysis-only verification mappings, and recorded change history. A null response means only that the slug is absent from this bounded registry; it does not establish that the underlying policy development is absent.
search_policy_developments
Search Bill Commons' bounded, source-labelled frontier-AI policy registry. This is not a comprehensive global or federal legislative database. It returns only the curated records currently held by the registry, including its coverage statement and retrieval timestamps. Use `jurisdiction`, `instrument_type`, `status`, or an exact topic; use `q` for a title, summary, or topic substring. `since` filters source publication dates and `changed_since` filters source-check activity on or after an ISO date; a retrieval or changed source body does not establish a policy change.
active
get_active_sessions
List legislative sessions currently flagged active, optionally filtered by jurisdiction (two-letter state code or name).
bill
get_bill_record
Fetch the full record for one bill: metadata, sponsors, subjects, actions, versions, and vote-event summaries. Look up by canonical bill_id (UUID), or by jurisdiction + identifier (+ optional session to disambiguate). For a human bill number like HB 123, use jurisdiction="NC", identifier="HB 123"; bill_id is for UUIDs.
compare
compare_bill_versions
Deterministic diff (unified + structured) between two versions of a bill's extracted text. Defaults to earliest vs. latest texted version if version ids are omitted. Errors if fewer than 2 versions have extracted text. Result is labeled 'derived' (computed by Bill Commons, not an official document).
jurisdiction
get_jurisdiction_coverage
Return the jurisdiction_coverage state-machine status for one state (abbreviation or name), or the full stored coverage matrix if state is omitted. Public-registry and unlisted row counts are explicit. Includes bounded retained official-source observation health and evidence links. Coverage status measures stored bill/text availability; local coverage timestamps can advance on count recomputation. Statewide semantic freshness remains unverified, including for GREEN coverage.
legislation
search_legislation
Search FULL BILL TEXT -- not just known-bill-number lookup. `q` is matched against titles, descriptions, AND ingested document text via Postgres websearch_to_tsquery (supports "quoted phrases", OR, and -exclusion, same syntax as a search engine), with a fuzzy pg_trgm title-similarity fallback when the exact query has no hits. `q` can ALSO be a bill number ("HB 123", "H.B. 123", "hb123" all match) and that fast path is tried first. Optionally filter by jurisdiction (two-letter state code or name), chamber, and status. For a curated cross-state slice of a subject (e.g. "every AI bill in the country") rather than an ad-hoc keyword search, call list_topics first -- its membership rules also match on structured subject tags this full-text search does not see.
similar
find_similar_bills
Find bills with similar titles via deterministic trigram similarity, across jurisdictions. Labeled 'derived' -- not an official cross-reference or companion-bill designation.
topics
list_topics
List Bill Commons' curated cross-state topic trackers (e.g. artificial intelligence, youth online safety, platform accountability, cybersecurity, cryptocurrency, data privacy, local government & preemption) -- the entry point for "what subjects does Bill Commons track across all 50 states + DC" and "how do I get every bill in one". Each topic is a title/subject membership rule tuned for precision over recall, with a live bill_count and how_to_fetch_bills. This tool does not itself return bill rows -- pair it with search_legislation or the REST API's /topics/{slug} for the bills.
trace
trace_legislative_history
Full chronological legislative history for a bill: merged timeline of actions, version publications, and votes, plus related-bill links.
vote
get_vote_details
Fetch vote event(s) with member-level (yes/no/other/absent) vote records. Provide vote_event_id for one vote, or bill_id for all recorded votes on that bill.

Tools removed

Tools this server used to expose. Anything built against them stopped working on the day they went.

get_upcoming_hearings
removed 8 Oct 2026

Endpoints

URLTransportStateLatencyChecked
https://mcp.billcommons.org/mcp streamable-http answering 410 ms 7 min ago

Alternatives to Bill Commons

same job, measured the same way
Openstates
by pipeworx-io

OpenStates MCP — bills, legislators, votes in all 50 US states

369 installs/wk 48 tools answering
Openstates MCP Server
by cyanheads

Search bills, legislators, committees, and events across all 50 US states, DC, and 5 US territories.

244 installs/wk 10 tools answering
Legislens
by cloudcorprecords

US state bills and hearing transcripts: search bills, testimony, speakers, hearings.

302 installs/wk local only
Delilah
by delilahusa

Live U.S. bills, roll-call votes, legislators and statutes for all 50 states, D.C. and Congress.

43 tools answering
Gavelin
by gavelin

Search bills and speaker-attributed hearing transcripts across all 50 US state legislatures.

answering
Delaware Code
by pipeworx-io

Delaware Code — state statutes by citation, full-text search, and amendment history. Fleet #2749.

307 installs/wk 46 tools answering
CongressMCP
by congressmcp

Federal and 50-state legislative data for AI: bills, text, votes, members, and committees.

6 tools answering
Vicp Registry
by vicp-registry

Search 13,000+ US vaccine court (VICP) decisions: cases, court text, statistics, attorneys. Free.

10 tools answering

Bill Commons — questions

Answers built from our own checks of this server.

What can Bill Commons do?
It exposes 13 tools, read directly from the server on our last check. Among them: build_legislative_evidence_packet, build_policy_brief, compare_bill_versions, find_similar_bills, get_active_sessions, get_bill_record and 7 more. The full list with descriptions is on this page — we take it from the server itself via tools/list, not from a README. How MCP servers expose tools in the first place →
What is Bill Commons mostly used for?
Its tools cluster around build and policy. That is what this server is built to work with — the grouping comes from the actual tool names, not from a category we assigned.
Is Bill Commons working right now?
We send a real MCP handshake every 15 minutes. Over the last 24 hours 91 of 91 checks got a reply (100.0%), average response time 412 ms. The bar chart above shows every period we have measured.
Did Bill Commons ever remove tools?
Yes. get_upcoming_hearings is no longer exposed — we recorded the date each one disappeared. A tool vanishing usually means a breaking change for anything that depended on it.
How do I connect Bill Commons?
Copy the ready config from this page. We generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each in the form that client actually reads. It is a remote server, so there is nothing to install — the client connects to the address.
Does Bill Commons need an API key?
No. Bill Commons completed a full MCP handshake with us as an anonymous client and listed its tools without asking for anything. All 13 of them are readable on this page. This is what we observed, not what the docs claim.
How fast is Bill Commons?
It answers our handshake in 412 ms on average, which is faster than 31% of all working MCP servers we measure. The comparison comes from our own checks across the whole registry, every 15 minutes.
Is Bill Commons open source?
The code is open source: it is published under the Apache-2.0 licence, written in Python and 0 stars on GitHub. The licence covers the code in the repository, not the hosted service at mcp.billcommons.org, which runs on its operator's own terms.