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 | sh -
Get 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_mcp -
Install dependencies:
uv sync -
Create a
.envfile from the template:cp .env.template .env -
Add 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
- [x] api.congress.gov
- [x] /bill
- [x] /{congress}
- [x] /{congress}/{billType}
- [x] /{congress}/{billType}/{billNumber}
- [ ] /actions
- [ ] /amendments
- [ ] /committees
- [ ] /cosponsors
- [ ] /relatedbills
- [ ] /subjects
- [ ] /summaries
- [ ] /text
- [ ] /titles
- [x] /amendment
- [x] /{congress}
- [x] /{congress}/{amendmentType}
- [x] /{congress}/{amendmentType}/{amendmentNumber}
- [ ] /actions
- [ ] /cosponsors
- [ ] /amendments
- [ ] /text
- [x] /summaries
- [x] /{congress}
- [x] /{congress}/{billType}
- [x] /congress
- [x] /{congress}
- [ ] /current
- [x] /member
- [x] /{bioguideId}
- [ ] /sponsored-legislation
- [ ] /cosponsored-legislation
- [x] /{bioguideId}
- [x] /committee
- [x] /{systemCode}
- [ ] /bills
- [ ] /reports
- [ ] /nominations
- [ ] /meetings
- [ ] /hearings
- [ ] /house-communication
- [ ] /senate-communication
- [x] /{systemCode}
- [x] /committee-report
- [x] /{congress}
- [x] /{congress}/{reportType}
- [x] /{congress}/{reportType}/{reportNumber}
- [ ] /text
- [x] /committee-print
- [x] /{congress}
- [x] /{congress}/{printType}
- [x] /{congress}/{printType}/{printNumber}
- [ ] /text
- [x] /committee-meeting
- [x] /{congress}
- [x] /{congress}/{chamber}
- [ ] /meetings
- [x] /hearing
- [x] /{congress}
- [x] /{congress}/{chamber}
- [x] /{congress}/{chamber}/{hearingNumber}
- [x] /house-vote
- [x] /{congress}
- [x] /{congress}/{session}
- [x] /{congress}/{session}/{rollCallNumber}
- [x] /congressional-record
- [x] /{volume}
- [x] /{volume}/{pagePrefix}
- [x] /{volume}/{pagePrefix}/{pageNumber}
- [x] /daily-congressional-record
- [x] /{volume}
- [x] /{volume}/{issue}
- [x] /bound-congressional-record
- [x] /{year}
- [x] /{year}/{month}
- [x] /{year}/{month}/{day}
- [x] /house-communication
- [x] /{congress}
- [x] /{congress}/{communicationType}
- [x] /{congress}/{communicationType}/{communicationNumber}
- [x] /house-requirement
- [x] /{congress}
- [x] /{congress}/{requirementNumber}
- [x] /senate-communication
- [x] /{congress}
- [x] /{congress}/{communicationType}
- [x] /{congress}/{communicationType}/{communicationNumber}
- [x] /nomination
- [x] /{congress}
- [x] /{congress}/{nominationNumber}
- [ ] /actions
- [ ] /hearings
- [x] /crsreport
- [x] /{productCode}
- [x] /treaty
- [x] /{congress}
- [x] /{congress}/{treatyNumber}
- [ ] /actions
- [ ] /committees
- [x] /bill
Recommend MCP Servers 💡
rakeshgangwar/freshrss-mcp-server
A Model Context Protocol server that enables AI assistants to interact with FreshRSS feeds, allowing them to list, browse, fetch, and manage RSS feed items.
eluc1a/mcp-news
An MCP server that exposes news articles from a PostgreSQL database and provides a tool for retrieving articles for summarization
tandoor-mcp-server
An MCP server that enables interaction with Tandoor Recipe Manager for managing recipes, meal plans, and shopping lists.
oatpp-mcp
An implementation of Anthropic’s Model Context Protocol for the Oat++ C++ web framework, enabling automatic tool generation from API controllers for LLM interaction.
mcp-aoai-web-browsing
A minimal Model Context Protocol 🖥️ server/client🧑💻with OpenAI and 🌐 web browser control via Playwright.
medadapt-content-server
A specialized Model Context Protocol (MCP) server for Claude Desktop that enhances AI-assisted medical learning by fetching and processing educational resources from PubMed, NCBI Bookshelf, and user-provided documents.