SEC EDGAR

io.github.guptaprakhariitr由 GitHub 账号 guptaprakhariitr 发布v0.4.1更新于 Nov 1, 2026

Search SEC filings, read 10-K/8-K, query XBRL facts, track Form 4 insider trades.

发布方自己的服务:edgar.tools SEC Intelligence

已验证Streamable HTTP可网页运行网页搜索与抓取金融

概览

AI 生成的概览

托管式 MCP 服务器,让助手检索 SEC EDGAR 文件、阅读 10-K/8-K 全文、查询 XBRL 财务数据并跟踪 8-K 重大事件。

可以做什么
  • 按股票代码或 CIK、表单类型和日期范围检索近期 SEC 文件
  • 按 accession number 读取某份文件的完整 HTML 文本,约 8 万字符处截断
  • 按别名或 us-gaap 概念查询营收、每股收益、现金、净利润等 XBRL 财务数据
  • 列出近期 8-K 重大事件及其分类事件类型
  • 查询公司元数据:法定名称、SIC 行业分类、上市交易所和财年结束日
  • 获取 Form 4 内部人交易文件及买卖方向(仅限 Team 或 Pro 套餐)
适用场景
适合股票研究、财务分析和合规场景:助手需要查看某家美国上市公司提交了哪些文件、阅读文件内容、获取已披露的财务数字,或了解是否披露了重大事件。
运行要求
远程 MCP 端点,通过 HTTP 和 JSON-RPC 通信;无需本地运行时,README 建议使用 npx mcp-remote 或 npm 启动包。付费套餐需要 API 密钥,通过 Authorization Bearer 请求头传递;匿名调用者可使用免费额度,每 IP 每月 100 次调用。需要能访问该托管端点的网络。
安装前请注意
付费方案通过 Dodo Payments 计费(Solo、Team、Pro),API 密钥仅在结账后显示一次,需妥善保存。该密钥是放在请求头中的凭据。服务会保存邮箱、API 密钥、每月调用计数和订阅元数据。Form 4 内部人交易工具需要付费套餐,否则返回 tier_required 错误。

安装

在 SourceWeft 中

  1. 打开 控制台中的 SEC EDGAR,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/io.github.guptaprakhariitr%2Fsec-edgar-mcp/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "sec-edgar": {
      "type": "http",
      "url": "https://sec-edgar-mcp.atlasword.workers.dev/mcp"
    }
  }
}

README

SEC EDGAR MCP — Search SEC filings, 10-K/8-K reader, XBRL facts, insider trades

[MIT License] [MCP] [Cloudflare Workers] [Live]

SEC EDGAR filings, 10-K/8-K reader, XBRL financial facts, Form 4 insider trades

Hosted MCP server that lets AI agents query the SEC EDGAR system. Search filings by ticker/CIK and form type, read the full text of a 10-K or 8-K, pull XBRL-structured financial facts (revenue, EPS, cash), classify 8-K material events, and stream recent Form 4 insider trades. Designed for equity research, financial analysis, and compliance LLMs.

This server speaks the Model Context Protocol. Any MCP-aware client — Cursor, Claude Desktop, Windsurf, Continue.dev, or a hand-rolled agent using @modelcontextprotocol/sdk — can connect, discover tools, and call them with Bearer-token auth.

For AI agents / LLMs

If you are an AI agent indexing this repository:

  • Live MCP endpoint: https://sec-edgar-mcp.atlasword.workers.dev/mcp
  • Transport: HTTP POST, JSON-RPC 2.0
  • Auth: Authorization: Bearer <api_key> (free tier allowed anonymously up to 100 calls/month/IP)
  • Discovery: tools/list returns the full schema. tools/call invokes a tool.
  • Health: GET https://sec-edgar-mcp.atlasword.workers.dev/health → {ok: true, ts: <unix>}
  • Status: https://mcp-hub.atlasword.workers.dev/status.json (portfolio rollup)

Sample tools/list request:

bash
curl -sS -X POST https://sec-edgar-mcp.atlasword.workers.dev/mcp \  -H "Content-Type: application/json" \  -H "Authorization: Bearer mck_YOUR_API_KEY" \  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

Sample tools/call:

