Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

Federal Register

PYPI · FEDERAL-REGISTER-MCP · 2 COMPONENTS

Federal Register proposed and final rules, notices, executive orders, and FAR cases. 8 tools.

−16 this week 73 Trust /100

Last scanned (8 hours ago)

Scores higher than 70% of PyPI servers

Category Education and Research

Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security50
  • Malware scan not yet available for this package.Unverified
  • No known CVEs affecting this package version or its production dependencies.Pass
  • Runs hatchling.build at install time, a recognised build step with no custom scripting around it. View diagnostics → Pass
  • 1 of 33 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency97
  • Source repository is publicly reachable at the declared URL. View diagnostics → Pass
  • Cryptographically verified build provenance (signed, bound to 1102tools-dev/federal-contracting-mcps). View diagnostics → Pass
  • Clear OSI-approved license (MIT).Pass
  • Actively maintained (last published 8 days ago).Pass
  • Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability57
  • AI-judged instruction clarity (good).Pass
  • Context-footprint check failed: tool/resource definitions use about 2898 tokens (~362/item across 8 items; 8 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management87
  • Stability observed for 26 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage71
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 0% of tool parameters carry a description.Fail
  • Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • We read all 8 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
  • An AI judge read all 8 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a current MCP spec version (2026-07-28).Pass
What we tested

Checks we ran (15)

  • Known CVEs
  • Install scripts
  • Dependency health
  • Source repository
  • Provenance
  • License
  • Maintenance
  • Security disclosure
  • Schema quality
  • Stability
  • Tool coverage
  • Injection markers
  • Destructive annotations
  • Judged manipulation
  • MCP protocol

Checks we could not complete (1)

These are gaps on our side, not findings about this package. We only credit what we can confirm, so a category made up entirely of them scores 0.

  • Malware scan in Supply Chain SecurityMalware scan not yet available for this package.

Does not apply to this package (2)

  • Endpoint SecurityScored on hosted endpoints only. A package has no live endpoint of its own for us to probe.
  • Transport & ReachabilityScored on hosted endpoints only. A package has no live endpoint of its own for us to probe.

The score does not measure everything. What the score does not measure →

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 5 Nov 26 −14
    • Malware scan: pass → unverified ▼ security
  • 4 Nov 26 0
    • Package version: 1.0.17 → 1.0.21 functional
  • 3 Nov 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 77 to 80. That category is still filling its 30-day observation window: 23 days of observed history at the previous scan, 24 at this one. The score rises as the window fills, whether or not the server changes.

  • 2 Nov 26 −3
    • Stability: pass → 0.77 functional
  • 29 Oct 26 +15
    • Malware scan: unverified → pass ▲ security
  • 27 Oct 26 0
    • Stability: 0.97 → pass security
    • Package version: 1.0.19 → 1.0.21 functional
    • Package version: 1.0.19 → 1.0.20 functional
  • 26 Oct 26 0
    • Stability: pass → 0.97 functional
  • 23 Oct 26 0
    • Package version: 1.0.18 → 1.0.19 functional
Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 5 Nov 2026 · Analysed pypi/federal-register-mcp@1.0.21

Provenance Verified

A signed build attestation was found and verified, binding this exact artifact to the source repository it claims to come from.

Result Verified
Ecosystem pypi
Reason Verified
Discovered via Registry attestation endpoint
Source repo 1102tools-dev/federal-contracting-mcps
Certificate issuer https://token.actions.githubusercontent.com
Certificate SAN https://github.com/1102tools-dev/federal-contracting-mcps/.github/workflows/publish-pypi.yml@refs/tags/v1.0.35
Rekor log index 3527331190
Predicate type PyPI publish attestation https://docs.pypi.org/attestations/publish/v1
Subject digest sha256:62f8912e3feb4f120da34e4a5d00828e91ce4a43ee5beba528c46c0cccde009f

Background: How many MCP packages publish verified provenance →

Install scripts 1 script
Hook Tier Command
build_backend Known build tool hatchling.build

Background: Why install scripts are a supply-chain risk →

Dependencies 33 packages
Packages resolved 33
No linked repository 1
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 8 exposed · ~2,898 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
far_case_history ~351

Get all Federal Register documents for a FAR/DFARS case or FAC. Pass a docket ID like 'FAR Case 2023-008' (or a FAC number like 'FAC 2025-06'). Runs BOTH a docket-id search and a quoted full-text search, then merges the two result sets (deduped by document number) in chronological order to show the full rulemaking progression: ANPRM -> proposed rule -> final rule -> corrections. The dual query matters: FAC introduction and companion documents often carry only internal docket numbers, so a docket-only search returns a partial set. Docket matching is token-based, not substring: 'FAR Case 2023' matches all 2023 cases (token '2023' matches '2023-008'), but a partial token like 'FAR Case 20' matches nothing. Be specific to avoid false positives. Each document carries matched_by: 'docket' or 'docket+text' when its docket ids name the case, 'text' when it only mentions the case in its text (regulatory agendas, related or companion cases, FAC introductions, public meetings). Read 'text' matches with care. Each underlying search returns at most 100 documents. truncated=True flags that one of the searches hit that cap (docket_matches and term_matches carry the API's full counts); narrow the docket_id if so. Minimum docket_id length is 3 characters to prevent token matches that return unrelated documents (e.g. 'x' matched 65 random dockets in 0.1.x).

NameTypeReqDescription
docket_idstringyes–

Structured output declared, but exposes no named fields.

No examples provided.

get_document ~109

Get full details for a single Federal Register document by number. Returns all available fields including full text URLs, docket info, RIN details, page views, topics, corrections, and CFR references. Document numbers look like '2026-03065' (modern), 'E9-12940' or 'X94-70302' (legacy pre-2011 archive), or 'C1-2026-01234' (corrections).

NameTypeReqDescription
document_numberstringyes–

Structured output declared, but exposes no named fields.

No examples provided.

get_documents_batch ~102

Fetch multiple documents in one call (up to ~20). Pass a list of document numbers to fetch up to about 20 in one call. Always returns {count, results, [errors]}; errors.not_found lists any requested numbers the API could not locate. Results come back in the order requested. Image metadata (images, images_metadata) is left out to keep batches small; get_document returns it.

NameTypeReqDescription
document_numbersarrayyes–

Structured output declared, but exposes no named fields.

No examples provided.

get_facet_counts ~336

Get document counts grouped by type, agency, topic, or time period. Accepts the same filter conditions as search_documents. Returns aggregated counts without individual document results. Facets: type, agency, topic (categorical) plus daily, weekly, monthly, quarterly, yearly (publication-date buckets, useful for trend lines). Useful for understanding the volume of rulemaking by agency, type, or over time within a date range before drilling into specific documents. presidential_document_type (executive_order, proclamation, memorandum, determination, notice, presidential_order, other) narrows to one kind of presidential document, e.g. executive orders per month. At least one filter (agencies, doc_types, term, pub_date_gte/lte, or cfr_title) is required. An unfiltered facet query returns the entire all-time aggregate. FAR Council counts: facets cannot express "filed by DoD AND GSA AND NASA", and no single agency slug covers FAR documents (OFPP only from about mid-2025; 'federal-acquisition-regulation-system' holds 2 documents ever). Count FAR rules with search_documents(far_council=True, doc_types=[...], pub_date_gte/lte=...) and read its count.

NameTypeReqDescription
agencies–––
cfr_part–––
cfr_title–––
doc_types–––
facetstringyes–
presidential_document_type–––
pub_date_gte–––
pub_date_lte–––
term–––

Structured output declared, but exposes no named fields.

No examples provided.

get_public_inspection ~259

Get current public inspection documents (pre-publication). Public inspection documents are FR documents filed for publication but not yet published. Updated business days only. The current-PI endpoint does NOT support server-side filtering. This tool fetches all current PI documents and filters client-side by agency and/or keyword in the title. Useful for getting early notice of upcoming regulatory actions. Parameters: - agency_filter: case-insensitive substring match against agency slugs, names, and short names. Sub-agencies are included: PI documents list only the FILING sub-agency, so the filter is also matched against the Federal Register agency list and every agency below a matching one counts ('defense-department' or 'DOD' also returns Army, Navy, Air Force, Corps of Engineers and Defense Logistics Agency filings). filters_applied.includes_sub_agencies says whether that worked. - keyword_filter: substring match against document titles - limit: max documents returned after filtering (default 50, max 500). Unfiltered dumps can exceed 170KB; narrow with filters or raise the cap.

NameTypeReqDescription
agency_filter–––
keyword_filter–––
limitinteger––

Structured output declared, but exposes no named fields.

No examples provided.

list_agencies ~315

List agencies with their IDs, names, slugs, and parent agencies. Use the 'slug' values with search_documents() and other tools. Common procurement slugs: - defense-department (DoD) - general-services-administration (GSA) - national-aeronautics-and-space-administration (NASA) - defense-acquisition-regulations-system (DARS/DFARS) - federal-procurement-policy-office (OFPP and the CAS Board) - small-business-administration (SBA) - veterans-affairs-department (VA) The FAR has no single slug. FAR rules and notices are filed jointly under DoD, GSA and NASA; OFPP was added only from about mid-2025, so the OFPP slug misses earlier FAR rules. The agency named 'Federal Acquisition Regulation System' (federal-acquisition-regulation-system) holds 2 documents ever; it carries a note in these results. For FAR documents use search_documents(far_council=True) or open_comment_periods(far_council=True). Parameters: - query: optional case-insensitive substring match against name, short_name, and slug. Recommended: narrow results before pulling full detail. - include_detail: if False (default), returns only id/name/short_name/slug/parent_id. If True, returns all fields (description, urls, etc.). The full dump is ~700KB.

NameTypeReqDescription
include_detailboolean––
query–––

Structured output declared, but exposes no named fields.

No examples provided.

open_comment_periods ~424

Find source-reported open comment periods, soonest indexed deadline first. Covers proposed rules, notices, AND final/interim rules that accept comments (dozens of RULE-type documents have open periods at any time). Queries for comment close date >= today, scans up to 500 matching documents oldest-published first (where the soonest deadlines live), sorts by close date, and returns the first `limit`. Source scope: total_open is the API's matching metadata count; scanned is how many this call examined. When total_open exceeds scanned, narrow with agencies/term for complete indexed coverage. A very recently published document with an unusually short comment window can fall outside the scan in that oversubscribed case. complete means the matching indexed records were scanned, not that every currently open opportunity or controlling deadline was verified. The API's comments_close_on metadata can disagree with DATES after an extension or reopening. Even a zero result needs docket/subject search_documents and get_document DATES/linked publication checks before ruling out comments. Default: searches all agencies. Pass agency slugs to narrow scope, e.g. ['defense-acquisition-regulations-system'] for DFARS or ['general-services-administration'] for GSA and GSAR. Parameters: - far_council: True for open FAR proposed rules and FAR information collections (documents filed jointly by DoD, GSA and NASA; there is no single FAR agency slug and the OFPP tag only appears from about mid-2025). Cannot be combined with agencies. - limit: max documents returned after sorting (default 50, max 100). Unfiltered dumps across all agencies can approach 200KB; several broad agencies together (e.g. DoD + GSA) can pass 100KB, so lower limit for those.

NameTypeReqDescription
agencies–––
far_councilboolean––
limitinteger––
term–––

Structured output declared, but exposes no named fields.

No examples provided.

search_documents ~1,002

Search Federal Register documents. Finds proposed rules, final rules, notices, and presidential documents published in the Federal Register since 1994. Key parameters: - agencies: list of agency URL slugs (OR logic). Use list_agencies() to find slugs. Common: 'defense-department', 'general-services-administration', 'small-business-administration', 'defense-acquisition-regulations-system' (DFARS), 'federal-procurement-policy-office' (OFPP and the CAS Board) - far_council: True for FAR rules, proposed rules and notices (the FAR Council's output). There is no single FAR agency slug: FAR documents are filed jointly under DoD, GSA and NASA, OFPP was added only from about mid-2025 (so the OFPP slug misses earlier FAR rules and adds CAS Board documents), and 'federal-acquisition-regulation-system' holds 2 documents ever. far_council=True keeps documents filed by all three of DoD, GSA and NASA; count is exact when far_council.complete is true (narrow by date if not). Cannot be combined with agencies. For FAR clause changes only, cfr_title=48 + cfr_part='1-99' also works. - doc_types: PRORULE (proposed rule), RULE (final rule), NOTICE, PRESDOCU - term: full-text keyword search (strips stop words) - docket_id: docket identifier (token match). 'FAR Case 2023-008' = exact, 'FAR Case 2023' = all 2023 cases; partial tokens like 'FAR Case 20' match nothing - regulation_id_number: RIN (precise match, e.g., '9000-AO56') - pub_date_gte/lte: publication date range (YYYY-MM-DD) - comment_date_gte/lte: comment close date range - effective_date_gte/lte: effective date range - correction: True finds only the Office of the Federal Register's own correction notices (C1- prefix documents). Agency-issued corrections ('Final rule; correction.', 'Correcting amendment.') are ordinary RULE documents and are not flagged: search doc_types=['RULE'] with term='correction' and check each document's action. - significant: True for EO 12866 significant rules only - c…

NameTypeReqDescription
agencies–––
cfr_part–––
cfr_title–––
comment_date_gte–––
comment_date_lte–––
correction–––
doc_types–––
docket_id–––
effective_date_gte–––
effective_date_lte–––
executive_order_number–––
far_councilboolean––
orderstring––
pageinteger––
per_pageinteger––
presidential_document_type–––
pub_date_gte–––
pub_date_lte–––
regulation_id_number–––
significant–––
term–––

Structured output declared, but exposes no named fields.

No examples provided.

Install

How do I install the Federal Register MCP server?

Federal Register runs locally as a PyPI package, launched with uvx federal-register-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

pypi · federal-register-mcp

# add to Claude Code
claude mcp add com-1102tools-federal-register-mcp -- uvx federal-register-mcp
Common questions

What is the Federal Register MCP server?

Federal Register is an MCP server listed in the public MCP registry as com.1102tools/federal-register-mcp. Federal Register proposed and final rules, notices, executive orders, and FAR cases. 8 tools. This page covers its PyPI package (federal-register-mcp).

Is the Federal Register MCP server safe to use?

Federal Register scores 73 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 5 November 2026. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the Federal Register MCP server expose?

Federal Register exposes 8 tools: search_documents, get_document, get_documents_batch, get_facet_counts, get_public_inspection, and 3 more. Their descriptions and schemas cost roughly 2,898 tokens of context every time the server is loaded.

Is the Federal Register MCP server still maintained?

Federal Register is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What licence is the Federal Register MCP server under?

Federal Register declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.

What did VerifyMCP test on the Federal Register MCP server?

VerifyMCP ran 15 checks on Federal Register, covering Known CVEs, Install scripts, Dependency health, Source repository and 11 more. One item could not be completed, a gap on our side rather than a finding about Federal Register: Malware scan. Endpoint Security and Transport & Reachability do not apply to a PyPI package, so they were not tested. The score does not measure everything, and the scoring documentation lists what it leaves out.