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 整合