Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者による説明(英語の原文)
SEC filings in your agent: issuers, Reg CF/D/A raises, XBRL financials, insider trades.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
EDGAR_MCP_USER_AGENT必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"edgar": {
"command": "uvx",
"args": [
"mcpwright-edgar"
],
"env": {
"EDGAR_MCP_USER_AGENT": "your-value"
}
}
}
}ターミナルでこれを実行します
claude mcp add edgar --env EDGAR_MCP_USER_AGENT=your-value -- uvx mcpwright-edgar動かす前に、空欄の値を入力してください。
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"edgar": {
"command": "uvx",
"args": [
"mcpwright-edgar"
],
"env": {
"EDGAR_MCP_USER_AGENT": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"edgar": {
"type": "stdio",
"command": "uvx",
"args": [
"mcpwright-edgar"
],
"env": {
"EDGAR_MCP_USER_AGENT": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
EDGAR_MCP_USER_AGENT envこの設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月7日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント mcpwright で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(0.1.3)がレジストリに届いたのは3 か月前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにPython (uv)も必要です。
同じカテゴリには:Spec Driven Development, Remote Desktop Commander, Tools MCP
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Web production tools for AI agents: contrast, JP text, WebP, JSON-LD, slugs, dates and 40+ more
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
SEC EDGAR filings, inside your agent. An MCP server that lets an LLM resolve companies, search filings, and pull recent securities offerings straight from the SEC — built on Anthropic's official mcp Python SDK.
All tools are read-only and hit public SEC endpoints (no API key required).
Status: 11 tools, working today (see below). Published on PyPI as
mcpwright-edgarand in the
official MCP Registry. See the roadmap for what's next.
| Tool | What it does |
|---|---|
lookup_issuer(query, limit=10) | Resolve a ticker or company name → CIK, legal name, tickers, exchange. Works for exchange-listed and private / non-exchange filers (Reg CF / Reg A issuers, funds). |
list_filings(cik_or_query, form_type=None, limit=20) | An issuer's most recent filings, newest first. Optional form-type filter (e.g. 10-K, C, D). |
search_filings(query, forms=None, date_from=None, date_to=None, limit=20) | Full-text search across filing documents. |
get_recent_offerings(form="C", since=None, state=None, limit=20) | Recent securities offerings, newest first — form="C" (Reg CF), "D" (Reg D), or "A" (Reg A — 1-A offering statements plus 253G2 offering circulars, where the per-share price and any "price walk-up" live), optionally filtered by issuer state (e.g. "CA"). |
get_filing(accession_or_url, cik=None) | Open one filing: form, filing date, primary-document link, and every document in the filing. |
get_form_d_details(accession_or_url, cik=None) | Parse a Form D (Reg D) raise: offering amount, sold/remaining, min investment, # investors, industry, revenue range, security types, exemptions, and the officers/directors/promoters. |
get_form_c_details(accession_or_url, cik=None) | Parse a Form C (Reg CF) raise: target/max amount, price, security type, deadline, intermediary, employees, and a two-year financial snapshot (revenue, net income, assets, debt). |
get_company_facts(cik_or_query) | Headline financials from a public company's XBRL facts: latest annual revenue, gross/operating income, net income, assets, liabilities, equity, cash. |
get_filing_text(url, offset=0, max_chars=20000) | Fetch a document's text (HTML stripped) for reading/summarizing — paginated, since filings can exceed 1M characters. |
get_insiders(cik_or_query, limit=25) | A company's insiders (officers, directors, >10% owners) from recent Section 16 filings, with roles. |
get_insider_trades(cik_or_query, limit=20) | Recent insider transactions (Form 4): owner, role, buy/sell/grant, shares, price, shares owned after. |
Requires Python 3.12+. The zero-clone way to run it (the PyPI package is mcpwright-edgar; the command, server, and tools are all "edgar"):
uvx mcpwright-edgar
claude mcp add edgar -- uvx mcpwright-edgar
Add to claude_desktop_config.json:
{
"mcpServers": { "edgar": { "command": "uvx", "args": ["mcpwright-edgar"] } } }
It's a standard MCP server, so it works with any MCP-capable client — not just Claude. With the OpenAI Agents SDK:
from agents import Agent, Runner
from agents.mcp import MCPServerStdio
async def main(): async with MCPServerStdio( name="edgar", params={ "command": "uvx", "args": ["mcpwright-edgar"], "env": {"EDGAR_MCP_USER_AGENT": "your-app you@example.com"}, }, ) as edgar: agent = Agent( name="Analyst", instructions="Use the EDGAR tools for SEC filings and company data.", mcp_servers=[edgar], ) result = await Runner.run( agent, "Recent Reg D raises in California — who's behind the biggest?" ) print(result.final_output)
They all launch a stdio MCP server the same way — point yours at:
{
"mcpServers": { "edgar": { "command": "uvx", "args": ["mcpwright-edgar"], "env": { "EDGAR_MCP_USER_AGENT": "your-app you@example.com" } } } }
Hosted chat connectors (e.g. ChatGPT connectors) expect a remote MCP server over
Streamable HTTP;
mcpwright-edgarruns locally over stdio. Running it behind Streamable
HTTP for a hosted endpoint is straightforward if you need that.
SEC etiquette: the SEC requires a descriptive
User-Agentwith contact info and rate-limits
to ~10 req/s. Set your own via the
EDGAR_MCP_USER_AGENTenv var
(e.g.
"your-app your-email@example.com"). The client throttles and retries for you.
Caching: responses are cached in-memory (byte-budgeted LRU) to cut latency and SEC load —
immutable filing-archive content for days, the ticker map for 24h, everything else briefly.
Set
EDGAR_MCP_CACHE=0to disable.
git clone https://github.com/mcpwright/edgar-mcp && cd edgar-mcp
uv sync uv run pytest # tests (mocked SEC responses) uv run ruff check . && uv run ruff format --check . # lint + format uv run mypy src tests # strict type checking uv run mcp dev src/edgar_mcp/server.py # poke the tools in the MCP Inspector
get_recent_offerings(form=C|D) — recent Reg CF / Reg D raisesget_filing(accession_or_url) — open a filing and list its documentsget_form_d_details(...) — parse Reg D offering data (amount, investors, people)get_form_c_details(...) — parse Reg CF offering data (target/max, financials, terms)get_insiders / get_insider_trades — Section 16 (Form 3/4/5) insiders & tradesget_recent_offerings (industry isn't filterable — EDGAR omits SIC on these listings; screen via get_form_d_details.industry_group)get_recent_offerings (Form 1-A statements + 253G2 offering circulars)get_company_facts(cik) — XBRL headline financialsget_filing_text — return a document's text for summarizationmcpwright-edgar) + the official MCP Registry (io.github.mcpwright/edgar-mcp)get_form_a_details — parse Reg A (Form 1-A) offering dataedgar-mcp runs entirely on your machine and collects, stores, or transmits no personal data — no accounts, no tracking, no telemetry. Its only outbound requests go to the U.S. SEC's EDGAR services (data.sec.gov, efts.sec.gov, www.sec.gov) to fetch the public filings you ask for; no API key is needed. One honest note: the SEC's fair-access policy asks for a descriptive User-Agent with contact info (EDGAR_MCP_USER_AGENT="your-app you@example.com") — whatever you set there is sent to the SEC with each request, and nowhere else. Responses are cached in memory only; nothing is persisted to disk.
Full policy: https://mcpwright.com/privacy/
Contributions welcome — and if you build something with it, I'd love to hear about it.
Part of mcpwright · built by Devender Gollapally