Query US Congress Data via API
Access US Congress data via API. Query bills, members, committees, and votes.
Why it matters
Access real-time data on US Congress activity, including bills, members, and voting records, directly through an unofficial MCP server for the Congress.gov API.
Outcomes
What it gets done
Retrieve information on US Congress bills and amendments.
Search for details about members and committees.
Access voting records and Congressional Records.
Obtain data on nominations, treaties, and CRS reports.
Install
Add it to your toolbox
Run in your project directory:
curl -fsSL https://spark.entire.vc/get/vb-congress-gov-api | bash Capabilities
Tools your agent gets
Search for bills in the US Congress
Search for amendments in the US Congress
Search for information about Congress members
Search for information about congressional committees
Retrieve committee reports and documents
Get information about committee meetings and hearings
Access House and Senate voting records
Access daily and bound Congressional Records
Overview
Congress.gov API MCP Server
What it does
This is an unofficial MCP server for the Congress.gov API, allowing programmatic access to US Congress data.
How it connects
This server can be used to retrieve information about bills, amendments, summaries, congress details, members, committees, committee reports, committee prints, committee meetings, hearings, votes, the Congressional Record, and nominations from the Congress.gov API.
Source README
Congress.gov MCP server
Ever wonder what our (US) Congress is up to? Tired of reading the news to find out? Ask the US Congress API yourself.
Unofficial MCP server for the Congress.gov API
Installation
Installing via Smithery
To install congress_gov_mcp for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @AshwinSundar/congress_gov_mcp --client claude
Manual Installation
Prerequisites
Install uv. The easiest way on macOS and Linux is:
curl -LsSf https://astral.sh/uv/install.sh | shGet a Congress.gov API key.
Install Claude Desktop, Claude Code, or another client that supports MCP Integrations
Initial Setup
Complete Prerequisites
Clone this repository, and
cdin:git clone http://github.com/AshwinSundar/congress_gov_mcpcd congress_gov_mcpInstall dependencies:
uv syncCreate a
.envfile from the template:cp .env.template .envAdd your Congress.gov API key to the
.envfile:
congress_gov_mcp/.env
CONGRESS_GOV_API_KEY="your-api-key-here"
Client Configuration
Claude Desktop
Complete Prerequisites
Copy the absolute path to your
uvinstallation:
which uv
Add the following to your Claude Desktop configuration file, inside the
mcpServersblock:macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"congress_gov_mcp": {
"command": "/absolute_path/to/uv",
"args": [
"run",
"/absolute_path_to/congress_gov_mcp/server.py"
]
}
}
}
Claude Code
Complete Prerequisites
Add the following to
.mcp.jsonin the directory you are running Claude Code in, inside themcpServersblock:
{
"mcpServers": {
"congress_gov_mcp": {
"command": "uv",
"args": [
"run",
"/absolute_path_to/congress_gov_mcp/server.py"
]
}
}
}
Roadmap
- api.congress.gov
- /bill
- /{congress}
- /{congress}/{billType}
- /{congress}/{billType}/{billNumber}
- /actions
- /amendments
- /committees
- /cosponsors
- /relatedbills
- /subjects
- /summaries
- /text
- /titles
- /amendment
- /{congress}
- /{congress}/{amendmentType}
- /{congress}/{amendmentType}/{amendmentNumber}
- /actions
- /cosponsors
- /amendments
- /text
- /summaries
- /{congress}
- /{congress}/{billType}
- /congress
- /{congress}
- /current
- /member
- /{bioguideId}
- /sponsored-legislation
- /cosponsored-legislation
- /{bioguideId}
- /committee
- /{systemCode}
- /bills
- /reports
- /nominations
- /meetings
- /hearings
- /house-communication
- /senate-communication
- /{systemCode}
- /committee-report
- /{congress}
- /{congress}/{reportType}
- /{congress}/{reportType}/{reportNumber}
- /text
- /committee-print
- /{congress}
- /{congress}/{printType}
- /{congress}/{printType}/{printNumber}
- /text
- /committee-meeting
- /{congress}
- /{congress}/{chamber}
- /meetings
- /hearing
- /{congress}
- /{congress}/{chamber}
- /{congress}/{chamber}/{hearingNumber}
- /house-vote
- /{congress}
- /{congress}/{session}
- /{congress}/{session}/{rollCallNumber}
- /congressional-record
- /{volume}
- /{volume}/{pagePrefix}
- /{volume}/{pagePrefix}/{pageNumber}
- /daily-congressional-record
- /{volume}
- /{volume}/{issue}
- /bound-congressional-record
- /{year}
- /{year}/{month}
- /{year}/{month}/{day}
- /house-communication
- /{congress}
- /{congress}/{communicationType}
- /{congress}/{communicationType}/{communicationNumber}
- /house-requirement
- /{congress}
- /{congress}/{requirementNumber}
- /senate-communication
- /{congress}
- /{congress}/{communicationType}
- /{congress}/{communicationType}/{communicationNumber}
- /nomination
- /{congress}
- /{congress}/{nominationNumber}
- /actions
- /hearings
- /crsreport
- /{productCode}
- /treaty
- /{congress}
- /{congress}/{treatyNumber}
- /actions
- /committees
- /bill
Discussion
Questions & comments · 0
Sign In Sign in to leave a comment.