No API key is required for the official SEC EDGAR full-text search endpoint; send a GET request to https://efts.sec.gov/LATEST/search-index?q={query}&dateRange=custom&startdt={YYYY-MM-DD}&enddt={YYYY-MM-DD} to search filing text.
Use the forms parameter to restrict results to specific form types (e.g., forms=10-K,10-Q) and the entity parameter to filter by company name or CIK.
Parse the JSON response hits array; each hit contains the filing accession number, form type, company name, CIK, and a text snippet; use the accession number to construct the filing document URL at https://www.sec.gov/Archives/edgar/data/{CIK}/{accession-no-dashes}/.
Retrieve the full filing index by fetching https://data.sec.gov/submissions/CIK{CIK-zero-padded}.json for a specific company to list all filings and their document paths.
Respect the SEC rate limit of 10 requests per second across all EDGAR endpoints; exceeding this limit triggers a temporary IP block of approximately 10 minutes — implement a request throttle.
Set a User-Agent header on every request in the format your-name your-email@example.com per the SEC's published fair-use policy; requests without a valid User-Agent may be blocked.
Known gotchas
The SEC enforces a hard rate limit of 10 requests per second for all EDGAR APIs including the full-text search endpoint; automated scrapers that exceed this will be blocked by IP — build in a delay between requests.
The User-Agent header is required by SEC policy and must identify the requester; requests using generic or missing User-Agent strings risk being blocked without notice.
The full-text search covers filings since 1996 but index availability and OCR quality vary for older documents; for precise financial data extraction on older filings, parsing the raw SGML or HTML documents directly is more reliable than relying on full-text search snippets.
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp