bill-commons
Search 209k+ US state bills, all 50 states + DC: full text, sponsors, votes, status. Free.
사용해야 할까요
품질 및 안전성
발견 사항 (2)
- LOWget_jurisdiction_coverage에서
- LOWbuild_legislative_evidence_packet에서
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"bill-commons": {
"url": "https://mcp.billcommons.org/mcp"
}
}
}원격 엔드포인트
https://mcp.billcommons.org/mcpstreamable-http할 수 있는 일
도구 목록
도구 (11)
🟢search_legislation(q, jurisdiction, chamber, status, limit)
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.
입력 스키마
{
"type": "object",
"properties": {
"q": {
"title": "Q",
"type": "string"
},
"jurisdiction": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Jurisdiction"
},
"chamber": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Chamber"
},
"status": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Status"
},
"limit": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Limit"
}
},
"required": [
"q"
],
"title": "search_legislationArguments"
}🟢get_bill_record(bill_id, jurisdiction, session, identifier, include_full_text)
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.
입력 스키마
{
"type": "object",
"properties": {
"bill_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Bill Id"
},
"jurisdiction": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Jurisdiction"
},
"session": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Session"
},
"identifier": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Identifier"
},
"include_full_text": {
"default": false,
"title": "Include Full Text",
"type": "boolean"
}
},
"title": "get_bill_recordArguments"
}⚪compare_bill_versions(bill_id, version_id_a, version_id_b)
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).
입력 스키마
{
"type": "object",
"properties": {
"bill_id": {
"title": "Bill Id",
"type": "string"
},
"version_id_a": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Version Id A"
},
"version_id_b": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Version Id B"
}
},
"required": [
"bill_id"
],
"title": "compare_bill_versionsArguments"
}🟢find_similar_bills(bill_id, limit)
Find bills with similar titles via deterministic trigram similarity, across jurisdictions. Labeled 'derived' -- not an official cross-reference or companion-bill designation.
입력 스키마
{
"type": "object",
"properties": {
"bill_id": {
"title": "Bill Id",
"type": "string"
},
"limit": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Limit"
}
},
"required": [
"bill_id"
],
"title": "find_similar_billsArguments"
}🟢get_vote_details(vote_event_id, bill_id)
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.
입력 스키마
{
"type": "object",
"properties": {
"vote_event_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Vote Event Id"
},
"bill_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Bill Id"
}
},
"title": "get_vote_detailsArguments"
}🟢get_upcoming_hearings(jurisdiction, bill_id, limit)
List upcoming (future-dated) legislative hearings/events, optionally filtered by jurisdiction and/or bill.
입력 스키마
{
"type": "object",
"properties": {
"jurisdiction": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Jurisdiction"
},
"bill_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Bill Id"
},
"limit": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Limit"
}
},
"title": "get_upcoming_hearingsArguments"
}⚪trace_legislative_history(bill_id)
Full chronological legislative history for a bill: merged timeline of actions, version publications, and votes, plus related-bill links.
입력 스키마
{
"type": "object",
"properties": {
"bill_id": {
"title": "Bill Id",
"type": "string"
}
},
"required": [
"bill_id"
],
"title": "trace_legislative_historyArguments"
}🟡build_legislative_evidence_packet(bill_id, include_full_text, question)
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.
입력 스키마
{
"type": "object",
"properties": {
"bill_id": {
"title": "Bill Id",
"type": "string"
},
"include_full_text": {
"default": false,
"title": "Include Full Text",
"type": "boolean"
},
"question": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Question"
}
},
"required": [
"bill_id"
],
"title": "build_legislative_evidence_packetArguments"
}🟢get_jurisdiction_coverage(state)
Return the jurisdiction_coverage state-machine status for one state (abbreviation or name), or the full 51-jurisdiction coverage matrix if state is omitted.
입력 스키마
{
"type": "object",
"properties": {
"state": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "State"
}
},
"title": "get_jurisdiction_coverageArguments"
}🟢get_active_sessions(jurisdiction)
List legislative sessions currently flagged active, optionally filtered by jurisdiction (two-letter state code or name).
입력 스키마
{
"type": "object",
"properties": {
"jurisdiction": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Jurisdiction"
}
},
"title": "get_active_sessionsArguments"
}🟢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.
입력 스키마
{
"type": "object",
"properties": {},
"title": "list_topicsArguments"
}권장 프롬프트
search_legislationsearch_legislationget_bill_recordget_bill_recordlist_topics커뮤니티
증거