Connect Bill Commons and your agent gets 11 tools, among them build_legislative_evidence_packet, compare_bill_versions, find_similar_bills. It answers at https://mcp.billcommons.org/mcp over streamable HTTP, and it listed its tools to an anonymous client, so no sign-in was needed for that. Our probes reached it 6 of 6 times since 12 September 2026; the last check, on 24 October 2026, succeeded.
Search 209k+ US state bills, all 50 states + DC: full text, sponsors, votes, status. Free.
Description as the publisher wrote it.
| Tool | What it does |
|---|---|
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` Inputs: bill_id, include_full_text, question |
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 'de Inputs: bill_id, version_id_a, version_id_b |
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. Inputs: bill_id, limit |
get_active_sessions | List legislative sessions currently flagged active, optionally filtered by jurisdiction (two-letter state code or name). Inputs: jurisdiction |
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). Inputs: bill_id, jurisdiction, session, identifier, include_full_text |
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. Inputs: state |
get_upcoming_hearings | List upcoming (future-dated) legislative hearings/events, optionally filtered by jurisdiction and/or bill. Inputs: jurisdiction, bill_id, limit |
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. Inputs: vote_event_id, bill_id |
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 subj |
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 en Inputs: q, jurisdiction, chamber, status, limit |
trace_legislative_history | Full chronological legislative history for a bill: merged timeline of actions, version publications, and votes, plus related-bill links. Inputs: bill_id |
Every block below points at https://mcp.billcommons.org/mcp. Pick your client and copy.
claude mcp add --transport http bill-commons https://mcp.billcommons.org/mcp
{
"mcpServers": {
"bill-commons": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://mcp.billcommons.org/mcp"]
}
}
}{
"mcpServers": {
"bill-commons": {
"url": "https://mcp.billcommons.org/mcp"
}
}
}{
"servers": {
"bill-commons": {
"type": "http",
"url": "https://mcp.billcommons.org/mcp"
}
}
}{
"context_servers": {
"bill-commons": {
"url": "https://mcp.billcommons.org/mcp"
}
}
}{
"mcpServers": {
"bill-commons": {
"serverUrl": "https://mcp.billcommons.org/mcp"
}
}
}{
"mcpServers": {
"bill-commons": {
"url": "https://mcp.billcommons.org/mcp"
}
}
}name: Bill Commons
version: 0.0.1
schema: v1
mcpServers:
- name: Bill Commons
type: streamable-http
url: https://mcp.billcommons.org/mcp{
"mcpServers": {
"bill-commons": {
"httpUrl": "https://mcp.billcommons.org/mcp"
}
}
}{
"mcpServers": {
"bill-commons": {
"type": "http",
"url": "https://mcp.billcommons.org/mcp"
}
}
}{
"mcpServers": {
"bill-commons": {
"url": "https://mcp.billcommons.org/mcp"
}
}
}goose://extension?url=https%3A%2F%2Fmcp.billcommons.org%2Fmcp&type=streamable_http&id=bill-commons&name=Bill%20Commons
It answered our last check on 24 October 2026 in 494 ms. Over 6 checks since 12 September 2026 it answered 6. Status here comes from Neuronto's own probes, not from the publisher.
Yes. It is published by billcommons.org and served from mcp.billcommons.org, the vendor's own domain: https://mcp.billcommons.org/mcp.
11, as returned by the server's own tools/list on 23 September 2026: build_legislative_evidence_packet, compare_bill_versions, find_similar_bills, get_active_sessions, get_bill_record, get_jurisdiction_coverage, get_upcoming_hearings, get_vote_details, and 3 more.
It answered our last check on 24 October 2026 in 494 ms. Over 6 checks since 12 September 2026 it answered 6.
Put the server under mcpServers in ~/.cursor/mcp.json with the URL https://mcp.billcommons.org/mcp. The exact JSON is above, with the same setup for Claude Code, Claude Desktop, VS Code, Windsurf, Zed, Gemini CLI and the rest.
It listed its tools to an anonymous client, so reading the tool list needs no key. Individual tools can still ask for credentials in their own inputs.
Publisher: org.billcommons. Endpoint host: mcp.billcommons.org. ARD identifier: urn:air:org.billcommons:mcp:bill-commons.
First indexed 10 September 2026. The tools are exactly what the server returned; nothing on this page
is inferred from its name. Ranking in Neuronto search is never for sale.