regulationsgov-mcp
Free, open-source MCP server for the Regulations.gov API. Federal rulemaking dockets, proposed rules, final rules, public comments, and comment period tracking.
Optional free API key for higher rate limits. Use the installation and configuration instructions below to connect this MCP directly.
Tested and hardened through five rounds of integration testing against the live Regulations.gov API, including a round-7 independent re-audit with live verification. 197 regression tests covering 1 P0 catastrophic bug, 10 P1 silent-wrong-data bugs (including agency_id="" returning all 1,951,938 records), 7 P2 validation gaps, and 12 round-7 findings fixed. See testing.md for the full testing record.
Available in Claude and ChatGPT
| MCP | Claude | ChatGPT |
|---|---|---|
| Regulations.gov | Coming soon | Coming soon |
A hosted edition is coming soon to the Claude and ChatGPT directories. It will need no API key and no local setup. Locally, a free personal key is recommended; a shared fallback works at low volume. Until the listings are live, use the installation and configuration instructions below, then try a matching prompt.
What it does
Exposes the Regulations.gov API plus a credential-readiness check as 9 MCP tools:
Core
search_documents- Search proposed rules, final rules, notices with flexible filtersget_document_detail- Full document details with optional attachmentssearch_comments- Search public comments (by docket, document, or keyword)get_comment_detail- Full comment text and submitter infosearch_dockets- Search rulemaking and nonrulemaking docketsget_docket_detail- Docket metadata, abstract, and RIN
Workflow
open_comment_periods- Currently open comment periods across procurement agenciesfar_case_history- Full lifecycle of a FAR/DFARS rulemaking case
Get your own API key (strongly recommended)
This server hits api.regulations.gov, which uses api.data.gov for rate
limiting.
- Without a key: falls back to the shared
DEMO_KEYwhich is capped at ~10 requests per hour (live-measured) across everyone using it, so you'll hit 429 errors within a couple of prompts. - With a personal key: 1,000 requests per hour, yours alone.
Get a free key (takes 30 seconds):
- Go to open.gsa.gov/api/regulationsgov/#getting-started (or directly at api.data.gov/signup)
- Enter your name and email: no approval, no wait
- Copy the key from the confirmation page
- Paste it into your client config as
REGULATIONS_GOV_API_KEY(see below)
The same api.data.gov key works for every api.data.gov-backed API (Regulations.gov, GSA Per Diem, NASA, FEC, FCC, etc.), so if you already have one for another 1102tools MCP you can reuse it.
Installation
uvx regulationsgov-mcp
Configuration
Use the configuration below as the server definition and adapt its placement to your compatible MCP client. For practical requests using this source, see the prompt library.
Recommended (with your own key):
{
"mcpServers": {
"regulationsgov": {
"command": "uvx",
"args": ["--refresh-package", "regulationsgov-mcp", "--from", "regulationsgov-mcp", "regulationsgov-mcp"],
"env": {
"REGULATIONS_GOV_API_KEY": "paste-your-api-data-gov-key-here"
}
}
}
}
Without a key (works for a handful of calls per hour, then 429s until the hour rolls over):
{
"mcpServers": {
"regulationsgov": {
"command": "uvx",
"args": ["--refresh-package", "regulationsgov-mcp", "--from", "regulationsgov-mcp", "regulationsgov-mcp"]
}
}
}
The --refresh-package flag tells uv to check PyPI for a newer release each time your client launches the server, so fixes arrive automatically; without it, uv keeps serving whatever version it first cached. It adds a moment of network time at startup, so raise your platform's MCP startup timeout if it enforces a short one.
Restart the client and the tools appear.
Example prompts
- "What FAR cases have open comment periods right now?"
- "Show me the full docket history for FAR-2023-0008."
- "Find all proposed rules from DARS posted in the last 6 months."
- "How many public comments were submitted on FAR Case 2023-008?"
- "Search for rulemaking dockets related to cybersecurity at DoD."
- "Find all SBA rules about size standards from the last year."
Important: case-sensitive filter values
Regulations.gov filter values are CASE-SENSITIVE. Use exact casing:
- Document types:
Proposed Rule,Rule,Notice(not lowercase) - Docket types:
Rulemaking,Nonrulemaking - Lowercase values silently return 0 results with no error
Companion tools
federal-register-mcp: what was published in the Federal Registerregulationsgov-mcp: the docket structure, public comments, and comment period statusecfr-mcp: what the regulation currently says after amendments
Together these three cover the full regulatory pipeline from proposal through public comment to codified rule.
Request pacing
| Default setting | Value |
|---|---|
| Wait after each upstream request completes | 4 seconds |
| Maximum upstream requests in flight per pacing identity | 1 |
| Rolling attempt counter in this pacer | None; provider quotas still apply |
The next request starts after the previous request's duration plus 4 seconds. This is a completion delay, not a 4-second start interval. Local processes sharing the same pacing directory and identity share this gate; a separate local counter does not create additional provider quota.
See the complete pacing reference for all nine servers, shared credentials/IPs, configuration and hosting differences.
Every request and pagination subrequest uses a provisional 4-second
cross-process anti-burst interval by default. Regulations.gov and Per Diem
share a local api.data.gov bucket when they use the same key. This does not
increase provider quota or coordinate the key on another computer. Override
with FEDERAL_API_MIN_INTERVAL_SECONDS, use 0 to deliberately disable it,
and use FEDERAL_API_PACING_DIR to relocate local pacing state.
License
MIT
Release files for regulationsgov-mcp 1.0.10
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| regulationsgov_mcp-1.0.10.tar.gz | 125.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| regulationsgov_mcp-1.0.10-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 150.0 kB
Release files / regulationsgov_mcp-1.0.10.tar.gz
| Download URL | regulationsgov_mcp-1.0.10.tar.gz |
|---|---|
| Size | 125.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
34aeba380295886f46e2453351031aa39ddc0134bbc65c3bf8ca0b2c086e610e
|
|
BLAKE2b-256 checksum How to use checksums |
c78e1a1b515969a43d677972fa0ccf562d4e22a90a8956b1cc9dbabf023e9d9d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.
Transparency logRelease files / regulationsgov_mcp-1.0.10-py3-none-any.whl
| Download URL | regulationsgov_mcp-1.0.10-py3-none-any.whl |
|---|---|
| Size | 24.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
299ed1f57f3006c62f2aeaf43f87e1fe70d00257b749599b1aa615eb0cc8bf6f
|
|
BLAKE2b-256 checksum How to use checksums |
8c7d3aae61381c2b50e6dd9344495bdb18b40de9705b3bf46d0242375ecec0af
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.
Transparency log