Skip to main content

sec_filing_section next channel

Status: Modified (description-only accuracy fix; parameters, output shape, and credit cost unchanged) This tool is on the private next MCP channel for allow-listed orgs. When promoted, this file moves to mcp-tools/sec-filing-section.md.

Extract the full text of a named section from a specific company's SEC 10-K (annual), 10-Q (quarterly), or 8-K (current event) filing. Use it when a user asks about the content of a named filing section (e.g. "What are Microsoft's risk factors?", "Show me Apple's MD&A"). This is a thin wrapper around the sec-api.io Extractor API. For filing discovery by term/phrase across companies, use sec_full_text_search.

The next variant is a pure description accuracy fix. On next, company_research no longer exists — it was renamed to company_enrich. The inherited v1 description still pointed callers at company_research for general company background, so an agent following the "use company_research instead" hint dead-ended into retries against a nonexistent tool. The pointer now names company_enrich (with company_firmographic as the firmographics-only alternative). Mirrors the sibling sec_full_text_search next override. Parameters, output shape, and credit cost are identical to v1.

Integration required: sec_api Cache schema version: super.getCacheSchemaVersion() + 1 (differs from base — the description-only override still bumps the version per the manifest invariant, so stale v1 cached payloads from the public channel are keyed separately)

Parameters

ParameterTypeRequiredDescription
tickerstringOptionalCompany stock ticker (e.g. MSFT). US domestic issuers only (10-K / 10-Q / 8-K).
cikstringOptionalSEC Central Index Key, as an alternative to ticker.
filingTypestringOptional10-K, 10-Q, or 8-K.
sectionstringOptionalSection code to extract (e.g. 1A risk factors, 7 MD&A, 2.02 earnings).
fiscalYearnumberOptionalNarrows by calendar year. Quarter-precise filtering is not supported — use dateFrom/dateTo.
dateFromstringOptionalYYYY-MM-DD lower bound; use to target a specific filing window (e.g. recurring 8-K events).
dateTostringOptionalYYYY-MM-DD upper bound.

Scope: US domestic issuers only. For foreign issuers that file 20-F, 6-K, or 40-F (e.g. Barclays, BP, SAP, Toyota), use sec_full_text_search with formTypes: ["20-F"] or ["6-K"]. Do not call this for general company background (revenue, headcount, products) — use company_enrich (or company_firmographic).

Response Format

Returns the single most recent matching filing, with the extracted section text and filing metadata (company name, ticker, CIK, filing type, filing date, period of report, section label, content, filing URL, word count). Output shape is identical to v1.

  • sec_full_text_search — search filing content by term/phrase across companies (and for 20-F/6-K foreign filings).
  • company_enrich — general company background (revenue, employees, technographics); the next-channel rename of company_research.
  • company_firmographic — firmographics-only company profile; also resolves a domain/name to a ticker.

Changelog

2026-08-12 — Description accuracy fix (PR 1/2)

Availability: live on next only (allow-listed orgs via POST /api/mcp/next). This entry graduates to the public channel when promoted in PR 2/2.

Why this changed: On next, company_research was renamed to company_enrich, but this tool's inherited description still told callers to "use company_research for general company background." An agent that followed the hint called a tool that does not exist on the channel and dead-ended into retries.

What changed

  • Retargeted the company-background pointer from company_research to company_enrich, naming company_firmographic as the firmographics-only alternative.

What stayed the same

  • All parameters (ticker, cik, filingType, section, fiscalYear, dateFrom, dateTo) are unchanged.
  • Output shape (extracted section text + filing metadata) is unchanged.
  • Tool key (sec_filing_section), credit cost, and the sec-api.io upstream are identical to v1.
  • Cache schema version is super.getCacheSchemaVersion() + 1 — required by the manifest invariant even for a description-only override.