FMP MCP Server
cassandra-market-research
MCP-Server für Finanzmarktdaten. Vereint FMP, ThetaData (Optionen), Polygon.io (Fed + Short-Volumen), FRED und Treasury Fiscal Data hinter einer einzigen FastMCP-Schnittstelle.
Deckt Aktien, SEC-Einreichungen, Makro-Datenreihen, Optionsketten, Quartalsergebnisse und Fiskaldaten ab.
Architektur
MCP client → market-research.cassandrasedge.com (CF Tunnel)
→ FastMCP backend (port 3003)
├─ McpKeyAuthProvider → /keys/validate (auth service)
├─ FMP client → api.financialmodelingprep.com
├─ Polygon client → api.polygon.io
├─ FRED/Treasury client → Treasury Fiscal Data + FRED
└─ ThetaData client → theta-terminal sidecar
↓
ThetaTerminal.jar (Java)
↓
ThetaData REST APIDer ThetaTerminal-Sidecar läuft als separates k8s-Deployment, da es sich um einen zustandsbehafteten Java-Prozess handelt, der sich bei ThetaData anmeldet und REST-Aufrufe weiterleitet; Anmeldedaten befinden sich im theta-terminal k8s-Secret.
Repo-Struktur
cassandra-market-research/
├── backend/
│ ├── src/cassandra_fmp/
│ │ ├── main.py
│ │ ├── mcp_server.py
│ │ ├── config.py
│ │ ├── clients/
│ │ │ ├── polygon.py
│ │ │ ├── thetadata.py
│ │ │ └── treasury.py
│ │ └── tools/ # Tool modules (register pattern)
│ ├── tests/
│ └── Dockerfile
├── theta-terminal/ # ThetaTerminal sidecar image
│ ├── Dockerfile # Downloads ThetaTerminal.jar at build time
│ └── entrypoint.sh
├── .woodpecker.yaml
└── CLAUDE.mdAuthentifizierung
Verwendet das gemeinsame FastMCP-Sidecar-Muster:
McpKeyAuthProvidervalidiertBearer mcp_...-Token über den Auth-Dienst/keys/validateUpstream-API-Schlüssel (FMP, Polygon, FRED) sind Umgebungsvariablen auf Deployment-Ebene, keine benutzerspezifischen Anmeldedaten
ThetaData-Anmeldedaten befinden sich im
theta-terminalk8s-Secret, werden von ThetaTerminal.jar konsumiert und niemals von diesem BackendACL-Richtlinie ist über das
AUTH_YAML_CONTENT-Build-Argument im Docker-Image integriert
Umgebungsvariablen
Variable | Erforderlich | Beschreibung |
| Ja | Financial Modeling Prep API-Schlüssel |
| Nein | Polygon.io API-Schlüssel (Fed-Daten + Short-Volumen) |
| Nein | FRED API-Schlüssel für Makro-Datenreihen |
| Ja (für Optionen) | ThetaTerminal REST-Endpunkt (z. B. |
| Ja | Anbindung des Auth-Dienstes |
Entwicklung
cd backend
uv sync
FMP_API_KEY=<key> THETA_TERMINAL_URL=http://127.0.0.1:25510 uv run cassandra-fmpBereitstellung
Automatische Bereitstellung bei Push auf main über Woodpecker CI. BuildKit erstellt zwei Images und pusht diese in die lokale Registry:
market-research:latestausbackend/theta-terminal:latestaustheta-terminal/
ArgoCD synchronisiert anschließend cassandra-k8s/apps/market-research/ und cassandra-k8s/apps/theta-terminal/.
Teil des Cassandra-Stacks.
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/DigiBugCat/fmp-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server