{"server":"app.frtracker/regulatory-research","count":10,"tools":[{"name":"get_provision_history","title":"Get Provision History","description":"Documented change history for a CFR provision by canonical id (e.g. \"21-cfr-1304.04(a)\"): before/after text, computed redline, observed dates, and candidate final rules. 404 when the provision is not in the documented-change set — absence of a documented change is not a claim that nothing changed. No API key required.","input_schema":{"type":"object","required":["canonical_id"],"properties":{"canonical_id":{"type":"string","description":"Canonical provision id, e.g. \"21-cfr-1304.04(a)\""}}},"output_schema":null,"annotations":{"readOnlyHint":true,"openWorldHint":false,"destructiveHint":false},"source":"probe","observed_at":"2026-09-20T12:16:42.351Z"},{"name":"get_requirement","title":"Get Requirement","description":"Detail for one extracted obligation by id, including its source rule and citation URL. Requires an API key.","input_schema":{"type":"object","required":["id"],"properties":{"id":{"type":"string","description":"Requirement id"}}},"output_schema":null,"annotations":{"readOnlyHint":true,"openWorldHint":false,"destructiveHint":false},"source":"probe","observed_at":"2026-09-20T12:16:42.351Z"},{"name":"get_rule_comments","title":"Get Rule Comments","description":"Public comments for a Federal Register document (organization, title, date, body where available). Coverage is partial and stated in the response. Requires an API key.","input_schema":{"type":"object","required":["doc"],"properties":{"doc":{"type":"string","description":"Federal Register document number, e.g. \"2024-12345\""},"offset":{"type":"integer","description":"Row offset for pagination"}}},"output_schema":null,"annotations":{"readOnlyHint":true,"openWorldHint":false,"destructiveHint":false},"source":"probe","observed_at":"2026-09-20T12:16:42.351Z"},{"name":"get_stats","title":"Get Stats","description":"Aggregate corpus statistics: documents, obligations, pairs, agencies, coverage dates. No API key required.","input_schema":{"type":"object","properties":{}},"output_schema":null,"annotations":{"readOnlyHint":true,"openWorldHint":false,"destructiveHint":false},"source":"probe","observed_at":"2026-09-20T12:16:42.351Z"},{"name":"list_obligations","title":"List Obligations","description":"List extracted regulatory obligations (\"who must do what\") with filters: agency, deontic class, free text. Obligations are machine-extracted with quality tiers; they are not legal advice. Requires an API key.","input_schema":{"type":"object","properties":{"q":{"type":"string","description":"Full-text filter within obligations"},"page":{"type":"integer","description":"Page number (default 1)"},"limit":{"type":"integer","description":"Max rows (default 25, max 100)"},"agency":{"type":"string","description":"Agency slug"},"deontic":{"enum":["MUST","MUST_NOT","SHOULD","MAY","EXEMPT"],"type":"string","description":"Deontic class"}}},"output_schema":null,"annotations":{"readOnlyHint":true,"openWorldHint":false,"destructiveHint":false},"source":"probe","observed_at":"2026-09-20T12:16:42.351Z"},{"name":"list_rules","title":"List Rules","description":"List Federal Register documents with filters: agency slug, document type, rulemaking pathway (interim_final/temporary/direct_final = notice-and-comment bypass classes), or docket id. Requires an API key.","input_schema":{"type":"object","properties":{"page":{"type":"integer","description":"Page number (default 1)"},"type":{"enum":["final_rule","proposed_rule","notice","correction"],"type":"string","description":"Document type"},"limit":{"type":"integer","description":"Max rows (default 25, max 100)"},"agency":{"type":"string","description":"Agency slug, e.g. \"environmental-protection-agency\""},"docket":{"type":"string","description":"Docket id"},"pathway":{"enum":["interim_final","temporary","direct_final","final","other"],"type":"string","description":"Rulemaking pathway"}}},"output_schema":null,"annotations":{"readOnlyHint":true,"openWorldHint":false,"destructiveHint":false},"source":"probe","observed_at":"2026-09-20T12:16:42.351Z"},{"name":"lookup_provision","title":"Lookup Provision","description":"Look up a CFR provision by citation (e.g. \"21 CFR 1304.04\") or by an exact quotation, optionally as of a past date. Returns the provision text with a ProvisionEvidence object (source, snapshot date, hashes). Explicitly reports ambiguity or no-match instead of guessing. Requires a free API key.","input_schema":{"type":"object","required":["q"],"properties":{"q":{"type":"string","description":"Citation (\"21 CFR 1304.04\") or an exact quote from regulatory text"},"as_of":{"type":"string","description":"Optional YYYY-MM-DD snapshot upper bound (not in the future)"}}},"output_schema":null,"annotations":{"readOnlyHint":true,"openWorldHint":false,"destructiveHint":false},"source":"probe","observed_at":"2026-09-20T12:16:42.351Z"},{"name":"recent_cfr_changes","title":"Recent Cfr Changes","description":"Most recent detected changes to CFR text (title, part, name, dates), newest first. No API key required.","input_schema":{"type":"object","properties":{"limit":{"type":"integer","description":"Max rows (default 50, max 200)"}}},"output_schema":null,"annotations":{"readOnlyHint":true,"openWorldHint":false,"destructiveHint":false},"source":"probe","observed_at":"2026-09-20T12:16:42.351Z"},{"name":"rules_amending","title":"Rules Amending","description":"Which final rules amend a CFR part or section, read from each rule's own amendatory instructions (\"Amend § 52.2120 by...\"). Returns the rules, the sections each addresses, and dates. This reports what a rule SAYS it amends — it is not an attribution of any observed text change to that rule. Covers 2020-present; absence means not indexed, not that no rule amended it. No API key required.","input_schema":{"type":"object","required":["title","part"],"properties":{"part":{"type":"string","description":"CFR part, e.g. \"52\""},"limit":{"type":"integer","description":"Max rules (default 50, max 200)"},"title":{"type":"string","description":"CFR title number, e.g. \"40\""},"section":{"type":"string","description":"Optional section id, e.g. \"52.2120\". Omit for all rules touching the part."}}},"output_schema":null,"annotations":{"readOnlyHint":true,"openWorldHint":false,"destructiveHint":false},"source":"probe","observed_at":"2026-09-20T12:16:42.351Z"},{"name":"search_regulations","title":"Search Regulations","description":"Full-text search over Federal Register documents and extracted obligations (FTS5/BM25). Totals are approximate (total_exact: false). Requires an API key.","input_schema":{"type":"object","required":["q"],"properties":{"q":{"type":"string","description":"Search query (min 3 chars)"},"tab":{"enum":["all","fr","obligations"],"type":"string","description":"Result type (default all)"},"page":{"type":"integer","description":"Page number (default 1)"},"limit":{"type":"integer","description":"Max results (default 25, max 50)"}}},"output_schema":null,"annotations":{"readOnlyHint":true,"openWorldHint":false,"destructiveHint":false},"source":"probe","observed_at":"2026-09-20T12:16:42.351Z"}],"next_cursor":null,"next_actions":[{"action":"get_connection","description":"Connection block to call these tools","href":"/v1/servers/app.frtracker%2Fregulatory-research/connection?target=mcpServers","arguments":{"name":"app.frtracker/regulatory-research","target":"mcpServers"}},{"action":"get_server","description":"Full descriptor with trust and connectability","href":"/v1/servers/app.frtracker%2Fregulatory-research","arguments":{"name":"app.frtracker/regulatory-research"}}]}