SEC EDGAR

io.github.danishashkoPublished by GitHub account danishashkov1.0.2Updated Oct 24, 2026

SEC EDGAR filings (10-K, 10-Q, 8-K), XBRL financials, and full-text filing search. No API key.

The publisher's own server: edgar.tools SEC Intelligence

VerifiedSTDIODesktop onlyWeb Search & ScrapingFinance

Overview

AI-generated overview

A local MCP server that lets an assistant look up U.S. SEC EDGAR company filings, XBRL financials and full-text filing search by ticker, CIK or name.

What you can do
Look up companies by name or ticker and resolve their CIK, with a configurable result limit and markdown or JSON output format throughout the tools. List recent filings of any form type with dates and document links, or fetch the newest filing of a given type in one call. Read headline XBRL financials such as revenue, net income, assets, equity, cash and EPS, or pull the reported history of a single GAAP concept over time. Run full-text keyword or phrase searches across roughly the last ten years of filings, optionally filtered by form type.
When to use it
Useful when you want to ask about U.S. public companies in natural language: latest annual or quarterly reports, recent event filings, headline financials, a metric's trend over several years, or which companies mention a topic in their filings. Suited to personal, educational and research use rather than production financial analysis.
Requirements
Runs locally over stdio, typically started with npx from the npm package edgar-mcp; Node.js 16+ and Python 3.10+ are required, and the first launch creates a Python environment and installs the dependency. The SEC_USER_AGENT environment variable should hold a descriptive user agent with contact information. Network access to the public SEC EDGAR APIs is needed; no API key or account is required.
Before you install
The SEC_USER_AGENT variable asks for your own name or email, which is sent to the SEC with each request; a default is provided, so set your own to comply with SEC policy. Requests go directly from your machine to the SEC, with nothing stored or proxied. EDGAR limits requests to about 10 per second and the server retries on rate limits. Data is provided as-is and should be verified against the original filings; the project is not affiliated with or endorsed by the SEC.

Installation

In SourceWeft

  1. Open SEC EDGAR in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

SEC EDGAR MCP Server 🏛️

[npm version] [npm downloads] [Python] [License: MIT]

U.S. SEC filings and financial data for Claude Desktop and any MCP-compatible client, powered by SEC EDGAR. Search companies, pull filings (10-K, 10-Q, 8-K, Form 4, ...), read XBRL financials, and full-text search across all filings — all from natural language. No API key required.

npm package: edgar-mcp  ·  GitHub repo: danishashko/edgar-mcp.

🎯 What You Get

  • 🔎 Company lookup by name or ticker → CIK
  • 🗂️ Recent filings (any form type) with direct document links
  • 📄 Latest filing of a type (newest 10-K / 10-Q / 8-K) in one call
  • 💰 Financial highlights (revenue, net income, assets, equity, EPS) from XBRL
  • 📈 Concept history — any GAAP line item over time
  • 🔬 Full-text search across the last ~10 years of filings

Every tool returns human-readable markdown by default, or structured JSON on request (response_format: "json"). Lightweight (Python standard library + mcp only), no API key, retries on rate limits.

🚀 Quick Start

Add this to your Claude Desktop config and restart Claude:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
json
{  "mcpServers": {    "edgar": {      "command": "npx",      "args": ["-y", "edgar-mcp"],      "env": {        "SEC_USER_AGENT": "your-app-name [email protected]"      }    }  }}

The SEC asks every API client to send a descriptive User-Agent with contact info. Set SEC_USER_AGENT to your own name/email (a default is provided so it works out of the box). On first launch the npx wrapper creates an isolated Python environment and installs the dependency (one-time, ~a minute). You need Python 3.10+ and Node.js 16+.

Prefer a global install?

bash
npm install -g edgar-mcp
json
{  "mcpServers": {    "edgar": {      "command": "edgar-mcp",      "env": { "SEC_USER_AGENT": "your-app-name [email protected]" }    }  }}

🔧 Available Tools

