Skip to content
Agentmart
Submit a tool

EdgarParser MCP

MCP stdio server for source-backed SEC EDGAR financial data from the hosted EdgarParser API.

Connector by henrysouchien · GitHub account verified by the MCP Registry

IndexedMITLocal (stdio)
Write a review

Install

Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.

npx agentmarket install connector/henrysouchien-edgar-mcp

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

MCP stdio server for source-backed SEC EDGAR financial data from the hosted EdgarParser API.

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this server can do and what it asks for, from its tool list and install config. Checked Oct 25, 2026.

Tools
30 read · 0 write · 0 delete · 2 not yet classified
Secrets
1 (API keys, tokens or passwords)
Install scripts
Not scanned yet
Runs as
Python package

Tools by what they do 32

Read from the source code; the running server may list different tools.

Read 30 · Look things up without changing anything.

  • compare_concept
  • compare_filing_tables
  • concept_trend
  • describe_filing
  • extract_filing_file
  • get_concept
  • get_event_filings
  • get_extraction_series
  • get_filing_cover_facts
  • get_filing_document
  • get_filing_evidence
  • get_filing_extractions
Show 18 more tools
  • get_filing_facts
  • get_filing_sections
  • get_filing_tables
  • get_filings
  • get_financials
  • get_issuer_submissions_meta
  • get_metric
  • get_metric_series
  • get_operational_kpi_driver_rows
  • get_operational_kpi_drivers
  • get_statement
  • list_extraction_schemas
  • list_metrics
  • search_extractions
  • search_filing_tables
  • search_filing_text
  • search_metrics
  • warm_metric_cache_status

Not yet classified 2 · We could not tell from the name and description.

  • cite_concept
  • warm_metric_cache

Secrets and settings it asks for

Secrets: values you paste in that let it act as you.

  • EDGAR_API_KEY

Other settings (environment variables or headers).

  • EDGAR_API_URL
  • EDGAR_MCP_OUTPUT_DIR

Files it touches

  • Any path the agent passes to its tools

