@pipeworx/edgar
Connect: https://gateway.pipeworx.io/edgar/mcp · Install: one-click buttons
Tools: 15
The Securities and Exchange Commission’s filings database. Every public company in the US files here, every filing is timestamped and immutable, and every disclosure (revenue, debt, risk factors, executive compensation, M&A activity, insider trading) is structured for machine retrieval. Free and authoritative.
Why this matters for AI agents
If your agent is answering anything about a US public company — financials, legal exposure, IP, executive turnover, recent material events — the answer is in EDGAR. The data is structured (XBRL), so you don’t have to parse PDFs.
The two key flows:
1. Filings flow. “Show me Apple’s recent 10-Q.” → edgar_ticker_to_cik("AAPL") → edgar_company_filings(cik) → list of filings with accession numbers, form types, filing dates.
2. Concepts flow. “What was Apple’s revenue trend the last 4 quarters?” → edgar_company_concept(cik, "Revenues") → time series of XBRL-tagged values across periods.
3. Peer/competitor flow. “Who competes with Apple?” → edgar_companies_by_sic({ticker_or_cik: "AAPL"}) → resolves Apple’s own SIC code (3571, Electronic Computers) and returns other SEC filers under that code, listed-ticker peers first. Pass a sic code directly instead of a company to browse an industry cold.
4. Entity-resolution flow (parent ↔ subsidiary). sponsor_to_filer({sponsor: "Merck Sharp and Dohme"}) resolves a subsidiary/operating name up to its listed parent (MRK). filer_to_sponsors({ticker_or_cik: "MRK"}) goes the other way — the parent’s full disclosed subsidiary list from Exhibit 21 of its latest 10-K, with jurisdiction and filing provenance. Pass name_filter to check one candidate name without reading the whole list.
5. Product-level revenue. “How much revenue did Keytruda generate?” → edgar_product_revenue({ticker_or_cik: "MRK", product_filter: "Keytruda"}). edgar_company_concept/edgar_company_facts only expose undimensioned XBRL totals — a product/segment breakdown is tagged with an XBRL dimension (a “Keytruda [Member]”), invisible to those APIs. This reads SEC’s own rendered Financial Report of that dimensional data straight out of the revenue-disaggregation note, with a citation (accession, filing date, report URL). With no form_type it resolves 10-K, then 20-F, then 40-F, so foreign private issuers work the same way (edgar_product_revenue({ticker_or_cik: "NVS", product_filter: "Entresto"}) reads Novartis’s 20-F); the form actually used comes back as resolved_form. Not every filer tags product-level revenue in XBRL — Neurocrine discloses revenue by major customer and United Therapeutics only its recognition policy, and both return an explicit not_found rather than an empty array.
Both flows are usually preceded by edgar_ticker_to_cik or resolve_entity({type: "company", value: "AAPL"}) to get the canonical 10-digit CIK.
Auth
None. SEC EDGAR is a free, public, no-auth service. Pipeworx forwards a polite User-Agent header to comply with SEC’s API guidelines.
Citable URIs
pipeworx://edgar/company/{cik}/filings
pipeworx://edgar/company/{cik}/facts
Embed in your output. Stable across reorganizations — companies rebrand, but their CIK doesn’t change.
Form types worth knowing
| Form | What it is | When |
|---|---|---|
| 10-K | Annual report | ~60 days after fiscal year-end |
| 10-Q | Quarterly report | ~45 days after quarter-end |
| 8-K | Material event (M&A, exec changes, earnings, etc.) | Within 4 business days |
| DEF 14A | Proxy statement (executive comp, governance) | ~6 weeks before annual meeting |
| Form 4 | Insider trading disclosure | Within 2 business days of trade |
| 13F | Institutional holdings (>$100M AUM funds) | 45 days after quarter-end |
| S-1 | IPO registration | When going public |
| 13D / 13G | >5% beneficial ownership disclosure | Within 10 days of crossing threshold |
For insider trades specifically, see the dedicated insider-trading pack — it surfaces Form 4 / 13D / 13G changes with cleaner schemas.
Common pitfalls
- Concept name drift. SEC filers occasionally change the XBRL concept they tag for revenue. The default
Revenuesconcept may be stale for newer fiscal years; tryRevenueFromContractWithCustomerExcludingAssessedTaxas a fallback. - Period mismatches. Fiscal years end at different times across companies (Apple = Sept, Microsoft = June, Google = Dec). When comparing, always disclose the period.
- CIK formatting. Some endpoints want zero-padded 10-digit (
0000320193), some want unpadded (320193). Pipeworx accepts either; thecik_paddedfield inedgar_ticker_to_cikis the canonical form for resource URIs. - Real-time-ish, not real-time. Filings appear on EDGAR within minutes of submission, but Pipeworx caches results. For breaking-news-grade timeliness, set
Cache-Control: no-cache(anonymous limit applies) or check the_meta.cache.fresh_untilfield. - Concept availability differs. Smaller filers tag fewer XBRL concepts than large ones.
edgar_company_conceptmay return empty arrays for valid concepts that the company simply doesn’t report. Useedgar_company_factsto see which concepts a company DOES report.
Tools
- edgar_search_filings — Full-text search across every SEC filing, using EDGAR’s own search index.
- edgar_company_filings — Every SEC filing a US public company has made, newest first.
- edgar_company_facts — Every figure a US public company has reported to the SEC in XBRL, annual and quarterly.
- edgar_company_concept — One financial metric for a US public company across every period it has reported, from SEC XBRL.
- edgar_insider_transactions — Who bought or sold a company’s stock as an insider, from SEC Forms 3, 4 and 5.
- edgar_institutional_holdings — What a large institutional investor holds, from its SEC Form 13F filing.
- edgar_fund_holdings — What a US ETF or mutual fund owns, from its monthly SEC Form N-PORT filing.
- edgar_ticker_to_cik — The SEC CIK number for a stock ticker or company name, from EDGAR’s company list.
- sponsor_to_filer — The SEC filer entities linked to a plan sponsor, from EDGAR Form 5500 filings.
- filer_to_sponsors — The plan sponsors linked to an SEC filer entity, from EDGAR Form 5500 filings.
- edgar_xbrl_frames — One XBRL financial concept’s reported value across every US public company for one period, from EDGAR.
- edgar_companies_by_sic — Every SEC filer classified under one industry code — a company’s public peers.
- edgar_product_revenue — A US public company’s revenue broken out by product or segment, from its EDGAR XBRL filings.
- edgar_filing_documents — The documents and attachments inside one SEC filing, by accession number.
- edgar_filing_text — The full text of an SEC filing’s main document, HTML stripped to clean plaintext.
Tools
edgar_companies_by_sic— Every SEC filer classified under one industry code — a company's public peers.edgar_company_concept— One financial metric for a US public company across every period it has reported, from SEC XBRL.edgar_company_facts— Every figure a US public company has reported to the SEC in XBRL, annual and quarterly.edgar_company_filings— Every SEC filing a US public company has made, newest first.edgar_filing_documents— The documents and attachments inside one SEC filing, by accession number.edgar_filing_text— The full text of an SEC filing's main document, HTML stripped to clean plaintext.edgar_fund_holdings— What a US ETF or mutual fund owns, from its monthly SEC Form N-PORT filing.edgar_insider_transactions— Who bought or sold a company's stock as an insider, from SEC Forms 3, 4 and 5.edgar_institutional_holdings— What a large institutional investor holds, from its SEC Form 13F filing.edgar_product_revenue— A US public company's revenue broken out by product or segment, from its EDGAR XBRL filings.edgar_search_filings— Full-text search across every SEC filing, using EDGAR's own search index.edgar_ticker_to_cik— The SEC CIK number for a stock ticker or company name, from EDGAR's company list.edgar_xbrl_frames— One XBRL financial concept's reported value across every US public company for one period, from EDGAR.filer_to_sponsors— The plan sponsors linked to an SEC filer entity, from EDGAR Form 5500 filings.sponsor_to_filer— The SEC filer entities linked to a plan sponsor, from EDGAR Form 5500 filings.