Search 209k+ US state bills, all 50 states + DC: full text, sponsors, votes, status. Free.
| Endpoint | https://mcp.billcommons.org/mcp (streamable-http) |
|---|---|
| Registry version | 1.0.0 |
| Now | 13 tools · grade A (98) · pin ts_a278f97196d45ae56acc76ad5d8a8780 · protocol 2025-06-18 |
| First / last listed | 2026-11-09 01:09 UTC / 2026-11-09 01:09 UTC |
| Grade over time | 2026-11-09: A (98), 13 tools |
Is this your server? Own a server? ToolFit hosted watch re-checks it every 24 h ($0.25 per 30 days) or 6 h ($0.60) and sends you an HMAC-signed webhook when its tools or grade change: POST https://api.youraitools.co/toolfit/v1/watch. To opt out, see About & opt-out.
Tools: search_legislation get_bill_record compare_bill_versions find_similar_bills get_vote_details trace_legislative_history build_legislative_evidence_packet get_jurisdiction_coverage get_active_sessions list_topics search_policy_developments get_policy_development build_policy_brief
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", params: q*, jurisdiction, chamber, status, limit |
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. params: bill_id, jurisdiction, session, identifier, include_full_text |
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). params: 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. params: 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. params: vote_event_id, bill_id |
trace_legislative_history | Full chronological legislative history for a bill: merged timeline of
actions, version publications, and votes, plus related-bill links. params: bill_id* |
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 cit params: bill_id*, include_full_text, question |
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 coun params: state |
get_active_sessions | List legislative sessions currently flagged active, optionally
filtered by jurisdiction (two-letter state code or name). params: jurisdiction |
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 params: none |
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 su params: jurisdiction, instrument_type, status, topic, q, since, changed_since |
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.
params: slug* |
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`.
params: slugs* |
Entries describe changes in tool definitions. They are not statements about a server, its quality or its author. The grade measures how the tool definitions fit model providers (token cost, schema compatibility, confusable names) as scored by the ToolFit engine at the time of the listing. JSON: append .json. Opt-out: how or hello@youraitools.co.