List the documents and exhibits of one SEC filing
edgar_get_filing_indexList every file in one SEC EDGAR filing index, including exhibits, XBRL data, and header facts, so you can locate and fetch a specific attachment.
Instructions
List every file of ONE SEC filing from its EDGAR filing index page: primary document, exhibits (EX-21 subsidiaries, EX-99.1 press release, ...) and XBRL data files, with SEC document type, description, size and a direct URL, plus filing header facts (form, filing date, acceptance time, period of report, 8-K items, filers). Use when you need an exhibit or attachment rather than the primary document ("Apple's list of subsidiaries", "the press release attached to this 8-K"), or the 8-K item numbers of a filing; then pass a row's url to edgar_get_filing_document. Behavior: one GET to the {accession}-index.htm page on www.sec.gov (throttled to <=5 requests/s, shared with the other edgar_* tools); company resolution may add one cached ticker-map request. RETURNS: one "filing_document" row per file, in SEC sequence order (documents first, then data files); meta holds the filing header. Errors: INVALID_INPUT, INVALID_URL, COMPANY_NOT_FOUND, NOT_FOUND (no such filing for that CIK), SEC_FETCH_FAILED (retryable). WHEN NOT TO USE: to find filings use edgar_list_filings first; to read a document's text use edgar_get_filing_document; for financial values use edgar_get_company_facts. COST: free - direct sec.gov requests from this MCP server, no APIFY_TOKEN, no Apify billing. PARAMETERS: give EITHER indexUrl (index_url from edgar_list_filings; wins if present) OR company + accessionNumber (both required together, else INVALID_INPUT). company only locates the filing folder: any CIK that filed or co-filed the accession works. docTypes filters rows by exact, case-insensitive SEC document type ("EX-21" does not match "EX-21.1"; use prefix matching yourself if needed) before paging; meta.document_count is SEC's own count and ignores the filter. doc_type of XBRL data files is e.g. "EX-101.SCH" or "XML". url points to the raw file (the inline-XBRL viewer prefix is removed), so it can be passed to edgar_get_filing_document as documentUrl. EXAMPLE: {"company":"AAPL","accessionNumber":"0000320193-24-000123","docTypes":["EX-21.1"]} -> 1 row {"doc_type":"EX-21.1","document":"a10-kexhibit21109282024.htm","url":"https://www.sec.gov/Archives/edgar/data/320193/000032019324000123/a10-kexhibit21109282024.htm"}, meta.form "10-K", meta.period_of_report "2024-09-28".
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Optional page size: items to return, integer 1-500 (default 100). Example: 10 | |
| offset | No | Optional zero-based number of items to skip, integer >= 0 (default 0); pass nextOffset from the previous response, e.g. 20 | |
| company | No | Optional, 1-200 chars; required together with accessionNumber when indexUrl is omitted. Ticker ("AAPL"), CIK ("320193") or registrant-name fragment ("Apple"; the first SEC ticker-map match is used). | |
| docTypes | No | Optional, default omitted = all files. 1-50 exact SEC document types, case-insensitive. Example: ["EX-21.1","EX-99.1"] | |
| indexUrl | No | Optional (alternative to company + accessionNumber). index_url from edgar_list_filings; must start with https://www.sec.gov/Archives/edgar/data/ and end with -index.htm or -index.html (else INVALID_URL). Example: https://www.sec.gov/Archives/edgar/data/320193/000032019324000123/0000320193-24-000123-index.htm | |
| accessionNumber | No | Optional; required together with company when indexUrl is omitted. Format 10-2-6 digits with optional dashes (pattern ^\d{10}-?\d{2}-?\d{6}$), e.g. "0000320193-24-000123" or "000032019324000123" |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| meta | No | Tool-specific context (company, source_url, ...) | |
| count | Yes | Number of items in this page | |
| items | Yes | Result rows for this page | |
| total | Yes | Total items matching the filters (before paging) | |
| offset | Yes | Offset of the first item in this page | |
| hasMore | Yes | True if more items exist after this page | |
| nextOffset | Yes | Offset to pass for the next page, or null |