federal-regulations-mcp-server
Server Details
Search and trace US federal rules across the Federal Register, eCFR, and Regulations.gov.
- Status
- Healthy
- Uptime
- 100.0% over the last 24 hours
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- cyanheads/federal-regulations-mcp-server
- GitHub Stars
- 2
- Server Listing
- federal-regulations-mcp-server
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 7 tools
Each tool has a distinct corpus and action: browse CFR structure/search/versions, read CFR text, search Federal Register documents, fetch a Federal Register document, fetch a Regulations.gov docket/document, fetch comments, or list open-comment documents. The only near-overlap is regulations_get_docket's single-document mode versus regulations_get_document, but the descriptions clearly distinguish Regulations.gov document IDs from Federal Register document numbers.
All tool names use the same regulations_ prefix followed by a snake_case verb_noun pattern, such as browse_cfr, get_cfr_section, find_comments, and search_rules. Acronyms like CFR are used consistently and the verbs remain predictable.
Seven tools is well within the ideal range and each maps to a distinct step in the regulatory research workflow. There are no filler or redundant tools.
The surface covers the core workflow: discover Federal Register documents, inspect dockets, fetch comments, browse CFR structure, and read CFR text, with cross-source IDs chaining tools together. A minor gap is the lack of a standalone Regulations.gov docket search or agency lookup, so some docket discovery depends on Federal Register search handles.
Available Tools
7 toolsregulations_browse_cfrregulations_browse_cfrARead-onlyInspect
Explore the codified Code of Federal Regulations via eCFR in three modes. "structure" lists all 50 titles; with a title, that title's top-level divisions (its chapters, or subtitles); and with a title and part, every section and appendix in the part, flattened and paged, each naming the subpart and subject group it sits under — the way to enumerate a part's sections without reading its text. "search" runs a full-text query across the codified CFR and returns matching sections with their hierarchy path and a snippet, one result per section, paged. "versions" lists the dates a part's or one section's text changed, oldest first per section, paged, with the latest amendment date; with changed_since, what changed across a title. Every mode accepts title and part to narrow the scope, and all three feed regulations_get_cfr_section — a version row's date reads that version. Every search result reports which corpus answered it — the synced local mirror or the live eCFR index — and what that corpus covers, in source and sourceScope.
Inputs: mode (required), date, page, part, +5 more. Returns: date, mode, page, error, +11 more
regulations_find_commentsregulations_find_commentsARead-onlyInspect
Fetch public comments on a Federal Register document or a Regulations.gov docket — the unique corpus of what citizens and organizations actually submitted. Provide exactly one targeting parameter: docket_id (all comments in a docket, broadest), document_object_id (comments on one document, by its object ID or document ID), fr_document_number (convenience — resolves the FR number to the Regulations.gov document carrying it), or comment_id (one comment's full detail and attachments). A list narrows by comment text with search_term (each hit then carries the matching passages) and by posted date with posted_after/posted_before. The list endpoint returns no body text or attachment info — call with comment_id to read a comment's body. When a comment's real content is a PDF/DOCX attachment, the body is a stub and attachmentOnly is true; the attachment download URLs are returned. Requires REGULATIONS_GOV_API_KEY (free at https://api.data.gov/signup/).
Inputs: page, per_page, docket_id, comment_id, +5 more. Returns: cap, mode, error, shown, +22 more
regulations_get_cfr_sectionregulations_get_cfr_sectionARead-onlyIdempotentInspect
Read the codified text at a CFR location via eCFR — current or as of a past date. Answers "what does 40 CFR 50.1 say today?" and "...as of 2019-01-01?". Three locations: title + part + section for one section; title + part alone for the whole part, with its Authority and Source notes, an index of its sections, and the names of its appendices; title + appendix for one appendix, passing the identifier exactly as regulations_browse_cfr emits it. A section can be written as people cite it — "61", "§ 141.61", "141.61(c)", or the full cite "40 CFR 141.61" in part 141 all read 40 CFR 141.61 — and a part as "Part 141"; the response names the identifier it read. Text comes back as a window of up to 64,000 characters (max_chars raises it to 200,000) with the total length and, when text remains, the offset to resume from; whole parts run to millions of characters, so page with offset or read a single section. eCFR retains historical versions from 2017 through the title's up-to-date date; a date outside that window is rejected with the window named. Current single-section reads are served from a synced local mirror when it holds the title's latest eCFR issue; the source is reported.
Inputs: title (required), date, part, offset, +3 more. Returns: date, part, error, notes, +16 more
regulations_get_docketregulations_get_docketARead-onlyIdempotentInspect
Pull a rulemaking docket from Regulations.gov by docket ID (e.g. "EPA-HQ-OAR-2025-0194") — the docket's metadata (title, agency, RIN, abstract) and the documents filed in it (NPRM, final rule, supporting materials) — or read one document by document_id for its file download URLs and attachments, which a docket listing does not carry. Provide exactly one of docket_id / document_id. The docket is the folder holding a rule's whole paper trail; each returned document's objectId feeds regulations_find_comments. A docket often contains hundreds of supporting materials — find one with search_term, or filter document_types to "Proposed Rule"/"Rule" for the rule documents themselves. Requires REGULATIONS_GOV_API_KEY (free at https://api.data.gov/signup/); the Federal Register and eCFR tools work without it.
Inputs: page, per_page, docket_id, document_id, +2 more. Returns: cap, rin, mode, error, +15 more
regulations_get_documentregulations_get_documentARead-onlyIdempotentInspect
Fetch one Federal Register document by its FR document number — full metadata (title, type, agencies, abstract, action, effective/comment dates, RINs, EO 12866 significance, and for a presidential document its subtype, number, signing date, and president) plus the cross-source handles that make this a workflow server. The output carries the Regulations.gov docket ID (chain into regulations_get_docket or regulations_find_comments), the docket numbers the Federal Register prints (chain back into regulations_search_rules as docket_id), the comment count and comment URL, and the affected CFR parts (chain into regulations_get_cfr_section). Set include_full_text only when the rule body itself is needed: it returns the plain-text body as a window of up to 64,000 characters (max_chars raises it to 200,000), with the body's total length and, when text remains, the offset to resume from. Short documents return whole; major final rules run past a million characters, so page through with offset rather than reading them in one call.
Inputs: document_number (required), offset, max_chars, include_full_text. Returns: type, dates, error, title, +29 more
regulations_list_open_commentsregulations_list_open_commentsARead-onlyInspect
List Federal Register documents currently open for public comment, sorted by closing date (soonest first) across the whole open window, filterable by document type, agency slug, and topic. "What can I still weigh in on?" Covers proposed rules and the final rules that take comment (direct final and interim final rules) by default; add NOTICE for the much larger set of notices with comment periods. Runs on the Federal Register's open-comment window and needs no key: each row carries its Regulations.gov docket and document IDs, comment count, and comment URL from the Federal Register document's embedded Regulations.gov info. Open one row with regulations_get_document for the full document, or pull the comments with regulations_find_comments (which, like regulations_get_docket, needs REGULATIONS_GOV_API_KEY).
Inputs: page, type, query, agencies, +2 more. Returns: cap, asOf, error, keyed, +7 more
regulations_search_rulesregulations_search_rulesARead-onlyInspect
Search the Federal Register — the daily journal of US proposed rules, final rules, notices, and presidential documents (1994–present) — filtering by full-text query, document type, agency slug, publication date range, affected CFR title and part, printed docket number, RIN, EO 12866 significance, effective date range, and for presidential documents the executive order number, subtype, president, and signing date range, all combined. A page cite from a CFR source note ("89 FR 49102", with its date) resolves to the documents printed on that page. The primary discovery entry point: results carry the document number (open with regulations_get_document), its citation and page range, each issuing agency with its filterable slug, printed docket numbers, Regulations.gov docket and document IDs, comment count and comment URL, whether the comment period is open, RINs, significance, presidential-document identifiers, and affected CFR parts that chain into the comment and codified-text tools. A query ranks by relevance unless order says otherwise; filter-only browsing lists newest first. The Federal Register caps navigation at 50 pages and the match count at 10,000; when a result set is larger, narrow with published_after/published_before rather than paging deeper.
Inputs: rin, page, type, order, +18 more. Returns: cap, error, shown, notice, +5 more
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
Related MCP Connectors
Read a CFR or eCFR section, or search US federal regulations and the Federal Register.
Search and read US federal regulations with legal and inline citations linking to ecfr.io.
Federal regulatory intelligence from the Federal Register: search rules and notices, track deadlines
Source-linked US federal regulations: CFR provision history, obligations, rules, comments.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables querying the US Federal Register API for federal register documents and data through natural language.102 npmMIT
- AlicenseAqualityBmaintenanceEnables AI agents to search and track US federal regulations, documents, and executive orders from the Federal Register, with no API keys required.5MIT
- AlicenseNot gradedqualityBmaintenanceEnables searching and retrieving U.S. Federal Register documents — final and proposed rules, notices, executive orders, and public inspection filings — plus facet counts, agency listings, open comment deadlines, and FAR/DFARS case histories, through eight tools backed by the keyless public API v1.309 npmMIT
- AlicenseNot gradedqualityCmaintenanceEnables searching, browsing, and retrieving current US Code of Federal Regulations text—including full-text search across all 50 titles, title structures, and exact section or part wording—via the official eCFR API.142 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.