us-legal-mcp
An MCP server that provides comprehensive US legislation.
README
🇺🇸 US Legal MCP Server
A comprehensive Model Context Protocol (MCP) server for US legal data, providing access to Congress bills, Federal Register documents, court opinions, and committee data.
✨ Features
📜 Congress.gov Integration
- Search bills and resolutions
- Get recent legislation
- Get committee information
- Real-time legislative data
📋 Federal Register Integration
- Search regulations and executive orders
- Get recent agency documents
- Full document text and metadata
⚖️ CourtListener Integration
- Search court opinions (federal and state courts)
- Get recent court decisions
- Access Supreme Court, appellate, and state court data
- Full case text and metadata
🗳️ Congress Committees
- Get committee information
- Filter by chamber (House/Senate)
- Legislative activity tracking
🚀 Quick Start
Installation
npm install
npm run build
Environment Variables (Optional)
# For enhanced Congress.gov access (free tier available)
export CONGRESS_API_KEY="your_congress_api_key"
# For CourtListener API access (free tier available)
export COURT_LISTENER_API_KEY="your_court_listener_api_key"
Running the Server
npm start
MCP Configuration (Cursor/Claude)
To use this MCP server with Cursor or Claude Desktop, add the following configuration:
For Cursor
Create or edit ~/.cursor/mcp.json (or your Cursor MCP config location):
{
"mcpServers": {
"us-legal-mcp": {
"command": "node",
"args": ["/absolute/path/to/legal-mcp/dist/index.js"],
"env": {
"CONGRESS_API_KEY": "",
"COURT_LISTENER_API_KEY": "258021eb4dd1901f1acfdb3f521fb8a7837a9097"
}
}
}
}
Important: Replace /absolute/path/to/legal-mcp with your actual project path.
For Claude Desktop
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):
{
"mcpServers": {
"us-legal-mcp": {
"command": "node",
"args": ["/absolute/path/to/legal-mcp/dist/index.js"],
"env": {
"CONGRESS_API_KEY": "",
"COURT_LISTENER_API_KEY": "258021eb4dd1901f1acfdb3f521fb8a7837a9097"
}
}
}
}
See mcp-config-example.json in this repository for a reference configuration.
🛠️ Available Tools
search-congress-bills
Search for bills and resolutions in Congress.gov
- Query: Search terms (e.g., "immigration", "healthcare")
- Congress: Optional Congress number (100-120)
- Limit: Number of results (1-50)
search-federal-register
Search Federal Register documents (regulations, executive orders)
- Query: Search terms
- Limit: Number of results (1-50)
search-all-legal
Comprehensive search across all working sources (Congress Bills, Federal Register, Court Opinions)
- Query: Search terms
- Limit: Results per source (1-50)
get-recent-bills
Get recently introduced bills
- Congress: Optional Congress number
- Limit: Number of results (1-50)
get-recent-regulations
Get recently published Federal Register documents
- Limit: Number of results (1-50)
search-court-opinions
Search for court opinions and decisions
- Query: Search terms (e.g., "constitutional", "copyright")
- Court: Optional court filter (e.g., "scotus", "ca1", "ca2")
- Limit: Number of results (1-50)
get-recent-court-opinions
Get the most recently published court opinions
- Court: Optional court filter
- Limit: Number of results (1-50)
get-congress-committees
Get list of Congressional committees
- Congress: Optional Congress number (100-120)
- Chamber: Optional filter ("House" or "Senate")
📊 Data Sources
| Source | Description | API | Auth Required | Status |
|---|---|---|---|---|
| Congress.gov | Bills, resolutions, committees | https://api.congress.gov/v3 | Optional | ✅ |
| Federal Register | Regulations, executive orders | https://www.federalregister.gov/api/v1 | No | ✅ |
| CourtListener | Court opinions, decisions | https://www.courtlistener.com/api/ | Optional | ✅ |
Note: US Code and Regulations.gov integrations were removed due to persistent API reliability issues.
🔑 API Keys
Congress.gov API Key (Optional)
- Visit https://api.congress.gov/
- Sign up for a free account
- Get your API key
- Set
CONGRESS_API_KEYenvironment variable
CourtListener API Key (Optional)
- Visit https://www.courtlistener.com/api/
- Create a free account
- Get your API key from your profile
- Set
COURT_LISTENER_API_KEYenvironment variable
Note: A pre-configured API key is included in the example MCP config file for quick setup.
🎯 Example Usage
Search for Immigration Bills
{
"tool": "search-congress-bills",
"arguments": {
"query": "immigration",
"congress": 118,
"limit": 10
}
}
Search Federal Regulations
{
"tool": "search-federal-register",
"arguments": {
"query": "environmental protection",
"limit": 5
}
}
Comprehensive Legal Search
{
"tool": "search-all-legal",
"arguments": {
"query": "healthcare",
"limit": 20
}
}
Search Court Opinions
{
"tool": "search-court-opinions",
"arguments": {
"query": "immigration asylum",
"court": "scotus",
"limit": 10
}
}
Get Congressional Committees
{
"tool": "get-congress-committees",
"arguments": {
"congress": 119,
"chamber": "Senate"
}
}
📝 License
MIT License - see LICENSE file for details.
🤝 Contributing
Contributions welcome! Please read the contributing guidelines and submit pull requests.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.