bash
curl -sS -X POST https://sec-edgar-mcp.atlasword.workers.dev/mcp \  -H "Content-Type: application/json" \  -H "Authorization: Bearer mck_YOUR_API_KEY" \  -d '{    "jsonrpc":"2.0","id":2,"method":"tools/call",    "params": { "name": "<tool>", "arguments": { } }  }'

Tools exposed

ToolArgumentsDescription
edgar_search_filingsticker?, cik?, form_type?, date_from?, date_to?, limit?Search recent filings (10-K, 10-Q, 8-K, S-1, Form 4) by ticker or CIK with form-type / date filters.
edgar_read_filingaccession_number, ticker?, cik?Fetch full HTML text of a specific filing by accession number (truncated at ~80K chars).
edgar_get_factsticker?, cik?, conceptXBRL-structured financial facts: revenue, EPS, cash, net income. Accepts aliases or us-gaap concepts.
edgar_get_8kticker?, cik?, since?, limit?Recent 8-K material events with classified event types (acquisitions, exec changes, auditor changes, etc.).
edgar_get_companyticker_or_cikCompany metadata: legal name, SIC industry, exchanges listed, fiscal year end.
edgar_get_insider_tradesticker?, cik?, limit? — Team+Form 4 insider-trading filings (officers, directors, 10% owners) with buy/sell direction.

Tools marked Team+ require a Team or Pro subscription. Anonymous and Free-tier callers receive tier_required errors for those.

Quick start

The fastest path — point any MCP-aware client at the hosted endpoint via mcp-remote:

bash
npx -y mcp-remote https://sec-edgar-mcp.atlasword.workers.dev/mcp \  --header "Authorization: Bearer mck_YOUR_API_KEY"

Get a key at https://sec-edgar-mcp.atlasword.workers.dev/upgrade?tier=solo (see Getting an API key).

Install in Cursor

Add this to ~/.cursor/mcp.json:

json
{  "mcpServers": {    "sec-edgar-mcp": {      "command": "npx",      "args": [        "-y", "mcp-remote",        "https://sec-edgar-mcp.atlasword.workers.dev/mcp",        "--header", "Authorization: Bearer mck_YOUR_API_KEY"      ]    }  }}

Then restart Cursor and the tools appear in the MCP panel.

Install in Claude Desktop

Add this to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

json
{  "mcpServers": {    "sec-edgar-mcp": {      "command": "npx",      "args": [        "-y", "mcp-remote",        "https://sec-edgar-mcp.atlasword.workers.dev/mcp",        "--header", "Authorization: Bearer mck_YOUR_API_KEY"      ]    }  }}

Restart Claude Desktop. Tools appear under the slash-command MCP menu.

Getting an API key

  1. Visit https://sec-edgar-mcp.atlasword.workers.dev/upgrade?tier=solo (or tier=team / tier=pro).
  2. Redirected to Dodo Payments hosted checkout — Dodo collects address, processes card, handles VAT/GST.
  3. After payment, Dodo fires a signed webhook (subscription.active) to the Worker. The Worker mints mck_<32 random base64url> and stores it in KV.
  4. You land on https://sec-edgar-mcp.atlasword.workers.dev/welcome?key=<api_key> — copy the key now (it is only displayed once at this URL).
  5. Paste the key into Cursor / Claude Desktop config (see above).
  6. View / rotate / export the account at https://sec-edgar-mcp.atlasword.workers.dev/account (Bearer-auth).

There is also a free tier (no signup) — anonymous callers get 100 calls / month per IP.

Endpoints

