Skip to main content
Glama

docketwatch

Follow the federal rulemaking record without living in a browser tab. docketwatch talks to the Regulations.gov API v4 — the public record of dockets, documents and public comments behind rules published by US agencies — and answers with the API's own JSON, so a search result here is the same payload you would get from the API directly.

You will need a free api.data.gov key:

export REGULATIONS_GOV_API_KEY="<your key>"

Get one at https://api.data.gov/signup. The key goes out as the X-Api-Key header on every data call. If the variable is unset the server still starts and lists its tools, but every data tool replies with setup instructions and makes no request at all — handy for checking that a client is wired up before a key exists. get_access_status is the exception: it never calls out and reports only {"configured": true} or {"configured": false}, never the key itself. The base URL defaults to https://api.regulations.gov/v4 and can be overridden with REGULATIONS_GOV_API_BASE.

The nine tools:

  • search_documents — find documents (proposed rules, rules, notices, supporting material) by keyword, agency, docket and posted/modified date windows.

  • get_document_detail — one document in full; pass include_attachments: true to ask the API to include its attachments.

  • search_comments — search the public comments by keyword, agency, docket, or the document commented on.

  • get_comment_detail — one comment's full text and submitter information.

  • search_dockets — search rulemaking and nonrulemaking dockets by keyword or agency.

  • get_docket_detail — one docket's metadata, abstract and RIN.

  • open_comment_periods — composition (labelled): not a single API call. It pages through documents posted in the last 180 days (the scan window is a local choice), keeps those whose comment period ends today or later, and returns them soonest-closing first alongside complete and truncated flags.

  • far_case_history — composition (labelled): fetches a FAR/DFARS case docket (for example FAR-2023-0008) together with every page of that docket's documents, concatenated, plus a complete flag saying whether all pages were read.

  • get_access_status — the key check described above.

Search arguments are flat names that map onto the API's documented filter[...] parameters, with sort, page[number] and page[size] for ordering and paging. Filter values are case-sensitive — the API treats EPA and epa differently — and docketwatch passes them through unchanged.

One honest gap: the API documentation used for this build does not pin a document-type or docket-type filter parameter name, so no type filter argument is exposed. Keyword, agency, docket and date filters cover the documented surface.

CLI

Each tool is a subcommand taking one JSON argument string (get_access_status takes none):

npx @reneturcios/docketwatch search_documents '{"agency_id":"EPA","search_term":"emissions"}'
npx @reneturcios/docketwatch get_document_detail '{"document_id":"EPA-HQ-OAR-2020-0001-0001","include_attachments":true}'
npx @reneturcios/docketwatch search_comments '{"docket_id":"EPA-HQ-OAR-2020-0001"}'
npx @reneturcios/docketwatch open_comment_periods '{"agency_id":"EPA","limit":20}'
npx @reneturcios/docketwatch far_case_history '{"case_number":"FAR-2023-0008"}'
npx @reneturcios/docketwatch get_access_status
npx @reneturcios/docketwatch --version

Output is the tool's result text (JSON for every tool). Exit codes: 0 on success, 1 on a runtime error (including a validation, missing-key or upstream failure), 2 on a usage error.

Related MCP server: mcp-regulations-gov

MCP server

npx -y @reneturcios/docketwatch mcp

MCP client config:

{
  "mcpServers": {
    "docketwatch": {
      "command": "npx",
      "args": ["-y", "@reneturcios/docketwatch", "mcp"],
      "env": {
        "REGULATIONS_GOV_API_KEY": "<your key>"
      }
    }
  }
}

Docker

docker run -i -e REGULATIONS_GOV_API_KEY="<your key>" ghcr.io/cloudcorprecords/docketwatch
docker run --rm -e REGULATIONS_GOV_API_KEY="<your key>" ghcr.io/cloudcorprecords/docketwatch get_access_status

Development

npm install
npm run build   # tsc -> dist/
npm test        # tsx --test test/*.test.ts (fake fetch + fake clock, no network)
npm run dev     # run the CLI from source

License

MIT — Copyright (c) 2026 Rene Turcios

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    Not graded
    maintenance
    Enables interaction with the Regulations.gov API to search federal rulemaking dockets, proposed and final rules, public comments, and comment periods. Supports tracking FAR/DFARS case histories and monitoring open comment periods across federal agencies with optional API key authentication for higher rate limits.
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables access to federal regulatory dockets, documents, and public comments from Regulations.gov via tools like get_docket and get_comment.
    192 npm
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Enables LLM agents to search Regulations.gov federal dockets, retrieve docket abstracts and metadata, and list rulemaking documents, giving read access to federal regulatory data.
    4
    MIT