mcpbeat Sign in

Bill Commons MCP Server

by billcommons Your server? Claim it
answering

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

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

Uptime history 47 days of history · worst day 98%
47 days agonow
100.0%
Uptime 24h
91 of 91 checks
11
Tools
read from the server
517 ms
Response time
average over 24h
0
Stars
last commit 26 Aug 2026

What the code does

We read the source, 22 h ago · tools taken from the live server · rules 3dff92dd89df

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 13 min ago.

run in your terminal
claude mcp add bill-commons --transport http https://mcp.billcommons.org/mcp
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "bill-commons": {
      "url": "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
{
  "mcpServers": {
    "bill-commons": {
      "url": "https://mcp.billcommons.org/mcp"
    }
  }
}

Available tools 11

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

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).
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.
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 51-jurisdiction coverage matrix if state is omitted.
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.
upcoming
get_upcoming_hearings
List upcoming (future-dated) legislative hearings/events, optionally filtered by jurisdiction and/or bill.
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.

Endpoints

URLTransportStateLatencyChecked
https://mcp.billcommons.org/mcp streamable-http answering 365 ms 13 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

40 tools answering
Openstates MCP Server
by cyanheads

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

114 installs/wk 10 tools answering
Gavelin
by gavelin

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

answering
Vicp Registry
by vicp-registry

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

10 tools answering
America Law Graph
by edgardomunoznajar

Search 529K US statute sections. 50 states + USC + CFR. Semantic search, citation graph, MCP.

33 installs/wk local only
HempData
by hempdata

Verified hemp & cannabinoid regulatory data for all 50 US states + DC. Free key at hempdata.io.

answering
Tools Berry Paycheck
by tools-berry

Live US paycheck and payroll-tax math for 2026, all 50 states and DC, powered by tools-berry.com.

4 tools answering
Plos
by pipeworx-io

PLOS journals — Solr-backed full-text search across all PLOS OA content

35 tools answering

Bill Commons — questions

Answers built from our own checks of this server.

What can Bill Commons do?
It exposes 11 tools, read directly from the server on our last check. Among them: build_legislative_evidence_packet, compare_bill_versions, find_similar_bills, get_active_sessions, get_bill_record, get_jurisdiction_coverage and 5 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 →
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 517 ms. The bar chart above shows every period we have measured.
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 with the file path 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 11 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 517 ms on average, which is faster than 27% 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?
Yes — it is published under the Apache-2.0 licence, written in Python and 0 stars on GitHub. The source link is on this page, so you can read exactly what it does with your data before you connect it.