Tools (32)

Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].

  • cite_concept

    Cite a registry-backed concept by returning the canonical concept value and the filing prose around that value from MD&A, notes, risk factors, and optional cached extraction spans. Use `cite_concept` for metric-anchored narrative joins (concept value first → find the prose around it). For question-shaped narrative retrieval (no anchoring concept), use `get_filing_evidence` instead. The two tools are sharply distinguished: `cite_concept` ALWAYS resolves a canonical concept value and returns the narrative around it; `get_filing_evidence` runs a source-pack planner and surfaces evidence for an a…

  • compare_concept

    Compare one registry-backed concept across a caller-provided list of filers. This is cross-filer comparison, not search: caller ticker order is preserved, and partial coverage is returned per row with available=false. Discovery: choose concept_name from the v1 concept registry (data/concept_registry_v1.json) or from a prior get_statement/get_concept call, then reuse that exact canonical name for every ticker.

  • compare_filing_tables

    Compare structured filing tables across caller-provided tickers in one response. Preserves ticker order and returns per-ticker availability, matching table metadata, and optionally hydrated table rows.

  • concept_trend

    Return a cache-only time series for a registry-backed concept over a period range. v1 uses the latest filing's reported series and has no restatement awareness: it does not return restated or original_value fields. Discovery: choose concept_name from the v1 concept registry (data/concept_registry_v1.json), get_statement output, or a successful get_concept call before requesting the trend.

  • describe_filing

    Show cached data availability for one filing across XBRL, sections, tables, extraction schemas, and markdown. Read-only; does not populate caches.

  • extract_filing_file

    Resolve a short-lived artifact handle issued by get_filing_sections and run scratch extraction for the requested schema via /api/documents/scratch-extract, without creating a canonical filing identity. Discovery: choose schema_name from list_extraction_schemas and pass the artifact_handle returned by get_filing_sections(output="artifact") or by explicit trusted-local file mode. Local file paths and unregistered bytes are never accepted. Artifact-mode handles are consumed by this operation; explicit local-file handles remain reusable until expiry.

  • get_concept

    Get a registry-backed financial concept value from cached XBRL financials. v1 resolves tag-backed concepts only and returns available=false for derivation or unsupported concepts. It never warms caches; call get_financials first when cache_status is cold. Discovery: choose concept_name from the v1 concept registry (data/concept_registry_v1.json) or from statement rows returned by get_statement. Pass the canonical concept name exactly.

  • get_event_filings

    Discover SEC event filings by ticker/CIK, filing-date range, and form type. Use this for deal, financing, proxy, filed-communication, and status-update materials that are not tied to a fiscal quarter's 10-K/10-Q. Do not pass 10-K or 10-Q here; use get_filings for periodic filing discovery, or get_filing_document/get_filing_sections when periodic filing content is needed. Event-form examples include 8-K, 425, proxy forms, S-3/S-3ASR, S-4, FWP, 424B*, 8-A12B, CERT, and SC 13D. Returns accession, issuer CIK, form, filing date, primary document URL, and deterministic event_type labels; it does not…

  • get_extraction_series

    Periodized counts (and optional hits) for langextract spans across a YYYY-Qn/YYYY-FY period range. ISO dates are not accepted. Cache read only. For raw cross-filing hits, use search_extractions.

  • get_filing_cover_facts

    Get exact cover-page DEI facts from a 10-K/10-Q, including citation-ready source metadata. Use this for outstanding-share questions instead of balance-sheet common-stock rows or weighted-average share metrics. Related tools: get_filing_document for markdown, get_filing_evidence for qualitative evidence, and get_filing_extractions for cached structured spans.

  • get_filing_document

    Get a SEC filing as readable markdown. Returns sectioned markdown with ## SECTION: headers. Supports section filtering and pagination via char range or max_chars cap. Pass accession plus cik/form_type/primary_document from get_event_filings to read an exact event filing without falling back to the latest filing for a fiscal quarter. Period-keyed reads are cache backed; exact-accession reads are fetched live. sections accepts canonical keys such as item_1a, item_7, item_7a, item_8, part1_item1, part1_item2, earnings_release, and proxy_statement; Item notation such as "Item 7" is also accepted.…

  • get_filing_evidence

    Plan and retrieve filing evidence in one call for a qualitative SEC filing question. The source planner is internal; inspect its output by setting include_planner_trace=true, or by reading the X-Edgar-Planner-Trace response header when using the HTTP route directly. For metric-anchored joins from a concept value to supporting prose, use cite_concept instead once that Phase 6 tool is shipped. Supported task_intent values include regulatory_risk, concentration_risk, acquisition_strategy, revenue_disaggregation, debt_terms, deal_status, security_offering_terms, and guidance_actuals; deal_terms is…

  • get_filing_extractions

    Return cached langextract spans for one filing, or fetch the filing and run extraction on cache miss. Use this for ticker/year/quarter-keyed filings. Related tools: get_filing_document reads markdown, get_filing_evidence plans qualitative evidence, and get_filing_cover_facts returns DEI facts.

  • get_filing_facts

    Retrieve reported XBRL facts or statement presentation cells from one exact SEC filing accession. Exact-QName selectors perform known-concept lookup, not fuzzy discovery. Use list_metrics or search_metrics before those calls when the filing's QName is not already known. The presentation_occurrences selector instead walks every line and printed column for the requested filing presentation roles. Normalization completeness is enforced by the filing-facts producer. The response is the hosted HTTP filing_facts.v1 payload without MCP-side selection or semantic reshaping.

  • get_filing_sections

    Parse qualitative sections from one filing resolved by ticker/year/quarter. Required call shape: `get_filing_sections(ticker="MSCI", year=2025, quarter=4, sections=["item_1", "item_7"])`. This tool does not accept accession-only calls. If you only have an accession, call get_filing_document for readable markdown, or recover the ticker/year/quarter with get_filings/get_event_filings before requesting sections. Do not pass `form_types`, `forms`, `limit`, `years`, or `period`. Section filters accept canonical keys like "item_1" and "part1_item2", or filing headings like "Item 1. Business". Use s…

