EdgarTools — Claude Code MCP server for SEC EDGAR data
An MCP server that pulls SEC EDGAR filings into your agent: financial statements, insider trades, fund holdings. No API key, but a contact email is required.
claude mcp add edgartools -e EDGAR_IDENTITY=<EDGAR_IDENTITY> -- uvx edgartoolsWhat EdgarTools does
EdgarTools exposes SEC EDGAR to your agent over MCP. It ships 13 tools and 7 prompts covering financial statements, insider transactions from Form 4, institutional holdings from 13F, proxy statements and other filing types. Filings come back as typed Python objects and DataFrames instead of raw HTML or XML.
The server runs through uvx edgartools in your own process. There is no key or signup, yet SEC wants a contact email on every request, passed as the EDGAR_IDENTITY environment variable. Skip it and the requests fail. SEC's fair-access cap of 10 requests a second still applies, and the server stays under it.
Full-text search reaches filings back to 2001, and you can filter by form type and date range or follow the live filing feed. Statements are available across several years, by quarter, or as trailing twelve months. Rows are standardized across filers, so a bank and a chipmaker report the same “Total Revenue” label.
What it helps with
- pull several years of a company's financial statements
- search filing text for a keyword
- parse insider trades from Form 4
- get a fund's 13F portfolio
- compare one metric across companies
Example prompts for the agent
- Show me NVDA revenue for the last five years
- Find every 10-K filed in 2025 that mentions tariffs
- Parse the latest TSLA Form 4 into a table
How to install EdgarTools
Platform CLI
claude mcp add edgartools -e EDGAR_IDENTITY=<EDGAR_IDENTITY> -- uvx edgartoolsReplace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from edgartools <command>
Platform CLI
codex mcp add edgartools --env EDGAR_IDENTITY=<EDGAR_IDENTITY> -- uvx edgartoolsReplace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from edgartools <command>
Config file
{
"mcpServers": {
"edgartools": {
"command": "uvx",
"args": [
"edgartools"
],
"env": {
"EDGAR_IDENTITY": "<EDGAR_IDENTITY>"
}
}
}
}Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from edgartools <command>
Config file
{
"servers": {
"edgartools": {
"type": "stdio",
"command": "uvx",
"args": [
"edgartools"
],
"env": {
"EDGAR_IDENTITY": "<EDGAR_IDENTITY>"
}
}
}
}Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from edgartools <command>
Platform CLI
gemini mcp add -e EDGAR_IDENTITY=<EDGAR_IDENTITY> edgartools uvx edgartoolsReplace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from edgartools <command>
Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more
Questions about EdgarTools
How do I install EdgarTools in Claude Code?
Run claude mcp add edgartools -e EDGAR_IDENTITY=<EDGAR_IDENTITY> -- uvx edgartools. Replace <EDGAR_IDENTITY> with your email, since SEC requires a contact on each request.
What does EdgarTools do?
It gives your agent access to SEC EDGAR filings: financial statements, insider trades, fund holdings, proxy statements. It bundles 13 tools and 7 prompts.
Do I need an API key?
No key or signup is needed, but without EDGAR_IDENTITY holding a contact email the requests to SEC will not go through.