Openstates MCP Server
Search bills, legislators, committees, and events across all 50 US states, DC, and 5 US territories.
Connect it
Settings → Connectors → Add custom connector
URL: https://openstates.caseyjhand.com/mcpSettings → Apps & Connectors → Advanced → Developer mode
Create connector with URL: https://openstates.caseyjhand.com/mcp{
"mcpServers": {
"openstates-mcp-server": {
"url": "https://openstates.caseyjhand.com/mcp"
}
}
}claude mcp add --transport http openstates-mcp-server https://openstates.caseyjhand.com/mcp{
"servers": {
"openstates-mcp-server": {
"type": "http",
"url": "https://openstates.caseyjhand.com/mcp"
}
}
}{
"mcpServers": {
"openstates-mcp-server": {
"command": "npx",
"args": [
"-y",
"@cyanheads/openstates-mcp-server@0.3.3"
],
"env": {
"OPENSTATES_API_KEY": "<value>"
}
}
}
}claude mcp add openstates-mcp-server -- npx -y @cyanheads/openstates-mcp-server@0.3.310 tools, verified live
openstates_search_billsread-onlySearch state legislative bills across all covered US jurisdictions. Supports full-text search, jurisdiction/session filtering, subject tags, sponsor lookups, and sort order. Either jurisdiction or q (full-text) is required, and pairing them is the reliable form â a q-only search spans all 56 jurisdictions and exceeds the upstream timeout for a common term, though a distinctive one still returns
openstates_get_billread-onlyFetch full detail for a specific state bill. Accepts either the three-part path (jurisdiction + session + bill_id) or a direct OCD bill ID (openstates_id from search results). Use include to request votes, actions, sponsorships, documents, and versions in one call rather than searching again. include=votes returns the full vote tally and per-legislator positions. include=actions returns the comple
openstates_search_peopleread-onlySearch state legislators and officials by name, jurisdiction, chamber, or district, or fetch specific people by OCD person ID. Party is reported on every result but cannot be filtered on â narrow by party after the call. Either jurisdiction or id is required â a search spanning all 56 jurisdictions exceeds the upstream timeout, including a name-only one, so scope every call to a single state o
openstates_get_legislators_by_locationread-onlyFind every legislator representing a geographic coordinate â both tiers. Pass latitude and longitude to get the state senators and representatives for that location (and potentially governor/executive officials), plus the coordinate's two US Senators and its US Representative. jurisdiction.classification separates the tiers: "state" is a state legislature, "country" is the US Congress. current_r
openstates_search_committeesread-onlyList committees for a jurisdiction. jurisdiction is required â a request spanning all 56 jurisdictions exceeds the upstream timeout, so scope every call to a single state; use openstates_list_jurisdictions to pick one. Experimental â Open States is actively working to restore committee support and not all states have data. Use chamber to scope to upper (senate) or lower (house) committees. Use
openstates_get_committeeread-onlyFetch committee detail by OCD organization ID. Returns name, classification, and membership roster when include=memberships is requested. Experimental â not all states have committee data in Open States. Obtain the committee_id from openstates_search_committees.
openstates_search_eventsread-onlySearch hearings, floor sessions, and committee meetings. jurisdiction is required â the Open States events endpoint has no all-states search, so scope every call to a single state; use openstates_list_jurisdictions to pick one. Experimental â most states do not publish event data to Open States. Use after and before to scope to a date range. Set require_bills=true to filter to events with bill
openstates_get_eventread-onlyFetch full event detail by OCD event ID. Returns agenda, participants, media links, and associated documents when requested via include. Experimental â event coverage is limited in Open States. Obtain the event_id from openstates_search_events.
openstates_list_jurisdictionsread-onlyList all jurisdictions covered by Open States â all 50 states, DC, and 5 US territories (American Samoa, Guam, Northern Mariana Islands, Puerto Rico, and the US Virgin Islands): 56 in total, returned complete in a single default call. Returns coverage metadata: latest bill update time, latest people update time, and optionally all legislative sessions with their identifiers. Use this when you ne
openstates_get_jurisdictionread-onlyFetch full metadata for a specific jurisdiction including all legislative sessions, their identifiers, and coverage dates. Use when you need to know the exact session identifier for a state before filtering bill searches â session formats vary widely (e.g., "2025", "2025rs", "2025s1"). Jurisdiction IDs follow OCD format: ocd-jurisdiction/country:us/state:{abbr}/government (e.g., ocd-jurisdiction
Alternatives in Search & Research
Compare →ODOrchestKit Docs MCPA
Read-only MCP server for the OrchestKit docs: full-text search + Markdown fetch. No auth.
SSSEO SkillA
Free Google Search Console MCP: your real GSC, Google Analytics and keyword data for AI agents.
GitHitsA
Search public open-source code, documentation, metadata, vulnerabilities, changelogs, and examples.
CMClinicaltrialsgov MCP ServerA
Search ClinicalTrials.gov: find studies, retrieve results, match patients to candidate trials.
ESG Hub MCP ServerA
ESG knowledge base for AI agents: hybrid search, glossary, frameworks, industries, graph traversal.
pmndrs docsA
Search and read the docs and examples of react-three-fiber, drei, zustand, jotai... from your agent