SEC EDGAR Company Filings & XBRL Financials MCP Server avatar

SEC EDGAR Company Filings & XBRL Financials MCP Server

Pricing

Pay per usage

Go to Apify Store
SEC EDGAR Company Filings & XBRL Financials MCP Server

SEC EDGAR Company Filings & XBRL Financials MCP Server

Query SEC EDGAR 10-K, 10-Q, 8-K filings, full-text EFTS search, corporate profiles, and standardized US-GAAP XBRL financial facts with YoY growth via Batch JSON API or Standby MCP Server.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Mutualistic Labs

Mutualistic Labs

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

2 days ago

Last modified

Categories

Share

MCP Server for AI Agents: SEC EDGAR Filings & XBRL Financials

An always-on Model Context Protocol (MCP) server and batch Actor for SEC EDGAR: recent company filings (10-K, 10-Q, 8-K, Form 4, 13F), EDGAR full-text search, company profiles and exact XBRL financial facts with year-over-year growth. Built for AI agents (Claude Desktop, Cursor, Windsurf, OpenAI Agents, LangChain), equity research, compliance monitoring, event-driven alerts and financial data pipelines.

No proxies, no browser, no logins, no API keys: only the official, unauthenticated SEC JSON APIs are called (data.sec.gov, efts.sec.gov, www.sec.gov) with a compliant, identifying User-Agent.

Features

  • Four modes: company_filings, search_filings, company_profile, financial_facts.
  • Filings of one or many companies (tickers or CIKs, up to 10) with form, date range and keyword filters; every filing carries a direct https://www.sec.gov/Archives/... document link and the filing index link.
  • Full-text search across all EDGAR filings (search_filings), optionally restricted to given companies (CIKs; the bare default ["AAPL"] prefill is treated as "not set", so use 0000320193 or add another company to force an Apple-only search), forms and dates.
  • Company profiles: CIK, name, tickers, exchanges, SIC, EIN, state of incorporation, fiscal year end, business address, latest 10-K and 10-Q dates and links.
  • XBRL financial facts per company and concept with exact values and yoy_change_pct.
  • Deterministic de-duplication (uid), hard max_items and max_total_charge_usd caps.

What you get

record_typeModeWhat it is
filingcompany_filings, search_filingsOne SEC filing (form, dates, items, primary document, XBRL flags, links)
company_profilecompany_profileOne company (identity, tickers, SIC, address, latest 10-K and 10-Q)
financial_factfinancial_factsOne XBRL fact (concept, unit, value, period, filing, YoY change)

Endpoints

  • GET / and GET /health: readiness probe, returns {"status":"ok","actor":"sec-edgar-filings-mcp",...}.
  • POST /mcp: MCP JSON-RPC 2.0 (initialize, ping, tools/list, tools/call).

Standby URL: https://mutualistic-housing--sec-edgar-filings-mcp.apify.actor/mcp (authenticate with your Apify API token).

Input

FieldTypeDefault
modecompany_filings, search_filings, company_profile, financial_factscompany_filings
companiesstring[] of tickers or CIKs, 1 to 10none (prefill AAPL; falls back to AAPL). In search_filings they restrict the search to those CIKs, but the bare default ["AAPL"] counts as "not set" (no restriction); use the CIK form 0000320193 or add another company to restrict to Apple
formsstring[] of form types such as 10-K, up to 20all forms
querystring, max 300 chars (required for search_filings; keyword filter in company_filings)none
conceptsstring[] of preset keys or XBRL tags, 1 to 10 (mode financial_facts)["NetIncomeLoss"]
taxonomyus-gaap, dei, ifrs-full (non-preset concepts)us-gaap
start_date, end_dateYYYY-MM-DD; filing date for filings, period end date for factsnone
max_itemsinteger 1 to 50025
max_total_charge_usdnumber or nullno cap

An empty {} input runs: the 25 latest filings of Apple (AAPL). camelCase aliases (startDate, endDate, maxItems, maxTotalChargeUsd) are accepted. Invalid input is rejected with INVALID_INPUT_ZERO_CHARGE before any network call or charge.

Batch input examples

Latest annual and quarterly reports of three companies:

{"mode": "company_filings", "companies": ["AAPL", "MSFT", "NVDA"], "forms": ["10-K", "10-Q"], "max_items": 30}

Full-text search for 10-K filings that mention a topic:

{"mode": "search_filings", "query": "artificial intelligence", "forms": ["10-K"], "start_date": "2025-01-01", "end_date": "2025-12-31"}

Company profiles:

{"mode": "company_profile", "companies": ["AAPL", "BRK-B", "320193"]}

Revenue and net income with year-over-year change from annual reports:

{"mode": "financial_facts", "companies": ["AAPL"], "concepts": ["Revenues", "NetIncomeLoss"], "forms": ["10-K"], "max_items": 20}

Preset companies and concepts

Companies (tickers are resolved without a lookup request; any other ticker or CIK works too): AAPL, MSFT, NVDA, GOOGL, AMZN, META, TSLA, BRK-B, JPM, LLY.

