sec-intelligence-mcp
MCP server for SEC EDGAR filing intelligence, providing tools for fetching, chunking/embedding, retrieval, and evaluation of filings.
README
sec-intelligence-mcp
MCP server for SEC EDGAR filing intelligence — fetching, chunking/embedding, retrieval, and evaluation, exposed as tools an MCP client (e.g. Claude Desktop) can call.
Setup
- Install uv.
- Install dependencies:
uv sync - Copy
.env.exampleto.envand fill in the keys (see below). - Start Qdrant locally:
docker compose up -d qdrant - Run the server directly:
Or with the MCP Inspector (dev UI, requires Node.js):uv run python src/server.pyuv run mcp dev src/server.py
Running via Docker
docker compose up -d builds the server image and starts it alongside Qdrant. The app
service reads secrets from your local .env via env_file, and QDRANT_URL is overridden
to http://qdrant:6333 (the in-network service name) since localhost inside the container
would not reach the qdrant container. config.py still fails fast if .env is missing
required keys.
Getting API keys (all free)
| Variable | Where to get it |
|---|---|
GEMINI_API_KEY |
https://aistudio.google.com/apikey — free tier, sign in with Google account |
QDRANT_URL |
http://localhost:6333 when running Qdrant via docker compose up -d qdrant (no signup needed) |
QDRANT_API_KEY |
Only needed for a hosted Qdrant Cloud instance; leave blank for local |
LANGFUSE_SECRET_KEY / LANGFUSE_PUBLIC_KEY |
https://cloud.langfuse.com — free tier, create a project, copy keys from Settings → API Keys |
src/config.py fails fast at import time (raises RuntimeError) if any required key is missing.
Connecting Claude Desktop
Add this to your claude_desktop_config.json (on Windows:
%APPDATA%\Claude\claude_desktop_config.json):
{
"mcpServers": {
"sec-intelligence-mcp": {
"command": "uv",
"args": [
"--directory",
"C:\\ABSOLUTE\\PATH\\TO\\sec-intelligence-mcp",
"run",
"python",
"src/server.py"
]
}
}
}
Restart Claude Desktop, open the tools list, and confirm sec-intelligence-mcp appears with a
ping tool that returns "pong".
Testing locally
uv run python -c "import mcp" # SDK installed correctly
uv run python scripts/test_server_stdio.py # server responds over stdio (ping -> pong)
docker compose up -d qdrant
uv run python scripts/test_qdrant.py # Qdrant round-trip works
Project structure
src/
├── server.py # MCP server entrypoint
├── tools/ # One file per MCP tool
├── edgar/ # SEC EDGAR fetching + parsing
├── embeddings/ # Chunking + embedding pipeline
├── retrieval/ # Qdrant client + search
├── evaluation/ # RAGAS eval pipeline
└── config.py # Env var loading (fail-fast)
tests/ # Unit/integration tests
prompts/ # Prompt templates (.txt)
data/ # Gitignored local cache (DuckDB, filing PDFs, Qdrant storage)
eval/ # Test questions + ground truth answers
scripts/ # One-off dev/test scripts
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
mcp-server-qdrant
这个仓库展示了如何为向量搜索引擎 Qdrant 创建一个 MCP (Managed Control Plane) 服务器的示例。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器