GovInfo.gov MCP — full text of US government publications
GovInfo MCP has well-structured tool definitions with clear naming (verb_noun pattern) and reasonable descriptions (avg 150 chars). All 5 tools have input schemas with typed properties and required fields. However, parameter descriptions are sparse or missing for several tools (e.g., list_granules lacks page_size/offset_mark descriptions), and output schemas are entirely undocumented. Error handling is present but generic. No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite all tools being read-only. Missing pagination guidance in descriptions despite tools supporting it.
Granule metadata for a sub-unit within a package.
Metadata for a single package by packageId (e.g., "BILLS-118hr1234ih", "FR-2024-05-12"). Returns title, dates, citations, granule count, download links (PDF/XML/MODS).
List GovInfo collections (BILLS, CFR, USCODE, FR, CHRG, CRPT, HMAN, PLAW, SERIALSET, USCOURTS, etc.) with package counts. Use the collection code with search_packages to filter.
List granules within a package — e.g., sections of a CFR title, individual entries in a Federal Register issue. Returns granule IDs + titles.
Full-text + faceted search across GovInfo. Filter by collection codes (comma-separated), date range, congress, court (for USCOURTS), and free-text query. Returns package IDs and titles.
Output schemas completely undocumented. LLMs cannot predict response structure or plan downstream tool calls. All 5 tools lack documented return types.
Parameter descriptions missing or incomplete. list_granules and get_granule lack descriptions for page_size, offset_mark, granule_id. LLMs cannot infer parameter semantics from names alone.
No tool annotations despite all tools being read-only. Missing readOnlyHint would help agents understand safety and retry semantics.
Pagination guidance absent from descriptions. search_packages and list_granules support offset_mark and page_size but descriptions do not explain pagination behavior or when to use offset_mark.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 58 | 2026-07-28+ | v2 |
Error messages are generic. giFetch/giPost throw 'GovInfo: unauthorized', 'GovInfo: not found', 'GovInfo: rate-limit' without recovery guidance. LLMs cannot determine next steps (retry, lookup, ask user).