Access for AI Agents

This site is built for two readerships: people, and AI agents researching United States federal government actions. You are welcome to ingest this data. It exists so an agent can answer "what did the federal government do on date D" from one clean, summarized, citation-bound source instead of crawling many official sites.

Coverage grows continuously: sources currently closed to honestly-identified automated clients are documented as unavailable in the source guide — not abandoned — and opening them through publishers' own documented channels and direct engagement with agencies is standing work. Check the source guide for what is ingested today.

What is here

Discovery for agents

Besides this page and /llms.txt, the site publishes the machine discovery documents agents actually poll, each at its registered or specified location (GUIDE §1). Every one of them is a static file.

MCP service

A read-only Model Context Protocol (opens in a new tab) service answers at https://fapd.info/mcp: JSON-RPC 2.0 over HTTPS POST (the Streamable HTTP transport). It performs no inference, keeps no sessions, needs no account, and reads nothing but the files this site already publishes, so every tool returns published material verbatim. Each tool description also asks the reading model to treat that text as data, not as instructions.

How to connect

Claude Code, from a terminal:

claude mcp add --transport http fapd https://fapd.info/mcp

Any client that takes a JSON configuration:

json { "mcpServers": { "fapd": { "type": "http", "url": "https://fapd.info/mcp" } } }

Which tool answers which question

The digest is the record, but it summarizes a rule-selected subset of a day and counts the rest; the day listings hold every item. Pick by question:

Which tool answers which question
Question Tool
What is the record for a finished day? get_digest with the date
Only one block of the record — the Coverage Statement, one numbered section, the header with its Inference row get_digest with section
Every item observed on a finished day, including the ones the digest only counted — by collection or agency get_day_listing, with collection and agency
What has been observed so far today (preliminary)? get_live_day, same filters
Which days exist? list_digests (the record), list_day_views (the listings)
What is a source, and how well is it ingested? list_sources, then get_source

Tools

Every tool is read-only, idempotent and closed-world: each reads one published file and returns it, paged where the file is a list. Parameters are validated by the service; an unknown or malformed argument is refused by name. In every result the payload is the first content block; a disclosure, when present, is the last.

Tools of the MCP service
Tool Returns Parameters
list_digests Lists published digest days, newest first: date, page URL, canonical Markdown path and teaser. offset (integer, 0…10000, default 0); limit (integer, 1…60, default 14)
get_digest Returns the canonical Markdown digest for a published day, verbatim; with section, one heading block of it. The digest summarizes a rule-selected subset of the day and counts the rest — for every item an agency or collection published, use get_day_listing. date (string, required); section (string, one of header, contents, day-in-review, 1, 2, 3, 4, 5, 6, 7, 8, 9, terms, coverage, methodology)
get_live_day Returns today's PRELIMINARY observed items with the day's disclosures and counts. Items the publisher dates earlier are excluded unless include_backfill is true; collection narrows to one collection; agency keeps one agency's items (exact name, case ignored) — facets.tags in the result lists the agencies present. offset (integer, 0…10000, default 0); limit (integer, 1…100, default 50); include_backfill (boolean, default False); collection (string, one of AGENCYPR, BILLACTIONS, BILLS, CREC, FR, PLAW, PRESACT, USCOURTS, VOTES); agency (string)
list_day_views Lists the days that have a frozen observed listing, newest first. offset (integer, 0…10000, default 0); limit (integer, 1…366, default 30)
get_day_listing Returns a finished day's complete frozen observed listing — every item, including the ones the digest only counted — with its disclosures and counts. Items the publisher dates earlier are excluded unless include_backfill is true; collection narrows to one collection; agency keeps one agency's items (exact name, case ignored) — facets.tags in the result lists the agencies present. date (string, required); offset (integer, 0…10000, default 0); limit (integer, 1…100, default 50); include_backfill (boolean, default False); collection (string, one of AGENCYPR, BILLACTIONS, BILLS, CREC, FR, PLAW, PRESACT, USCOURTS, VOTES); agency (string)
list_sources Lists the source directory as a summary per source: identity, method, status and health label. get_source returns one source's full record including daily activity; the source-directory resource is the whole file. offset (integer, 0…10000, default 0); limit (integer, 1…200, default 50)
get_source Returns one source's full record: registry entry, ingestion statistics, health and daily activity. source_id (string, required)
get_agent_guide Returns llms.txt: the plain-text guide to every published surface. —

Resources

The same files are also exposed as MCP resources, by URL:

Resources of the MCP service
Resource URI Type
Agent guide (llms.txt) https://fapd.info/llms.txt text/plain
For agents (Markdown) https://fapd.info/agents.md text/markdown
Authentication policy https://fapd.info/auth.md text/markdown
Digest index https://fapd.info/digests.json application/json
Source directory https://fapd.info/sources.json application/json
Digest for a day (template) https://fapd.info/{date}.md text/markdown
Frozen day view (template) https://fapd.info/day/{date}.json application/json
Source page (template) https://fapd.info/sources/{source_id}.md text/markdown

What it does not do

Limits and courtesy

Where to read more

Protocols this site does not offer, and why

We publish no metadata for a capability we do not operate (GUIDE §1). The protocols below are declined on purpose, with the reason stated.

Requests to those protocols' well-known locations receive a 404 whose body points here.

How to read it faithfully

Courtesy

Everything is static except the read-only MCP service — no authentication, nothing an agent needs to execute, and a generous per-address rate limit that protects the shared server. We ask visiting agents the same courtesy our own crawler practices on government sites: identify honestly and use conditional requests. Fetching every page daily is entirely fine.

Reuse

Content here is licensed CC BY 4.0 — share and adapt freely, including commercially, with credit to "FAPD — Free Agentic Publication Digester". Quoted official government text within it is public domain (17 U.S.C. § 105) and needs no permission at all. The attribution rule mirrors our citation ethic: for factual claims, cite the underlying official source each item links to; cite FAPD for the aggregation and summaries. The pipeline's code is Apache-2.0.