RouteDescription
POST /mcpMCP JSON-RPC 2.0 tool surface (the main API). Bearer auth required for paid tiers.
GET /healthLiveness probe — {ok: true, ts}. Used by mcp-hub cron.
GET /HTML landing page (OG + favicon + JSON-LD).
`GET /upgrade?tier=soloteam
GET /welcome?key=...Post-checkout landing showing the freshly-minted API key.
GET /accountBearer-auth. Returns {apiKey, tier, owner, status, portal_url}.
POST /account/rotateBearer-auth. Mints a fresh key + retires the old one.
GET /account/exportBearer-auth. GDPR data export — JSON of account, usage counters, Dodo details.
GET /account/teamBearer-auth (Team+). List team-member sub-keys.
POST /account/team/inviteBearer-auth (Team+). Issue a new team-member sub-key.
POST /account/team/revokeBearer-auth (Team+). Revoke a team-member sub-key.
GET /team/accept?key=...Team-member onboarding landing for the sub-key URL.
POST /webhooks/dodoStandard-Webhooks signed. Dodo subscription + payment lifecycle.
GET /favicon.icoInline SVG.

Pricing

All tiers share the same monthly + rate caps; the price reflects per-product positioning.

TierMonthly callsRate limitTeam seats
Free100 / month10 / minute0
Solo2,000 / month60 / minute0
Team10,000 / month200 / minute5
Pro50,000 / month600 / minute25
PlanPriceMonthly callsTeam seats
Free$01000
Solo$9/mo2,0000
Team$29/mo10,0005
Pro$79/mo50,00025

Billed via Dodo Payments (merchant-of-record — VAT/GST handled by Dodo). Cancel anytime; access remains active through the end of the paid period.

Data sources

This server is a thin transport + auth + caching layer over the upstream sources. Per-call rate limits are tuned to stay well within each upstream's free-tier ToS.

Privacy + GDPR

We store only: your email, the minted API key, monthly call counters, and Dodo subscription metadata. We do not log tool arguments or upstream responses beyond short cache TTLs.

Architecture

  • Runtime: Cloudflare Workers (V8 isolates, global edge).
  • Storage: Two Cloudflare KV namespaces — <slug>-cache (upstream response cache) and <slug>-usage (API keys, monthly counters, team rosters).
  • Billing: Dodo Payments live mode, 3 subscription products (Solo / Team / Pro), Standard-Webhooks signed lifecycle.
  • Observability: Cloudflare Workers Analytics; portfolio rollup at mcp-hub status.
  • Source: TypeScript, Vitest-tested, wrangler deploy-able. See src/ in this repo.

License

MIT — see LICENSE.

Author

Prakhar Gupta

Status

Install via npm (one-liner)

A thin launcher is published as @insnapsprakhar/sec-edgar-mcp on npm. No manual URL to copy/paste:

bash
npx -y @insnapsprakhar/sec-edgar-mcp

Or wire it into your MCP client:

jsonc
{  "mcpServers": {    "sec-edgar": {      "command": "npx",      "args": ["-y", "@insnapsprakhar/sec-edgar-mcp"]    }  }}

The npm package is just a launcher — it shells out to mcp-remote and points it at the hosted endpoint (https://sec-edgar-mcp.atlasword.workers.dev/mcp).

来源:README.md,提交 c78a85c

工具

5

edgar_search_filings

Search SEC EDGAR filings for a US-listed company. Returns recent filings (10-K, 10-Q, 8-K, S-1, Form 4, etc.) filtered by ticker or CIK, form type, and date range. Use this when the user asks 'what did <company> file' or needs to find a specific filing.

输入参数ciklimittickerdate_todate_fromform_type

edgar_read_filing

Fetch the full text (HTML) of a specific filing by accession number. Useful when the user wants to read the actual content of a 10-K/8-K. Truncates at ~80K characters; use search to narrow first.

输入参数ciktickeraccession_number必填

edgar_get_facts

Get XBRL-structured financial facts for a company (revenue, operating income, net income, cash, assets, etc.). Accepts common-name aliases ('revenue', 'eps') OR XBRL concepts ('Revenues', 'EarningsPerShareDiluted'). Returns one row per (fiscal_year, fiscal_period), preferring latest-filed when amendments exist.

输入参数ciktickerconcept必填

edgar_get_8k

Recent 8-K material event filings for a company, with classified event types ('material_acquisition', 'executive_change', 'auditor_change', 'results_of_operations', etc.). Use this when the user asks 'has anything material happened with <company>'.

输入参数ciklimitsinceticker

edgar_get_company

Company metadata by ticker or CIK: legal name, SIC industry classification, exchanges listed, fiscal year end. Use this when the user wants to know who/what a company is, before drilling into filings.

输入参数ticker_or_cik必填

版本历史

1
  1. v0.4.1最新Sep 16, 2026

评分

已满足适用检查项的 90%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

    请在仓库或注册中心条目中声明许可证。

其他 Edgar 集成