MCP Tools
edgar.tools exposes MCP tools for SEC filing intelligence, organized into eight categories: Analyze, Research, Compare, Notes, Signals, Monitor, Funds & Advisers, and Aggregation. The tools/list endpoint advertises only the tools your account's tier includes. See MCP Tiers for the full mapping, or the AI plugin landing page for the visual ladder.
Start with search_companies to resolve a company, then use the identifier with other tools. For Analyst-tier multi-tool workflows (theses, peer comparisons, portfolio pulses), see MCP Prompts — five recipe prompts that orchestrate the aggregation tools below into structured outputs.
The "Required tier" column below is the minimum tier that can call the tool — tools/list doesn't advertise it to lower tiers. Within tiers that can call a tool, depth differences still apply (a Free user calling company_brief gets a truncated profile compared to a Pro user). Per-tool depth differences are noted in each tool's section.
| Category | Tool | Purpose | Required tier |
|---|---|---|---|
| Analyze | analyze_filing | Parse any SEC filing URL or accession number | Analyst |
| Analyze | filing_details | Open a filing for its digest + part manifest, or fetch a named part | Analyst |
| Analyze | filing_section | Pull one named section — MD&A, risk factors, an 8-K item, a note, or the press-release exhibit | Pro |
| Research | search_companies | Find companies by name, ticker, CIK | Free |
| Research | search_entities | Federated search across companies, funds, advisers, persons | Free |
| Research | company_brief | Full intelligence snapshot | Free |
| Research | account_dossier | One-call sales-shaped account dossier | Analyst |
| Research | company_filings | Recent filings list | Free |
| Research | account_status | Current tier, gated tools, upgrade URL, remaining quota | Free |
| Research | edgar_recipes | Fetch or discover a prompt-framework recipe | Free |
| Research | financial_snapshot | 12 financial ratios | Pro |
| Research | financial_statements | Full XBRL statements | Pro |
| Research | financial_trends | Multi-year time series with growth rates | Pro |
| Compare | compare_companies | Side-by-side comparison (up to 10 companies) | Pro |
| Notes | edgar_notes | XBRL notes drill-down | Pro |
| Notes | disclosure_search | Search XBRL narrative text | Pro |
| Notes | search_filings | Full-text search across all SEC filings (or a count-over-time trend) | Pro |
| Signals | insider_activity | Form 4 insider trading + sentiment | Pro |
| Signals | institutional_ownership | 13F institutional holders | Pro |
| Signals | material_events | 8-K events with classification | Pro |
| Monitor | live_filings | Real-time SEC filing feed | Pro |
| Funds | search_funds | Search mutual funds and ETFs | Pro |
| Funds | fund_profile | Fund details, holdings, expenses | Pro |
| Advisers | search_advisers | Search SEC-registered advisers | Pro |
| Advisers | adviser_profile | Adviser details and compliance | Pro |
| Aggregation | position_intel | Single-call bundle for one ticker — catalysts, ownership shifts, risk-factor diff | Analyst |
| Aggregation | peer_facts | Peer-comparison rows for one target vs. up to 10 peers along one dimension | Analyst |
| Aggregation | person_intel | One person's full SEC footprint — insider roles, 13D/G stakes, ADV control roles, trades | Analyst |
| Aggregation | portfolio_events | Bulk 8-K material events across up to 50 tickers | Analyst |
Analyze#
analyze_filing#
Paste any SEC filing URL or accession number. Auto-detects form type and returns structured intelligence. For prospectus filings (424B), returns syndicate details, dilution analysis, and offering lifecycle data.
| Parameter | Type | Description |
|---|---|---|
url | string (required) | SEC filing URL or accession number (e.g. 0000320193-24-000081) |
Example: "Analyze this filing: https://www.sec.gov/Archives/edgar/data/320193/000032019324000081/0000320193-24-000081-index.htm"
Tier. Analyst and above. Returns full structured analysis including prospectus syndicate, dilution, and lifecycle details. Form-type aware: Form 4s get insider transactions; 8-Ks get material events; 10-Ks get financial summaries plus notes TOC; 13F-HRs get top holdings; 424Bs get the prospectus extract.
filing_details#
Progressive-disclosure filing reader — the open→drill loop of analyze_filing plus filing_section in one tool. Open a filing (pass url) to get its metadata, form-specific intelligence, a bounded digest, and an available_parts manifest of part handles with token-size hints. Fetch depth by adding part from that manifest to pull just that section's full content.
| Parameter | Type | Description |
|---|---|---|
url | string (required) | SEC filing URL or accession number (e.g. 0000320193-24-000123) |
part | string | A handle from the filing's available_parts manifest (e.g. press_release, mdna, risk_factors, eight_k_item:2.02, note:<XBRL TextBlockConcept>) |
tables | bool | For press_release/earnings_release parts — include extracted tables |
prose | bool | For press_release/earnings_release parts — include prose body |
Example: "Open this 8-K, then read its press-release exhibit: 0000320193-24-000123"
Tier. Analyst and above. Open first, read the manifest, pull only the parts the question needs.
filing_section#
Return the body of a single named section of a filing as plain text (markdown for earnings_release). Use this when you need filing prose — an MD&A paragraph, a specific risk-factor body, a press release — instead of fanning the whole 10-K through the agent.
| Parameter | Type | Description |
|---|---|---|
accession | string (required) | Accession number (e.g. 0000320193-24-000123) or SEC EDGAR URL |
section | string (required) | mdna, business_overview, risk_factors, earnings_release / press_release (first EX-99.1/99.2 exhibit on any 8-K), note:<XBRL TextBlock concept>, or eight_k_item:<N.NN> |
Example: "Show me the risk factors section from Apple's latest 10-K"
Tier. Pro and above. Free tier returns a 200-character preview plus an upgrade hint.
Research#
search_companies#
Search for SEC-registered companies by name, ticker, or CIK. Use this first to resolve a company before calling other tools. Free tier, no authentication required.
| Parameter | Type | Description |
|---|---|---|
query | string (required) | Company name, ticker symbol, or CIK number |
limit | int (default 5) | Max results to return (1–20) |
Example: "Find me the CIK for Tesla"
search_entities#
Federated search across every SEC entity directory — companies, funds, advisers, and persons — in one call. Returns hits[] tagged by kind, each with per-kind rich fields and recommended follow-up tools. Use search_companies instead when the query is known to be a company.
| Parameter | Type | Description |
|---|---|---|
query | string (required) | Name, ticker, CIK, CRD, or person name |
entity_type | string | Restrict to one kind: company, fund, adviser, or person. Omit for a federated fan-out. |
limit | int (default 10) | Max results to return (1–25) |
window_days | int (default 30) | Recent-filings window (1–90) |
Example: "Search SEC for anything named Renaissance Technologies"
Tier. Available to all tiers. Free tier resolves company hits and the federated fan-out; Pro widens the fan-out to fund, adviser, and person hits.
company_brief#
Full intelligence snapshot for a company: profile, financials, insider sentiment, material events, and institutional holders in a single call.
| Parameter | Type | Description |
|---|---|---|
company | string (required) | Ticker, CIK, or company name |
Example: "Give me a full brief on NVIDIA"
Tier. Available to all tiers. Free tier returns basic profile + summary data; Pro and above return full cross-dataset analysis with financials, insider sentiment, events, and holders.
account_dossier#
Sales-shaped account dossier for a public company in one call: identity, financial snapshot, recent 8-Ks (with deterministic routing tags), current leadership plus recent officer changes, insider buy/sell signals, peer companies, and data-quality indicators. Built for sales-call prep and account research — every executive and peer carries a CIK and every event an accession, so follow-up questions chain straight into position_intel, analyze_filing, or compare_companies.
| Parameter | Type | Description |
|---|---|---|
company | string (required) | Ticker, CIK, or company name |
sections | string[] | Sections to return. Default: identity, financial_snapshot, recent_events, leadership, insider_signals, peers. Opt-in: ownership, risk_factors, strategic_priorities |
include_prior_roles | string | none (default), key (CEO + CFO employment history), or all |
recent_events_window_days | int (default 90) | 8-K look-back window, up to 365 days |
max_recent_events | int (default 10) | Max events returned (1–30) |
max_top_holders | int (default 10) | Max holders in the ownership section (1–25) |
max_notable_insider_transactions | int (default 5) | Max notable transactions (1–20) |
Example: "Prep me for my call with Salesforce"
Tier. Analyst and above (not advertised to lower tiers — company_brief covers the lighter "describe X" intent). Returns all sections, prior-role history, and a 365-day event window.
company_filings#
Get recent SEC filings for a company. Returns filing metadata including form type, date, and accession number.
| Parameter | Type | Description |
|---|---|---|
company | string (required) | Ticker, CIK, or company name |
form | string (Pro+) | Filter by form type (e.g. 10-K, 8-K, 4) |
days | int (default 90) | Look-back period in days |
limit | int (default 10) | Max filings to return. Free: 10, Pro+: 100 |
Example: "What has Apple filed in the last 30 days?"
Tier. Available to all tiers. Free tier capped at 10 filings per call with no form filter; Pro and above unlock 100-result calls and form-type filtering.
account_status#
Get the calling account's current tier, the list of tools and prompts it can call, remaining monthly quota, and the upgrade URL. Useful when an AI agent encounters a tier_denied or quota_exceeded envelope and needs to explain the situation to the user.
| Parameter | Type | Description |
|---|---|---|
| _(none)_ | Reads identity from the bearer token |
Example: "Why did that last tool call fail? Check my plan."
Tier. Available to all tiers. Returns the tier-specific tool list and quota state.
edgar_recipes#
Fetch or discover a prompt-framework recipe. Recipes are LLM prompt templates (read / track / research buckets) that orchestrate edgar.tools MCP tools into analyst-quality output grounded in real filings. All arguments are optional: name returns a recipe's full markdown; query keyword-searches the library and returns a shortlist; bucket filters the list; no arguments returns the full catalog.
| Parameter | Type | Description |
|---|---|---|
name | string | Recipe slug (e.g. forge) — returns that recipe's full markdown body |
query | string | Keyword search across the library — returns metadata to pick from |
bucket | string | Filter the list to a bucket (read, track, research) |
Example: "Show me the edgar.tools recipe for a bear-case teardown"
Tier. Available to all tiers. Browse the recipe hub at /mcp/recipes.
financial_snapshot#
Get financial ratios for a company from its latest annual filing (10-K). Covers profitability, returns, liquidity, and leverage.
| Parameter | Type | Description |
|---|---|---|
company | string (required) | Ticker, CIK, or company name |
Example: "What are Apple's financial ratios? Is the company healthy?"
Tier. Pro and above. Returns all 12 ratios across 4 categories (profitability, returns, liquidity, leverage) plus a health score.
financial_statements#
Get full XBRL financial statements for a company. Returns line-item detail for income statement, balance sheet, and/or cash flow statement.
| Parameter | Type | Description |
|---|---|---|
company | string (required) | Ticker, CIK, or company name |
statement | string | Filter to one: income_statement, balance_sheet, or cash_flow. Omit for all three. |
period | string | Period type: annual or quarterly |
Example: "Show me Tesla's full income statement from their latest 10-K"
Tier. Pro and above.
financial_trends#
Multi-year time series for financial concepts with growth rates, CAGR, and trend classification.
| Parameter | Type | Description |
|---|---|---|
company | string (required) | Ticker, CIK, or company name |
concepts | string[] | Financial concepts to track (e.g. Revenue, NetIncome) |
years | int (default 3) | Number of years of history (up to 10) |
Example: "Show me Apple's revenue and net income trends over the last 5 years"
Tier. Pro and above. Up to 10 years of history, all concepts, trend classification and anomaly flags.
Compare#
compare_companies#
Side-by-side comparison of multiple companies with intelligence signals. Compare financials, health scores, insider sentiment, and material events.
| Parameter | Type | Description |
|---|---|---|
identifiers | string[] (required) | List of tickers, CIKs, or names (e.g. ["AAPL", "MSFT", "GOOGL"]) |
metrics | string[] | Metrics to compare (all available) |
periods | int | Number of periods (multiple supported) |
Example: "Compare Apple, Microsoft, and Google on profitability and leverage"
Tier. Pro and above. Up to 10 companies, all metrics, health + insider + event signals.
Notes#
edgar_notes#
Drill into the financial statement notes of a 10-K or 10-Q by topic — revenue, leases, segments, debt, fair value, and more.
| Parameter | Type | Description |
|---|---|---|
company | string (required) | Ticker, CIK, or company name |
topic | string | Note topic (e.g. revenue, leases, segments) |
Example: "Show me Apple's segment reporting note from their latest 10-K"
Tier. Pro and above. Returns matched notes with their full plain-text bodies and a concatenated focused context; no matches falls back to the full notes table of contents.
disclosure_search#
Search XBRL narrative text disclosures across a company's SEC filings. Find revenue recognition policies, risk factors, segment details, and other text-block content.
| Parameter | Type | Description |
|---|---|---|
company | string (required) | Ticker, CIK, or company name |
query | string (required) | Search keyword or phrase (e.g. "revenue recognition", "risk factors") |
form | string | Filter by form type: 10-K or 10-Q |
year | int | Filter by fiscal year (e.g. 2024) |
max_results | int (default 10, max 25) | Maximum results to return |
diff_only | bool | Show only changes between periods |
min_novelty | float | Minimum novelty score (0–1) to filter routine disclosures |
Example: "What is Apple's revenue recognition policy? Show me the relevant disclosure."
Tier. Pro and above. Returns up to 25 results with full text, 400-character snippets, and form/year filters.
search_filings#
Renamed fromsearch_filings_full_text(the old name still works as a deprecated alias until 2026-08-15 — switch tosearch_filings).
Full-text search across every SEC filing since 2001. Supports phrase quotes ("material weakness"), boolean OR/NOT, NEAR proximity (NEAR(revenue, decline, 5)), and suffix wildcards (gas*). Returns matched filings with highlighted snippets from the document body — or, in trend mode, a count-over-time series instead of hits.
| Parameter | Type | Description | ||||
|---|---|---|---|---|---|---|
q | string (required) | Search query. Case-sensitive form codes when used as terms. | ||||
forms | string[] | Filter by SEC form types (e.g. ["10-K", "8-K"]) | ||||
ciks | string[] | Filter by company CIKs (zero-padding optional) | ||||
date_from | string | Start date YYYY-MM-DD. Omitting both dates defaults to the last 12 months (see below). | ||||
date_to | string | End date YYYY-MM-DD. In trend mode, the anchor the windows count back from (default today). | ||||
items | string[] | 8-K item codes (e.g. ["2.02"]) — only with forms=["8-K"] | ||||
sort | string (default relevance) | relevance (score blended with recency), recent, or oldest | ||||
expand | bool (default true) | Widen a colloquial q into filing-language phrases (e.g. buyback also matches "share repurchase program"); the added phrases come back in also_matched. Set false for a literal search. Quoted/boolean/wildcard queries pass through untouched. | ||||
understand | bool (default true) | Lift structured facets out of the q text into filters: form/item codes (apple 10-K → forms=["10-K"]) and a filer-scoped company (apple 10-K → ciks=[Apple], apple's buyback → ciks=[Apple] + expanded buyback). Only cue-marked entities resolve — a cashtag ($AAPL), a possessive (apple's), or a name sitting next to a form code — and only on an unambiguous match. The interpretation comes back in query_understanding. Set false to search raw text; auto-off when you pass explicit forms/ciks/items. | ||||
size | int (default 10) | Results per call (max 50) | ||||
from | int (default 0) | Pagination offset. Bounded by your tier's total result cap. | ||||
include_snippets | bool (default true) | Set false to skip snippet generation when only metadata is needed | ||||
interval | string | Trend mode: day \ | week \ | month \ | quarter \ | year. When set, returns a series[] of counts instead of hits. |
periods | int (default 6) | Trend mode: number of windows to count back from date_to/today. Capped 6 (free) / 24 (pro+). |
When both date_from and date_to are omitted, the search defaults to the last 12 months (the response reports this as applied_default_window) — pass date_from: "2001-01-01" to search all of EDGAR history.
A plain query is widened into the filing-language phrases it maps to — buyback searches "share repurchase program" too — so the topic isn't missed just because the filer used formal wording. The response echoes what was added in also_matched; pass expand: false for a literal-only search. This applies in trend mode too: the whole series then counts the expanded phrase set.
Example (search): "Find every 10-K filed since 2024 that mentions material weakness within 5 words of internal control"
Example (trend): "How many 8-Ks mentioned 'restructuring' each month for the last 12 months?" → interval: "month", periods: 12 returns series[] { start, end, count }. Counts are document counts (a filing matched in N documents counts N times).
Tier. Pro and above. Pro: 50 per call, paginate up to 500. Analyst: 50 per call, paginate up to 1,000. Enterprise: paginate up to the EFTS hard ceiling (10,000).
Signals#
insider_activity#
Get insider trading activity (Form 4) for a company. Shows who is buying, selling, or exercising options with transaction details and overall sentiment analysis.
| Parameter | Type | Description |
|---|---|---|
company | string (required) | Ticker, CIK, or company name |
days | int (default 90) | Look-back period in days (1–365) |
transaction_type | string | Filter: all, purchase, or sale |
limit | int (default 20) | Max transactions to return (1–100) |
Example: "Show me insider trades at Apple in the last 60 days"
Tier. Pro and above. Full transaction history with purchase/sale filtering and analysis hints.
institutional_ownership#
Get 13F institutional holders for a company. Shows which institutions hold the stock, position sizes, and changes quarter over quarter.
| Parameter | Type | Description |
|---|---|---|
company | string (required) | Ticker, CIK, or company name |
quarter | string | Specific quarter (e.g. 2024-Q3). Default: latest. |
limit | int (default 20) | Max holders to return |
Example: "Who are the largest institutional holders of Tesla?"
Tier. Pro and above. Full holder list with quarter-over-quarter history.
material_events#
Get material events (8-K filings) for a company with item classification. Shows M&A activity, leadership changes, earnings releases, and other significant corporate events.
| Parameter | Type | Description |
|---|---|---|
company | string (required) | Ticker, CIK, or company name |
days | int (default 90) | Look-back period in days (1–365) |
item | string | Filter by 8-K item code (e.g. 1.01, 2.02) |
limit | int (default 20) | Max events to return (1–50) |
Example: "What material events has Microsoft reported recently?"
Tier. Pro and above. Full event history with item code filtering and high-impact hints.
Monitor#
live_filings#
Get recent SEC filings from a real-time feed. Without filters, returns a summary of activity with notable 8-K highlights. With filters (form type, company), returns individual filings.
| Parameter | Type | Description |
|---|---|---|
form | string | Filter by form type (e.g. 10-K, 8-K, 4) |
cik | int | Filter by company CIK |
hours | int (default 2) | Time window in hours (1–48) |
limit | int (default 25) | Max filings to return (1–100) |
Example: "What SEC filings were submitted in the last hour?"
Tier. Pro and above. Full filing details with filtering by form type and company; 48-hour window.
Funds#
search_funds#
Search mutual funds and ETFs by name.
| Parameter | Type | Description |
|---|---|---|
query | string (required) | Fund name or partial name |
limit | int (default 10) | Max results to return |
Example: "Find Vanguard S&P 500 funds"
Tier. Pro and above.
fund_profile#
Get fund details including holdings, expense ratios, and returns.
| Parameter | Type | Description |
|---|---|---|
fund | string (required) | Fund name, ticker, or series ID |
Example: "What are the top holdings and expense ratio for VOO?"
Tier. Pro and above. Up to 25 holdings, per-class expenses, and returns history.
Advisers#
search_advisers#
Search SEC-registered investment advisers by name, with optional state filtering.
| Parameter | Type | Description |
|---|---|---|
query | string (required) | Adviser name or partial name |
state | string | Filter by state (e.g. CA, NY) |
limit | int (default 20) | Max results to return |
Example: "Find investment advisers named Bridgewater"
Tier. Pro and above.
adviser_profile#
Get detailed information about a specific SEC-registered investment adviser by CRD number. Includes AUM, client types, fee structures, and compliance details.
| Parameter | Type | Description |
|---|---|---|
crd | string (required) | Adviser CRD number |
Example: "Show me the profile for Bridgewater Associates"
Tier. Pro and above. Full profile with executives, private funds, related persons, and compliance details.
Aggregation#
Aggregation tools return structured, multi-signal envelopes in one tool call. position_intel, peer_facts, and portfolio_events are designed to be consumed by the recipe prompts — a recipe synthesizes them into a thesis, peer table, or portfolio summary; person_intel bundles one person's full SEC footprint. All are Analyst-tier.
position_intel#
Single-call intelligence bundle for one ticker. Returns recent catalysts (8-K filings within the lookback), ownership shifts (insider Form 4 clusters + 13F net flow), and the risk-factor diff between the two latest 10-Ks.
| Parameter | Type | Description |
|---|---|---|
ticker | string (required) | Ticker, CIK, or company name |
lookback | string (default 90d) | Window for catalysts/insider signals — 30d, 90d, 6m, 1y |
Example: "Pull a position intel bundle for NVDA over the last 90 days"
Tier. Analyst and above. Pairs with the `position_thesis` recipe prompt to compose a structured single-name thesis from one tool call.
peer_facts#
Structured peer-comparison rows for a target ticker against up to 10 peers along one dimension. Returns aligned rows so a recipe can drop them into a comparison table without per-peer post-processing.
| Parameter | Type | Description |
|---|---|---|
ticker | string (required) | Target ticker, CIK, or company name |
peers | string[] (required) | Peer tickers (1–10) |
dimension | string (required) | One of: financial_snapshot, insider_activity, ownership, 8k_items |
Example: "Run peer_facts on ARCC against MAIN, BXSL, PSEC, OBDC on financial_snapshot"
Tier. Analyst and above. Pairs with the `peer_comparison` recipe prompt for narrative synthesis.
portfolio_events#
Bulk 8-K material events across a portfolio of up to 50 tickers. Returns per-ticker structured events so a recipe prompt can synthesize themes, rank the most material, and call out quiet names.
| Parameter | Type | Description |
|---|---|---|
tickers | string[] (required) | Portfolio tickers/CIKs (1–50) |
since | string | ISO 8601 date (YYYY-MM-DD) lower bound. Default 30 days ago |
Example: "Pull portfolio_events for [MAIN, ARCC, BXSL, PSEC] since 2026-04-01"
Tier. Analyst and above. Pairs with the `portfolio_pulse` recipe prompt for cross-portfolio narratives.
person_intel#
One person's full SEC footprint by CIK or name (e.g. Carl Icahn, Bill Ackman) — for activist tracking, insider/officer watch, and D&O / KYC background. Returns the person's Form 3/4/5 insider roles, Schedule 13D/G activist positions (with intent), Form ADV control roles, and trade history in one call. Use this when the subject is a person; use insider_activity for a company's Form 4 insiders — activists who file 13D personally never appear there.
| Parameter | Type | Description |
|---|---|---|
person | string (required) | CIK or person name. Ambiguous names return candidates — retry with a CIK. |
detail | string | compact (default) caps the transaction history; full returns the extended history. Positions, 13D/G, and adviser roles are full in both modes. |
Example: "What has Carl Icahn filed across the SEC?"
Tier. Analyst and above.
Common 8-K item codes#
Use these codes with the item parameter on material_events.
| Code | Description |
|---|---|
| 1.01 | Entry into a Material Definitive Agreement |
| 1.02 | Termination of a Material Definitive Agreement |
| 2.01 | Completion of Acquisition or Disposition |
| 2.02 | Results of Operations and Financial Condition (Earnings) |
| 5.02 | Departure/Election of Directors or Officers |
| 7.01 | Regulation FD Disclosure |
| 8.01 | Other Events |
To summarize#
- Start with
search_companiesto find a company, then use the identifier with other tools. - The
tools/listendpoint advertises only your tier's tools. See MCP Tiers. - All tools are read-only — they query SEC data, never modify anything.
- Claude automatically picks the right tool based on your question.
- For multi-tool workflows — single-name theses, peer comparisons, portfolio pulses, earnings postmortems, and red-flag scans — see MCP Prompts for the five recipe prompts that orchestrate the aggregation tools above.