Show 17 more tools
  • get_filing_tables

    Fetch structured filing tables. Listing modes return metadata only; supplying table_id returns a single table with full row data. Pass accession to require the returned table cache to match a specific resolved filing identity. Omit source or use source='auto' for ordinary 10-K/10-Q tables. Use source='proxy' for DEF 14A proxy tables; use source='20f' or source='6k' with accession to target a specific foreign issuer filing from get_filings. Related tools: get_filing_document reads markdown, get_filing_evidence finds prose evidence, and get_filing_cover_facts returns exact cover-page DEI facts.

  • get_filings

    Fetch SEC filing metadata for one fiscal period. Required call shape: `get_filings(ticker="MSCI", year=2025, quarter=4)`. This is not a recent-filings/list/search endpoint. Do not pass `form_types`, `forms`, `limit`, `years`, or `period`. For annual 10-K discovery use quarter=4. For quarterly 10-Q discovery use the target fiscal quarter. Defaults to 10-Q, 10-K, and 8-K earnings release filings. Use source='20f' or source='6k' to list foreign issuer filings and discover accessions for targeted table retrieval. Do not use source='proxy' here: get_filings does not list DEF 14A proxy filings. Fo…

  • get_financials

    Extract matcher-produced numeric financial rows from one fiscal filing. Required call shape: `get_financials(ticker="MSCI", year=2024, quarter=4, full_year_mode=True)`. This is not a multi-year/list endpoint. Do not pass `years`, `period`, `limit`, `statement`, `forms`, or `form_types`. For a five-year history, call this tool once per target fiscal period, or use get_statement range mode when a bulk template-backed statement is acceptable. Returns structured JSON with income statement, balance sheet, and cash flow data. If returned, `scope_warnings` flag mixed-scope cash-flow facts. `scope_br…

  • get_issuer_submissions_meta

    Fetch an issuer's SEC submissions header by CIK. Returns the issuer name, tickers, exchanges, and fiscal year end directly from the public SEC submissions JSON. This tool does not require EDGAR_API_KEY. CIK must contain at most 10 digits; shorter values are zero-padded to the SEC's 10-digit format.

  • get_metric

    Get a specific financial metric by common name or XBRL tag and return current/prior values with YoY comparison. For guessed or user-facing names, call search_metrics or list_metrics first and pass an exact discovered metric_name into this tool; do not retry near-miss names blindly. Optional role filters accept friendly statement roles such as ["cash_flow"] or ["balance_sheet"]. If the response says the cache is cold, call warm_metric_cache with warm_hint.body.items, poll warm_metric_cache_status, then retry get_metric. Cash-flow metrics may include `scope_warnings` and `scope_bridges`; treat b…

  • get_metric_series

    Fetch one metric across multiple periods in a single call, using cache-first execution and per-period status reporting. Optional role filters are applied per period before the best match is selected. Pass `axis_key` exactly as returned by search_metrics/list_metrics when the user needs a dimensional fact such as product revenue. For FCF, FCF margin, cash conversion, or trend questions, inspect per-period `scope_warnings` and `scope_bridges`. Bridges require direct, period-aligned CFO-scope facts; when a warning instead reports `bridge_status="unavailable"`, present the raw trend and underlying…

  • get_operational_kpi_driver_rows

    Return the strict producer-owned operational-KPI driver row DTO from `/api/operational-kpis/drivers`. Use these versioned, calculation-ready rows for programmatic consumers and cross-transport interoperability. `topic` optionally scores rows against a requested metric. Set `filter_to_topic=true` to exclude rows with no positive topic match. `include_non_numeric` preserves explicitly non-numeric observations when the producer has them. The MCP transport returns the HTTP data payload unchanged and does not infer missing semantic fields. For exploratory filing research that needs narrative chan…

  • get_operational_kpi_drivers

    Return structured operational KPI values and driver growth rates from a filing's MD&A/earnings discussion. Use this for non-XBRL operating metrics such as Gross Bookings, MAPCs, Trips, customer counts, revenue driver bridges, take-rate inputs, segment growth rates, constant-currency growth, and volume-vs-price decomposition. It discovers candidate labels from the filing document and returns citation-ready rows with snippets; it does not run the slower generic KPI catalog extractor. For the strict producer-owned operational-KPI row DTO mirrored from HTTP, use get_operational_kpi_driver_rows ins…

  • get_statement

    Return a bulk structured statement (income statement, balance sheet, or cash flow statement) from a deterministic v1 statement template and the v1 concept registry. Supports single-period mode with year+quarter and range mode with period_from+period_to; the two modes are mutually exclusive. v1 templates contain tag-kind concepts only, so computed or derivation rows such as margins and ratios belong in separate concept_trend calls. Note for model_build / AI-excel-addin populator consumers: this tool is NOT pre-approved as a model_build input. Production model_build flows must continue to use `…

  • list_extraction_schemas

    List the document extraction schemas available through the EDGAR API.

  • list_metrics

    List available metric tags for a filing period so an agent can choose an exact metric_name before calling get_metric. Cash-flow candidates may carry `scope_warning` and `scope_bridge_ids`; validate those before using CFO in margin or trend formulas. Debt candidates may carry `debt_component_kind` values such as `instrument_principal`, `coupon_rate`, `finance_lease`, `other_notes`, or `total_debt_rollup`; consumers own any source-basis sum.

  • search_extractions

    Search cached langextract spans across filings using structured filters. Periods must use YYYY-Qn or YYYY-FY, not ISO dates. Read-only; cache misses are reported and never trigger LLM extraction.

  • search_filing_tables

    Cross-filing search over an Edgar table index for a ticker. Matches on table description, table_type, and section. Returns metadata only; use get_filing_tables with the table_id to fetch full table contents. Use search_filing_text for same-filing prose search.

  • search_filing_text

    Search cached markdown within one SEC filing keyed by ticker, year, quarter, and source. Read-only: cold caches return cache_status='cold' and are not warmed. CC5 prefix exception: although search_* usually denotes cross-filing search, search_filing_text is intentionally same-filing only and requires the per-filing ticker/year/quarter inputs. Use search_filing_tables for cross-filing table metadata search. Hits include corpus_coverage. Mint fields appear only when Edgar is the authoritative parser-side source for the cited span. Treat corpus_coverage="unknown" exactly like "covered": attempt t…

  • search_metrics

    Search available filing metrics by natural-language query and return ranked candidates. Optional role filters accept friendly statement roles such as ["cash_flow"], ["balance_sheet"], or ["income_statement"]. Cash-flow matches may carry mixed-scope warnings and bridge IDs; inspect the returned top-level `scope_bridges` before using CFO in FCF-style formulas. Debt refinance/tranche queries surface structured XBRL components with `debt_component_kind`; this tool does not pre-sum refinanceable debt.

  • warm_metric_cache

    Enqueue async cache warming for metric periods. Paid/internal API tiers only. Each item requires ticker, year, quarter, and optional full_year_mode. Returns a job_id for warm_metric_cache_status polling.

  • warm_metric_cache_status

    Poll an async metric cache warming job by job_id. Discovery: job_id is returned by warm_metric_cache; do not invent one.

Signals

Stars
0
Forks
0
Open issues
0
Weekly downloads
103
Last commit
Sep 16, 2026 (1 month ago)
Last release
Aug 20, 2026 (2 months ago)
Last package publish
Sep 16, 2026 (1 month ago)

From GitHub (fetched Oct 24, 2026) and the package registry.

Details

Registry name
io.github.henrysouchien/edgar-mcp
Version
1.0.2
Auth
API key
Packages
pypi edgar-mcp
License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026
Cite this page

EdgarParser MCP. Agent Mart. https://agentmart.dev/connectors/henrysouchien-edgar-mcp (last updated 2026-10-24)