Concepts: Revenues (falls back to RevenueFromContractWithCustomerExcludingAssessedTax and SalesRevenueNet), NetIncomeLoss, OperatingIncomeLoss, Assets, Liabilities, StockholdersEquity, CashAndCashEquivalentsAtCarryingValue, EarningsPerShareDiluted, CommonStockSharesOutstanding (dei:EntityCommonStockSharesOutstanding or us-gaap:CommonStockSharesOutstanding). Any other XBRL tag works with taxonomy.

MCP tools

{
"mcpServers": {
"sec-edgar": {
"url": "https://mutualistic-housing--sec-edgar-filings-mcp.apify.actor/mcp",
"headers": { "Authorization": "Bearer <APIFY_TOKEN>" }
}
}
}
  • get_company_filings: companies, forms, query, start_date, end_date, max_items (default 10).
  • search_sec_filings: query (required), forms, start_date, end_date, max_items.
  • get_company_profiles: companies.
  • get_financial_facts: companies, concepts, taxonomy, forms, start_date, end_date, max_items.
  • list_preset_companies: no arguments; lists the preset companies and concepts (free).

Example calls:

curl -X POST "https://mutualistic-housing--sec-edgar-filings-mcp.apify.actor/mcp" \
-H "Authorization: Bearer <APIFY_TOKEN>" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"get_company_filings","arguments":{"companies":["AAPL"],"forms":["10-K"],"max_items":5}}}'
{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"search_sec_filings","arguments":{"query":"artificial intelligence","forms":["10-K"],"max_items":10}}}
{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"get_company_profiles","arguments":{"companies":["AAPL","NVDA"]}}}
{"jsonrpc":"2.0","id":4,"method":"tools/call","params":{"name":"get_financial_facts","arguments":{"companies":["AAPL"],"concepts":["NetIncomeLoss"],"forms":["10-K"],"max_items":5}}}
{"jsonrpc":"2.0","id":5,"method":"tools/call","params":{"name":"list_preset_companies","arguments":{}}}

Output fields

Filing records:

FieldMeaning
record_type, uidRecord kind; deterministic SHA-256 identifier
cik, company_name, tickers10-digit CIK, company name and ticker symbols
accession_number, formSEC accession number and form type
filing_date, report_date, acceptance_datetimeFiling date, period or event date, SEC acceptance timestamp
act, file_number, film_numberSecurities act, SEC file number and film number
items8-K item numbers such as 2.02, 9.01
description, primary_documentDocument description and primary document file name
size_bytes, is_xbrl, is_inline_xbrlFiling size and XBRL flags (submissions data only)
filing_url, index_urlDirect document link (or the index page when the primary document is not a plain file) and the filing index page
sourceUpstream SEC API

The filing uid is derived from the CIK, accession number and primary document.

Company profile records:

FieldMeaning
record_type, uidRecord kind; deterministic SHA-256 identifier
cik, company_name, entity_typeIdentity
sic, sic_descriptionStandard Industrial Classification
tickers, exchanges, einTickers, listing exchanges (parallel to tickers) and employer identification number
state_of_incorporation, fiscal_year_endState or country of incorporation and fiscal year end (MMDD)
business_city, business_stateBusiness address
recent_filings_countNumber of filings in the recent filings list
latest_10k_date, latest_10k_url, latest_10q_date, latest_10q_urlFiling date and link of the latest 10-K and 10-Q
sec_browse_url, sourceEDGAR company page; upstream SEC API

Financial fact records:

FieldMeaning
record_type, uidRecord kind; deterministic SHA-256 identifier
cik, company_nameCompany
taxonomy, concept, labelXBRL taxonomy, tag and human-readable label
unit, valueUSD, USD/shares or shares; exact reported value (integers unchanged, decimals rounded half-up to 4 places)
start_date, end_datePeriod; instant facts (balance sheet) have no start_date
fiscal_year, fiscal_periodFiscal year and period of the reporting filing, not of the fact period
form, filed_date, accession_number, frameReporting filing and XBRL frame
yoy_change_pctYear-over-year change in percent; see below
sourceUpstream SEC API

The fact uid is derived from the CIK, taxonomy, concept, unit, accession number, start_date, end_date, fiscal_period and frame. It includes start_date, so a 3-month and a 9-month fact of the same filing that share the same end_date stay distinct records.

Example financial fact (shortened):

{
"record_type": "financial_fact", "cik": "0000320193", "company_name": "Apple Inc.", "taxonomy": "us-gaap",
"concept": "NetIncomeLoss", "unit": "USD", "value": 93736000000, "start_date": "2023-10-01", "end_date": "2024-09-28",
"fiscal_year": 2024, "fiscal_period": "FY", "form": "10-K", "filed_date": "2024-11-01", "yoy_change_pct": -3.36,
"uid": "<sha256>"
}

Year-over-year rule

