by daniel3303
An open-source, self-hosted mini Bloomberg Terminal for AI agents, exposed as an MCP server — SEC filings, institutional holdings, insider trading, congressional trades, and short data from a single self-hosted stack.
# Add to your Claude Code skills
git clone https://github.com/daniel3303/EquiblesLast scanned: 7/19/2026
{
"issues": [],
"status": "PASSED",
"scannedAt": "2026-07-19T06:31:19.776Z",
"npmAuditRan": true,
"pipAuditRan": true,
"promptInjectionRan": true
}Equibles is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by daniel3303. An open-source, self-hosted mini Bloomberg Terminal for AI agents, exposed as an MCP server — SEC filings, institutional holdings, insider trading, congressional trades, and short data from a single self-hosted stack. It has 181 GitHub stars.
Yes. Equibles passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.
Clone the repository with "git clone https://github.com/daniel3303/Equibles" and add it to your Claude Code skills directory (see the Installation section above).
Equibles is primarily written in C#. It is open-source under daniel3303 on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh Equibles against similar tools.
No comments yet. Be the first to share your thoughts!
An open-source, self-hosted mini Bloomberg Terminal for AI agents. Scrapes, stores, and serves SEC filings, institutional holdings, insider trading, congressional trades, short data, economic indicators, and daily stock prices — and exposes it all via MCP so your AI assistant can query it directly.
Powers equibles.com.
See docs/ for the user guide and technical documentation.
Prefer not to self-host? The MCP server also runs as a managed service at
https://mcp.equibles.com/mcpwith a free tier (100 requests/day). Per-client setup guides live at daniel3303/stock-market-mcp-server.
| Domain | Data Source | Description |
|---|---|---|
| SEC Filings | SEC EDGAR | 10-K, 10-Q, 8-K annual/quarterly/current reports with full-text search |
| Financial Statements | SEC XBRL | Parsed income statement, balance sheet, and cash flow facts per fiscal period |
| Holdings | SEC 13F-HR | Institutional ownership — who owns what, how much, and trend over time |
| Fund Filings | SEC NPORT / N-CEN / Form D | Fund portfolio holdings, registered-fund operations (service providers), and exempt offerings (private placements) |
| Investment Advisers | SEC Form ADV | SEC-registered advisers — assets under management, main office, employee count, fee structure |
| Insider Trading | SEC Form 3/4/144 | Director, officer, and 10% owner transactions, plus proposed (Form 144) sales |
| Congressional Trading | House/Senate disclosures | Stock trades by members of Congress |
| Short Data | SEC / FINRA | Fails-to-deliver (SEC), daily short volume and short interest (FINRA) |
| Economic Indicators | FRED (Federal Reserve) | Interest rates, inflation, employment, GDP, yield spreads, and more |
| Stock Prices | Yahoo Finance | Daily OHLCV prices with technical indicators (SMA, RSI, MACD) |
| Futures Positioning | CFTC | Commitments of Traders (COT) data for 30+ futures contracts |
| Market Indicators | CBOE | VIX volatility index (1990+) and put/call ratios by category |
| Government Contracts | USAspending.gov | Federal contract awards to public companies — amounts, awarding agencies, dates, and NAICS/PSC codes |
| FDA Catalysts | FDA.gov | Advisory-committee (AdComm) meeting calendar — scheduled FDA panel dates, center, and title that act as regulatory catalysts for biotech/pharma stocks |
The fastest way to get everything running. Requires Docker.
git clone https://github.com/daniel3303/Equibles.git
cd Equibles
cp .env.example .env
# Edit .env and set SEC_CONTACT_EMAIL (required by SEC EDGAR fair access policy)
docker compose up
This starts:
| Service | Port | Description |
|---|---|---|
| db | 5432 | ParadeDB (PostgreSQL + pgvector + pg_search) |
| web | 8080 | Web portal for browsing data |
| mcp | 8081 | MCP server for AI assistants |
| worker | — | Scrapers (SEC, FINRA, Congress, FRED, Yahoo, CFTC, CBOE, USAspending, FDA) |
Data scraping starts automatically. SEC filings, holdings, insider trades, and congressional trades will begin populating within minutes.
All settings can be configured via a .env file in the project root (recommended for Docker) or environment variables.
FINRA Short Data (free API key required):
The FINRA scraper (short volume and short interest) requires a free API key. Without it, the scraper skips gracefully and all other scrapers run normally. Fails-to-deliver data comes from SEC and works without FINRA credentials.
To get a key:
Finra__ClientId and Finra__ClientSecret in your .env file or environment variablesThe older
developer.finra.org"Teams & Apps" flow has been retired — use the API Console above.
FRED Economic Data (free API key required):
The FRED scraper requires a free API key from the Federal Reserve Bank of St. Louis. Without it, the scraper skips gracefully and all other scrapers run normally.
To get a key:
Fred__ApiKey in your .env file or environment variablesTicker Filtering (optional):
By default, all tickers are synced. To limit data syncing to specific stocks, set a single ticker list that applies to all scrapers:
# .env — sync only these tickers (applies to all scrapers)
Worker__TickersToSync__0=AAPL
Worker__TickersToSync__1=MSFT
Worker__TickersToSync__2=GOOGL
When not set, all stocks are synced.
Minimum Sync Date (optional):
By default, all scrapers start from January 2020. Set a more recent date for faster initial sync, or go as far back as 2000-01-01 for more historical data:
# .env — start syncing from 2024 instead of 2020
Worker__MinSyncDate=2024-01-01
Embedding (opt-in):
| Setting | Default | Description |
|---|---|---|
Embedding__Enabled |
false |
Set to true to enable vector embedding generation |
Embedding__Provider |
Ollama |
Ollama (/api/embed) or OpenAI (/v1/embeddings — vLLM, Text-Embeddings-Inference, or OpenAI) |
Embedding__BaseUrl |
— | Embedding endpoint (e.g., http://localhost:11434) |
Embedding__ModelName |
— | Model name (e.g., qwen3-embedding:0.6b) |
Embedding__ApiKey |
— | Bearer token, if the server requires one (e.g. vLLM --api-key) |
Embedding__BatchSize |
10 |
Texts per embedding batch |
Update notifications (optional):
| Setting | Default | Description |
|---|---|---|
CHECK_FOR_UPDATES |
true |
When true, the web portal checks GitHub Releases and shows a banner when a newer version is available. Set to false to disable. |
Authentication (optional):
| Setting | Default | Description |
|---|---|---|
AUTH_USERNAME |
— | Web portal username (auth disabled if empty) |
AUTH_PASSWORD |
— | Web portal password (auth disabled if empty) |
MCP_API_KEY |
— | MCP server API key (auth disabled if empty) |
When set, the web portal requires login and the MCP server requires Authorization: Bearer <key> header. When unset, everything is open access (default).
The web portal checks GitHub Releases on a schedule and shows a banner when a newer version is available (disable with CHECK_FOR_UPDATES=false). To update to the latest release:
Docker Compose:
git pull
docker compose up -d --build
From source:
git pull
dotnet build Equibles.sln
Database migrations are applied automatically on startup. Review the changelog for notable changes before upgrading.
The web portal at http://localhost:8080 provides a browser-based interface for exploring data:
/advisers), ranked by assets under management, with per-firm profiles (regulatory AUM, main office, employee count, fee structure)/most-shorted, ranked by FINRA short interest) and largest daily short volume (/short-volume), each with a date selector, server-side sort, and pagination