Server data from the Official MCP Registry
SEC EDGAR filings (10-K, 10-Q, 8-K), XBRL financials, and full-text filing search. No API key.
SEC EDGAR filings (10-K, 10-Q, 8-K), XBRL financials, and full-text filing search. No API key.
This is a well-built SEC EDGAR MCP server with clean, secure code design. It makes proper use of environment variables for configuration, implements robust error handling, and avoids dangerous patterns like unsanitized shell execution or hardcoded credentials. Authentication is not required for this server's purpose (public SEC EDGAR APIs), and permissions are appropriately scoped to network access and environment variable reading. Minor code quality observations exist but do not represent security vulnerabilities. Supply chain analysis found 3 known vulnerabilities in dependencies (0 critical, 3 high severity). Package verification found 1 issue.
6 files analyzed Β· 10 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
This plugin requests these system permissions. Most are normal for its category.
Set these up before or after installing:
Environment variable: SEC_USER_AGENT
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-danishashko-edgar-mcp": {
"env": {
"SEC_USER_AGENT": "your-sec-user-agent-here"
},
"args": [
"-y",
"edgar-mcp"
],
"command": "npx"
}
}
}From the project's GitHub README.
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.
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.
Add this to your Claude Desktop config and restart Claude:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.json{
"mcpServers": {
"edgar": {
"command": "npx",
"args": ["-y", "edgar-mcp"],
"env": {
"SEC_USER_AGENT": "your-app-name your@email.com"
}
}
}
}
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+.
npm install -g edgar-mcp
{
"mcpServers": {
"edgar": {
"command": "edgar-mcp",
"env": { "SEC_USER_AGENT": "your-app-name your@email.com" }
}
}
}
| Tool | What it returns | Parameters |
|---|---|---|
search_company | Companies matching a name/ticker, with their CIK | query, limit |
get_recent_filings | Recent filings (form, dates, link), optional form filter | identifier, form_type, limit |
get_latest_filing | The newest filing of a given type, with a document link | identifier, form_type |
get_company_facts | Headline financials (revenue, net income, assets, equity, cash, EPS) | identifier |
get_concept | One XBRL concept's reported history over time | identifier, concept, limit |
full_text_search | Filings matching a keyword/phrase across all companies | query, 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.
Once the server is connected, just ask Claude:
"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
If you would rather run the Python file directly instead of via npx:
1. Download the server and install the dependency
pip install mcp
(or pip3 on macOS/Linux)
2. Point Claude Desktop at it
{
"mcpServers": {
"edgar": {
"command": "python3",
"args": ["/absolute/path/to/edgar_mcp.py"],
"env": { "SEC_USER_AGENT": "your-app-name your@email.com" }
}
}
}
On Windows use "command": "python" and a path like "C:\\path\\to\\edgar_mcp.py".
3. Restart Claude Desktop.
User-Agent with contact info and limits ~10 requests/second.identifier is flexible: ticker (AAPL), CIK (320193), or name (Apple).get_company_facts returns highlights; use get_concept for the full series of any one metric.See CHANGELOG.md for the full version history.
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.
Daniel Shashko
MIT Β© Daniel Shashko
Be the first to review this server!
by Modelcontextprotocol Β· Developer Tools
Web content fetching and conversion for efficient LLM usage
by Toleno Β· Developer Tools
Toleno Network MCP Server β Manage your Toleno mining account with Claude AI using natural language.
by mcp-marketplace Β· Developer Tools
Create, build, and publish Python MCP servers to PyPI β conversationally.