The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Congressgov MCP Server listing page.
Access U.S. congressional data - bills, votes, members, committees - through MCP. STDIO & Streamable HTTP.
Public Hosted Server: https://congressgov.caseyjhand.com/mcp
Eleven read-only tools for querying U.S. legislative data:
| Tool | Description |
|---|---|
congressgov_bill_lookup | Browse and retrieve U.S. legislative bill data — actions, sponsors, summaries, text, related bills |
congressgov_enacted_laws | Browse enacted public and private laws by congress |
congressgov_member_lookup | Discover congressional members by state/district/congress, retrieve legislative portfolios |
congressgov_committee_lookup | Browse congressional committees and their legislation, reports, and nominations |
congressgov_roll_votes | Retrieve House and Senate roll call votes and individual member voting positions |
congressgov_senate_nominations | Browse presidential nominations to federal positions and track the Senate confirmation process |
congressgov_bill_summaries | Browse recent CRS bill summaries — the "what's happening" feed |
congressgov_crs_reports | Browse and retrieve nonpartisan CRS policy analysis reports |
congressgov_committee_reports | Browse and retrieve committee reports accompanying legislation |
congressgov_daily_record | Browse the daily Congressional Record — floor speeches, debates, and proceedings |
congressgov_search_bills | Keyword-search bill titles and CRS summaries via a local full-text mirror (opt-in, off by default) |
congressgov_bill_lookupBrowse and retrieve U.S. legislative bill data from Congress.gov.
content reads a text version's actual document text, a bounded character window at a time — pick the version with textVersionIndex, the window with characterOffset/characterLimit, and follow nextOffset to walk a full billlist defaults to order='recent' (newest update-date first); pass order='oldest' for ascendingcongressgov_member_lookupDiscover congressional members and their legislative activity.
congressgov_committee_lookupBrowse congressional committees and their legislation, reports, and nominations.
committeeCode — chamber is auto-detected from the codeorder='recent' (newest-first); pass order='oldest' for ascending update-date ordercongressgov_roll_votesRetrieve House and Senate roll call votes and individual member voting positions.
chamber to house (default, from the Congress.gov API) or senate (from the Senate's official LIS feed — the API exposes no Senate votes)list browses votes by congress and session, newest first; pass order='oldest' for ascendingget returns the question, result, tallies, party breakdown, and associated bill/nomination/amendmentmembers returns each member's recorded positioncongressgov_bill_summariesBrowse recent CRS bill summaries.
congressgov_crs_reportsBrowse and retrieve CRS reports — nonpartisan policy analyses written by subject-matter experts at the Library of Congress.
congressgov_daily_recordBrowse the daily Congressional Record — floor speeches, debates, and legislative text published each day Congress is in session.
content reads one article's actual text, selected by articleIndex and bounded by characterOffset/characterLimitcongressgov_search_billsKeyword-search bill titles and CRS summaries against a local full-text mirror — the discovery path the Congress.gov API itself lacks.
CONGRESS_MIRROR_ENABLED=true. With the flag set but the index not yet built (bun run mirror:init), the tool is callable and answers with an empty result and a build-the-index noticecongress, billType, and originChamber filterscongressgov_bill_lookup call| URI Pattern | Description |
|---|---|
congress://current | Current congress number, session dates, chamber info |
congress://bill-types | Reference table of valid bill type codes |
congress://member/{bioguideId} | Member profile by bioguide ID |
congress://bill/{congress}/{billType}/{billNumber} | Bill detail by congress, type, and number |
congress://committee/{committeeCode} | Committee detail by committee code |
| Prompt | Description |
|---|---|
congressgov_bill_analysis | Structured framework for analyzing a bill |
congressgov_legislative_research | Research framework for a policy area across Congress |
Built on @cyanheads/mcp-ts-core:
none, jwt, oauth)in-memory, filesystem, SupabaseCongress.gov-specific:
DEMO_KEY (30 req/hr); own key gets 5,000 req/hrA public instance is available at https://congressgov.caseyjhand.com/mcp — no installation required. Point any MCP client at it via Streamable HTTP:
Add the following to your MCP client configuration file.
Or with npx (no Bun required):
Get a free API key at api.data.gov/signup for 5,000 req/hr. Without a key the server falls back to DEMO_KEY (30 req/hr).
All configuration is validated at startup via Zod schemas in src/config/server-config.ts. Key environment variables:
| Variable | Description | Default |
|---|---|---|
CONGRESS_API_KEY | Optional. API key from api.data.gov. Omit to use DEMO_KEY (30 req/hr); own key: 5,000 req/hr. | DEMO_KEY |
CONGRESS_API_BASE_URL | Congress.gov API base URL | https://api.congress.gov/v3 |
MCP_TRANSPORT_TYPE | Transport: stdio or http | stdio |
MCP_HTTP_PORT | HTTP server port | 3010 |
MCP_AUTH_MODE | Authentication: none, jwt, or oauth | none |
MCP_SESSION_MODE | HTTP session mode: auto, stateful, or stateless. This server holds no per-session state; the Docker image runs stateless. | auto (resolves to stateful) |
MCP_LOG_LEVEL | Log level (debug, info, warning, error, etc.) | info |
LOGS_DIR | Directory for log files (Node.js only). | <project-root>/logs |
STORAGE_PROVIDER_TYPE | Storage backend | in-memory |
OTEL_ENABLED | Enable OpenTelemetry instrumentation (spans, metrics, completion logs) | false |
Build and run the production version:
Run checks and tests:
| Directory | Purpose |
|---|---|
src/mcp-server/tools/definitions/ | Tool definitions (*.tool.ts). Eleven Congress.gov tools. |
src/mcp-server/resources/definitions/ | Resource definitions. Congress, bill, member, and committee resources. |
src/mcp-server/prompts/definitions/ | Prompt definitions. Bill analysis and legislative research prompts. |
src/services/congress-api/ | Congress.gov API client — auth, pagination, rate limiting. |
src/config/ | Server-specific environment variable parsing and validation with Zod. |
tests/ | Unit and integration tests, mirroring the src/ structure. |
See CLAUDE.md for development guidelines and architectural rules. The short version:
try/catch in tool logicctx.log for logging, ctx.state for storagereadOnlyHint: true and idempotentHint: trueIssues and pull requests are welcome. Run checks and tests before submitting:
This project is licensed under the Apache 2.0 License. See the LICENSE file for details.