Context7
Up-to-date docs for AI agents
제작자가 쓴 설명(영어 원문)
Search bills, legislators, committees, and events across all 50 US states, DC, and 5 US territories.
이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.
이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.
쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.
OPENSTATES_API_KEY, OPENSTATES_DAILY_REQUEST_BUDGET, OPENSTATES_REQUEST_TIMEOUT_MS, OPENSTATES_TOTAL_REQUEST_BUDGET_MS, MCP_LOG_LEVEL필요한 것
어떤 앱을 쓰세요?
위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.
웹, 데스크톱, 모바일의 Claude에서 쓸 수 있어요:
https://openstates.caseyjhand.com/mcpClaude Desktop → Settings → Developer → Edit Config를 열고 claude_desktop_config.json에 이 내용을 붙여 넣으세요
{
"mcpServers": {
"openstates": {
"command": "npx",
"args": [
"-y",
"@cyanheads/openstates-mcp-server"
],
"env": {
"OPENSTATES_API_KEY": "your-value",
"OPENSTATES_DAILY_REQUEST_BUDGET": "your-value",
"OPENSTATES_REQUEST_TIMEOUT_MS": "your-value",
"OPENSTATES_TOTAL_REQUEST_BUDGET_MS": "your-value",
"MCP_LOG_LEVEL": "your-value"
}
}
}
}터미널에서 이 명령어를 실행하세요
claude mcp add --transport http openstates https://openstates.caseyjhand.com/mcpclaude mcp add openstates --env OPENSTATES_API_KEY=your-value --env OPENSTATES_DAILY_REQUEST_BUDGET=your-value --env OPENSTATES_REQUEST_TIMEOUT_MS=your-value --env OPENSTATES_TOTAL_REQUEST_BUDGET_MS=your-value --env MCP_LOG_LEVEL=your-value -- npx -y @cyanheads/openstates-mcp-server실행하기 전에 빈 값을 채워 주세요.
프로젝트의 .cursor/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요
{
"mcpServers": {
"openstates": {
"url": "https://openstates.caseyjhand.com/mcp"
}
}
}프로젝트의 .cursor/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요
{
"mcpServers": {
"openstates": {
"command": "npx",
"args": [
"-y",
"@cyanheads/openstates-mcp-server"
],
"env": {
"OPENSTATES_API_KEY": "your-value",
"OPENSTATES_DAILY_REQUEST_BUDGET": "your-value",
"OPENSTATES_REQUEST_TIMEOUT_MS": "your-value",
"OPENSTATES_TOTAL_REQUEST_BUDGET_MS": "your-value",
"MCP_LOG_LEVEL": "your-value"
}
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
프로젝트의 .vscode/mcp.json에 붙여 넣으세요
{
"servers": {
"openstates": {
"type": "http",
"url": "https://openstates.caseyjhand.com/mcp"
}
}
}프로젝트의 .vscode/mcp.json에 붙여 넣으세요
{
"servers": {
"openstates": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@cyanheads/openstates-mcp-server"
],
"env": {
"OPENSTATES_API_KEY": "your-value",
"OPENSTATES_DAILY_REQUEST_BUDGET": "your-value",
"OPENSTATES_REQUEST_TIMEOUT_MS": "your-value",
"OPENSTATES_TOTAL_REQUEST_BUDGET_MS": "your-value",
"MCP_LOG_LEVEL": "your-value"
}
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
ChatGPT는 인터넷에 있는 서버에만 연결할 수 있어요:
https://openstates.caseyjhand.com/mcp메뉴 이름은 요금제나 시기에 따라 조금 다를 수 있어요.
선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.
OPENSTATES_DAILY_REQUEST_BUDGET envOPENSTATES_REQUEST_TIMEOUT_MS envOPENSTATES_TOTAL_REQUEST_BUDGET_MS envMCP_LOG_LEVEL env이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.
도구 이름과 설명은 서버가 2026년 11월 7일에 알려 준 그대로예요. 우리가 아니라 제작자가 쓴 글이고, 일반 텍스트로만 보여 드려요.
openstates_search_billsSearch 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
openstates_get_billFetch 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 sea
openstates_search_peopleSearch 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 a
openstates_get_legislators_by_locationFind 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. ju
openstates_search_committeesList 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 com
openstates_get_committeeFetch 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_eventsSearch 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
openstates_get_eventFetch 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_jurisdictionsList 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
openstates_get_jurisdictionFetch 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", "202
누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 7일 점검
레지스트리 이름이 GitHub 계정 cyanheads 기준으로 확인되었고, 이 계정이 저장소를 소유하고 있어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
229ms 만에 응답(HTTP 200)
로그인 필요 없음
도구 설명 10개를 읽었고, AI에게 보내는 숨겨진 지시는 없었어요
레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.
해당하는 기본 점검 3개 중 3개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.
입력해야 할 값: OPENSTATES_API_KEY
둘 다 가능해요. 내 컴퓨터에 설치해도 되고, 클라우드 버전에 연결해도 돼요.
GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(0.4.0)은 10일 전 레지스트리에 올라왔어요.
Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. URL로 연결되기 때문에, 원격 MCP 서버를 지원하는 앱(예: 개발자 모드의 ChatGPT)에서도 쓸 수 있어요.
같은 카테고리에는: Context7, Codebase Memory, Exa
같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.
카드 보는 법:★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i
Up-to-date docs for AI agents
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Connect AI agents to Exa for web search, content fetching, and multi-step research.
제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.
@cyanheads/openstates-mcp-server Search bills, legislators, committees, and events across all 50 US states, DC, and 5 US territories via MCP. STDIO or Streamable HTTP. 10 Tools • 1 Resource • 2 Prompts
Public Hosted Server: https://openstates.caseyjhand.com/mcp
US state legislatures from Open States: all 50 states, DC, and 5 US territories. Search bills, legislators, committees, and events, and find who represents any location.
| Tool | Description |
|---|---|
openstates_search_bills | Search state legislative bills across all covered US jurisdictions with full-text search, jurisdiction/session filtering, subject tags, and sponsor lookups |
openstates_get_bill | Fetch full detail for a specific bill by OCD ID or three-part path (jurisdiction + session + bill_id) |
openstates_search_people | Search state legislators and officials within a jurisdiction by name, chamber, or district, or fetch specific people by OCD person ID |
openstates_get_legislators_by_location | Find every legislator representing a geographic coordinate (latitude/longitude) — state legislators and the federal delegation |
openstates_search_committees | List committees for a jurisdiction (experimental — not all states have coverage) |
openstates_get_committee | Fetch committee detail by OCD organization ID, with optional membership roster |
openstates_search_events | Search hearings, floor sessions, and committee meetings (experimental) |
openstates_get_event | Fetch full event detail including agenda, participants, and media links |
openstates_list_jurisdictions | List all 56 jurisdictions (50 states, DC, and 5 US territories) covered by Open States with session identifiers and coverage metadata |
openstates_get_jurisdiction | Fetch full metadata for a specific jurisdiction including all legislative sessions and their identifiers |
| Resource | Description |
|---|---|
openstates://jurisdiction/{+jurisdiction_id} | Jurisdiction metadata including current sessions, coverage dates, and bill/people update timestamps |
All resource data is also reachable via tools. Use openstates_get_jurisdiction for programmatic jurisdiction lookups; the resource is useful for injecting jurisdiction context as stable reference material.
| Prompt | Description |
|---|---|
openstates_bill_research | Structured framework for analyzing a state bill: summary, sponsors, committee referrals, action timeline, vote record, and related legislation |
openstates_legislator_profile | Research framework for profiling a legislator: sponsored bills, committee assignments, voting record, and contact details |
| Skill | Description |
|---|---|
openstates-guide | Identifier chains and gates for agents calling the tools: session pinning, reading vote events, committee roster scans, hearing searches, and the request budget |
Plugin installs and the .mcpb bundle pick it up from skills/; MCP clients that support the Skills extension receive it from the server.
openstates_search_bills tooljurisdiction or q is required by the schema — a q-only search spans all 56 jurisdictions and exceeds the upstream timeout for a common term, so pairing them is the reliable formsession, chamber (upper/lower), classification, subject tags, sponsor, sponsor_classification, and action_since/updated_since/created_since ISO 8601 date filtersinclude inlines sponsorships, actions, votes, abstracts, versions, documents, and related bills — avoids follow-up openstates_get_bill callssort defaults to updated_desc; sort=latest_action_desc surfaces bills currently moving; pagination up to 20 per page (default 10)openstates_get_bill toolopenstates_id (preferred) or the three-part path jurisdiction + session + bill_id; a call missing both fails with missing_lookup_paramsopenstates_id is ocd-bill/ copied from openstates_search_bills (case and surrounding whitespace are normalized); a / / path is also accepted. Any other value fails locally with invalid_openstates_id, with no upstream callHB 1000, SB 42)include inlines sponsorships, actions, votes, versions, documents, abstracts, other titles/identifiers, and related billsnot_found when a well-formed ID or a three-part path resolves to nothingopenstates_search_people tooljurisdiction or id (OCD person IDs) is required — an unscoped search exceeds the upstream timeout even for a name-only queryid resolves any number of specific OCD person IDs in one call — the IDs that bill sponsorships and committee memberships hand back — and needs no jurisdiction alongside itorg_classification: upper/lower/executive/legislature (every legislator — both chambers, or the single body in Nebraska and DC; executive officials excluded); omitting it returns every officeholder including executivesname match, plus district; include adds offices, links, other_names, other_identifiers, sourcesopenstates_get_legislators_by_location toollatitude/longitude; does not geocode addressesjurisdiction.classification (state vs country) is the tier discriminator — current_role.org_classification is not, since it's upper/lower for a US Senator exactly as for a state senatorstateCount/federalCount enrichment fields report the tier splitinvalid_coordinate; a location with no coverage returns an empty-result noticeopenstates_search_committees tooljurisdiction is required — the schema rejects an all-states requestclassification (committee/subcommittee) and chamber (a chamber filter omits joint committees); parent scopes to one committee's subcommitteesinclude=memberships returns the full roster with member rolescoverageNote field always documents thisopenstates_get_committee toolcommittee_id (from openstates_search_committees)include=memberships returns the roster; include=links/sources add reference URLsnot_found when the ID doesn't existopenstates_search_events tooljurisdiction is required — the events endpoint has no all-states searchafter/before scope to an ISO 8601 date range; require_bills=true filters to events with a bill on the agendainclude=agenda,participants returns full meeting contextrequire_bills, after, before) names those filters in its noticeopenstates_get_event toolevent_id (from openstates_search_events)include adds agenda, participants, links, media, and documentsnot_found when the ID doesn't existopenstates_list_jurisdictions toolper_page ceiling of 52 no longer covers the full setclassification filter defaults to stateinclude=legislative_sessions returns every historical and current session identifier — required before filtering bill searches by session, since formats vary by state (e.g., 2025, 2025-2026, 2025rs, 2025s1)include=organizations/latest_runs add chamber/executive-body and scraper-run metadataopenstates_get_jurisdiction toolinclude=legislative_sessions returns all session identifiers with date rangesnot_found when the identifier doesn't resolveopenstates://jurisdiction/{+jurisdiction_id} resourcejurisdiction_id accepts the raw OCD ID (slashes intact) as openstates_list_jurisdictions returns it, a state name (multi-word allowed), or a two-letter abbreviation; percent-encoded forms are decoded once, and a malformed escape is a validation errorapplication/json: current legislative sessions, coverage dates, bill/people update timestampslegislative_sessions — use to prime session identifiers without a tool callnot_found when the identifier doesn't resolve; rate_limited when the shared key's request cap is reachedopenstates_bill_research promptjurisdiction, session, bill_id — all requiredopenstates_legislator_profile prompt앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요