FMP MCP Server
cassandra-market-research
金融市場データMCPサーバー。FMP、ThetaData(オプション)、Polygon.io(FRB + 空売り出来高)、FRED、およびTreasury Fiscal Dataを単一のFastMCPインターフェースの背後に統合します。
株式、SEC提出書類、マクロ経済シリーズ、オプションチェーン、決算、財務データをカバーしています。
アーキテクチャ
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 APIThetaTerminalサイドカーは、ThetaDataにログインしてREST呼び出しをプロキシするステートフルなJavaプロセスであるため、個別のk8sデプロイメントとして実行されます。認証情報はtheta-terminal k8sシークレットに格納されます。
リポジトリ構成
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.md認証
共有FastMCPサイドカーパターンを使用します:
McpKeyAuthProviderは、認証サービスの/keys/validateを介してBearer mcp_...トークンを検証しますアップストリームのAPIキー(FMP、Polygon、FRED)はデプロイメントレベルの環境変数であり、ユーザーごとの認証情報ではありません
ThetaDataの認証情報は
theta-terminalk8sシークレットに格納され、ThetaTerminal.jarによって消費されます。このバックエンドによって消費されることはありませんACLポリシーは、
AUTH_YAML_CONTENTビルド引数を介してDockerイメージに組み込まれています
環境変数
変数 | 必須 | 説明 |
| はい | Financial Modeling Prep APIキー |
| いいえ | Polygon.io APIキー(FRBデータ + 空売り出来高) |
| いいえ | マクロ経済シリーズ用FRED APIキー |
| はい(オプション用) | ThetaTerminal RESTエンドポイント(例: |
| はい | 認証サービスの接続設定 |
開発
cd backend
uv sync
FMP_API_KEY=<key> THETA_TERMINAL_URL=http://127.0.0.1:25510 uv run cassandra-fmpデプロイ
Woodpecker CIを介してmainブランチへのプッシュ時に自動デプロイされます。BuildKitが2つのイメージをビルドし、ローカルレジストリにプッシュします:
backend/からmarket-research:latesttheta-terminal/からtheta-terminal:latest
その後、ArgoCDが cassandra-k8s/apps/market-research/ と cassandra-k8s/apps/theta-terminal/ を同期します。
Cassandra スタックの一部です。
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