ToolWhat it returnsParameters
search_companyCompanies matching a name/ticker, with their CIKquery, limit
get_recent_filingsRecent filings (form, dates, link), optional form filteridentifier, form_type, limit
get_latest_filingThe newest filing of a given type, with a document linkidentifier, form_type
get_company_factsHeadline financials (revenue, net income, assets, equity, cash, EPS)identifier
get_conceptOne XBRL concept's reported history over timeidentifier, concept, limit
full_text_searchFilings matching a keyword/phrase across all companiesquery, forms, limit

Every tool also accepts response_format ("markdown", the default, or "json"). identifier accepts a ticker, CIK, or company name.

Common XBRL concepts for get_concept: Revenues / RevenueFromContractWithCustomerExcludingAssessedTax, NetIncomeLoss, Assets, Liabilities, StockholdersEquity, EarningsPerShareDiluted.

💬 Example Prompts

Once the server is connected, just ask Claude:

  • "What's Apple's latest 10-K?"
  • "Show me Tesla's recent 8-K filings."
  • "What are Microsoft's headline financials?"
  • "Show me NVIDIA's net income over the last few years."
  • "Which companies mention 'quantum computing' in their 10-Ks?"
  • "Find the CIK for Berkshire Hathaway."

🐛 Troubleshooting

"SEC EDGAR is rate-limiting requests" EDGAR allows ~10 requests/second. The server retries automatically; wait a moment if it persists.

"Not found" Use search_company to confirm the exact ticker/CIK first.

"Command not found" / "Python not found" Ensure Python 3.10+ and Node.js 16+ are installed and on your PATH. On macOS/Linux, try python3.

Tools not showing up in Claude

  1. Confirm the config file is valid JSON (no trailing commas).
  2. Fully quit and reopen Claude Desktop.

Using a different model or provider (LiteLLM, OpenRouter, NVIDIA NIM, a local model) This server never talks to a model. Your client starts it as a local process and speaks JSON-RPC over stdin/stdout, so changing ANTHROPIC_BASE_URL or swapping the model behind your client has no effect on it. If tools stop firing after a switch like that, check two things: the model has to support function calling, and a proxy configured to drop unsupported parameters can silently strip your tool definitions, which produces no error at all. Run /mcp in your client (or claude mcp list) to confirm the server is connected before suspecting the server.

🛠️ Manual Installation (Alternative)

If you would rather run the Python file directly instead of via npx:

1. Download the server and install the dependency

bash
pip install mcp

(or pip3 on macOS/Linux)

2. Point Claude Desktop at it

json
{  "mcpServers": {    "edgar": {      "command": "python3",      "args": ["/absolute/path/to/edgar_mcp.py"],      "env": { "SEC_USER_AGENT": "your-app-name [email protected]" }    }  }}

On Windows use "command": "python" and a path like "C:\\path\\to\\edgar_mcp.py".

3. Restart Claude Desktop.

🔒 Privacy & Rate Limits

  • Uses the official SEC EDGAR APIs — public, no key.
  • Requests go straight from your machine to the SEC. Nothing is stored or proxied.
  • The SEC requires a descriptive User-Agent with contact info and limits ~10 requests/second.
  • Intended for personal, educational, and research use.

📝 Notes

  • identifier is flexible: ticker (AAPL), CIK (320193), or name (Apple).
  • Financial data comes from XBRL, first required by the SEC in 2009, so history goes back that far for most filers.
  • get_company_facts returns highlights; use get_concept for the full series of any one metric.

📋 Changelog

See CHANGELOG.md for the full version history.

📚 Resources

⚖️ Legal Disclaimer

This tool uses the public SEC EDGAR APIs but is not affiliated with or endorsed by the U.S. Securities and Exchange Commission. Use is subject to the SEC's website policies. Data is provided as-is for personal, educational, and research purposes; verify against the original filings before relying on it.

👤 Author

Daniel Shashko

📄 License

MIT © Daniel Shashko

Source: README.md at commit 6732796

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v1.0.2LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

Other Edgar integrations