yoy_change_pct is matched by period dates, not by fiscal_year (the fiscal year of a filing also covers the comparative periods it repeats). For each fact the prior-year fact has the same unit, the same kind (instant or duration), a period end 358 to 372 days earlier and, for durations, a length within 7 days. If several prior facts match, the most recently filed one is used. The result is (value - prior) / |prior| * 100, rounded half-up to 2 decimals. It is null when no comparable period exists or when the prior value is zero or negative.

SEC fair access

The SEC asks automated clients to identify themselves and stay below 10 requests per second. This Actor sends the User-Agent MutualisticLabs-SecEdgarMCP/0.1 (support@mutualisticlabs.com), keeps its own requests below that rate with a process-wide limiter shared by all clients and concurrent MCP calls (at most 8 requests per second, one request start every 0.125 s), backs off on 429 and 5xx responses and honours Retry-After. Data comes straight from the SEC and is not investment advice.

Security and limits

  • Allowlisted hosts only: outbound requests go exclusively to data.sec.gov, efts.sec.gov and www.sec.gov over https. Redirects to any other host, non-https redirects, credentials in URLs and non-443 ports are rejected.
  • SSRF protections: DNS results (and the connected peer address, checked before any body is read) that are loopback, private, link-local, CGNAT, NAT64, 6to4, Teredo, multicast or unspecified are refused. Resolved IP addresses never appear in error messages.
  • Bounds: at most 500 items per run, 10 companies and 10 concepts per call, a 120 s global batch deadline, a 45 s deadline per MCP tool call, a 15 s per-request timeout (connect, TLS, headers and body) and a 4 MiB response size cap.
  • MCP server: request bodies above 64 KiB return 413, POST /mcp requires Content-Type: application/json (415 otherwise) and at most 8 concurrent tool calls run (503 when busy).
  • Unknown tickers, CIKs or concepts return an error entry for that company or concept; per-company failures never abort other companies.

Pricing

Pay per event: $0.001 per result-item (result-item: one de-duplicated filing, company profile or financial fact, as a dataset item or an MCP tool result row); the actor-start event is free and list_preset_companies is free. max_items and max_total_charge_usd are hard caps enforced in code, so a run never charges more than you configure. Invalid input and empty results are never charged.

ActorCoversStoreStandby MCP URL
Multi-ATS Career Jobs Search MCPGreenhouse, Lever, Ashby, SmartRecruiters, Workablehttps://apify.com/mutualistic_housing/multi-ats-career-jobs-mcphttps://mutualistic-housing--multi-ats-career-jobs-mcp.apify.actor/mcp
Google Ads Transparency & Ad Spy MCPSearchCreatives, SearchSuggestions, content.js ad-copy & video metadatahttps://apify.com/mutualistic_housing/google-ads-transparency-mcphttps://mutualistic-housing--google-ads-transparency-mcp.apify.actor/mcp
Multi-Engine Keyword & Autocomplete MCPGoogle, YouTube, Amazon, Bing, DuckDuckGo, Brave + google:suggestrelevance & search intenthttps://apify.com/mutualistic_housing/keyword-autocomplete-mcphttps://mutualistic-housing--keyword-autocomplete-mcp.apify.actor/mcp
Discourse Forum Search & Threads MCPcommunity.openai.com, discuss.huggingface.co, meta.discourse.org + any public Discoursehttps://apify.com/mutualistic_housing/discourse-forum-mcphttps://mutualistic-housing--discourse-forum-mcp.apify.actor/mcp
Google Trends Realtime & Entities MCPi0OFE realtime trends, trending/rss news, Knowledge Graph autocomplete entitieshttps://apify.com/mutualistic_housing/google-trends-realtime-mcphttps://mutualistic-housing--google-trends-realtime-mcp.apify.actor/mcp
Substack Newsletter, Posts & Podcast MCPPublication search, archives & within-newsletter search, full post Markdown, podcast audio URLshttps://apify.com/mutualistic_housing/substack-newsletter-mcphttps://mutualistic-housing--substack-newsletter-mcp.apify.actor/mcp
Shopify Store Catalog & Search MCPProducts, variants/SKU/price/availability, collections, predictive search on any public Shopify storehttps://apify.com/mutualistic_housing/shopify-store-catalog-mcphttps://mutualistic-housing--shopify-store-catalog-mcp.apify.actor/mcp
Bluesky Social Search & Threads MCPPost search, author feeds, profiles & follower ratios, full reply threads via public AT Protocol AppViewhttps://apify.com/mutualistic_housing/bluesky-social-search-mcphttps://mutualistic-housing--bluesky-social-search-mcp.apify.actor/mcp
SEC EDGAR Filings & XBRL Financials MCPCompany filings (10-K, 10-Q, 8-K, Form 4, 13F), full-text search, company profiles, XBRL financial facts with YoY growthhttps://apify.com/mutualistic_housing/sec-edgar-filings-mcphttps://mutualistic-housing--sec-edgar-filings-mcp.apify.actor/mcp