Market Data Mcp について
Market Data Mcp は、Finnhub の市場データを AI エージェントに提供する MCP サーバーです。結果を Markdown または JSON で返し、取得できないデータを捏造せず欠損として扱います。Alpaca のペーパー口座にも任意で対応します。
主な機能
- 01リアルタイム株価と市場ニュース
- 02決算カレンダーの検索
- 03最大25銘柄のスキャンと順位付け
- 04モメンタムと材料の複合分析
- 05Alpacaペーパー口座のポジション取得
活用シーン
- 01銘柄の現在値とニュースの確認
- 02指定期間内の決算予定の確認
- 03値動きに基づくウォッチリストの順位付け
- 04複合スコアによる銘柄の選別
MCP 対応
株価、ニュース、カレンダー、スキャン、分析などのツールを MCP クライアントに提供し、任意で Alpaca のペーパー口座のポジションも取得します。結果は Markdown または JSON で返します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
market-data-mcp

AI エージェント向けのリアルタイム市場データ:株価、ニュース、決算カレンダー、ウォッチリストスキャナーを Finnhub から提供します。
あらゆる MCP クライアント(Claude Desktop、Claude Code、エージェント)に、適切にエラー処理を行う、統一された使いやすい市場データツールを提供します。 データソースが利用できない場合や有料プラン限定の場合は、値を捏造せず、"データなし" を返します。デフォルトでは Markdown 形式で、必要に応じて JSON 形式で出力します。
ツール
| ツール | 機能 | データソース | 無料プラン |
|---|---|---|---|
market_quote | リアルタイム価格、変動率(%)、高値/安値/始値/前日終値 | Finnhub /quote | はい |
market_news | 上位 5 件の見出し — 企業別または市場全般 | Finnhub /company-news、/news | はい |
market_calendar | 今後 N 日間の決算カレンダー(EPS/売上高の予想を含む) | Finnhub /calendar/earnings | はい* |
market_scan | ウォッチリストスキャナー:最大 25 銘柄を変動率(%)の絶対値でランキング | Finnhub /quote x N | はい |
market_analyze | 複合分析:モメンタムスコア + ニュースの材料 + 決算までの期間 | 上記すべて | はい |
broker_positions | Alpaca のペーパー口座から保有中のポジションを読み込みます | Alpaca Paper API | 任意** |
*2026-06-14 にライブ環境でカレンダーをテスト済み:Finnhub の無料プランで利用できます。
**broker_positions を使うには、.env に ALPACA_API_KEY と ALPACA_SECRET_KEY が必要です。設定されていない場合も、適切に処理されます。
各ツールは、プログラムから利用するために Markdown(人間が読みやすいデフォルト形式)または JSON(response_format="json")を返します。
ライブデモ出力(2026-06-14)
market_quote AAPL:
AAPL: $291.13 (-1.52% -$4.50) prev close $295.63
market_scan AAPL,MSFT,NVDA,TSLA:
Scanned 4/4 symbols. Top mover: TSLA +1.82%
market_calendar days=7:
20 earnings events in the next 7 days: ACN, KR, MEI ...
market_analyze AAPL:
Signal: Lean negative [......##|........] -30/100 confidence 60%
AAPL: $291.13 -1.52% → Lean negative [TRIM]
Catalyst: Apple's iOS 27 surprise could change the AI narrative
クイックスタート
注: PyPI の
market-data-mcpパッケージは、別の作者による無関係なプロジェクトです。このプロジェクトはソースからインストールしてください:
git clone https://github.com/cstamigo-droid/market-data-mcp.git
cd market-data-mcp
python -m venv .venv
.venv\Scripts\activate # Windows
pip install -r requirements.txt
copy .env.example .env # edit: add FINNHUB_API_KEY
python tests/test_smoke.py # live test all 6 tools
無料の Finnhub キーはこちらから取得できます:https://finnhub.io/register
Claude Desktop の設定
claude_desktop_config.json(Windows では %APPDATA%\Claude\、macOS では ~/Library/Application Support/Claude/)に以下を追加し、
Claude Desktop を再起動してください:
{
"mcpServers": {
"market-data-mcp": {
"command": "python",
"args": ["-m", "market_data_mcp"],
"cwd": "C:/path/to/market-data-mcp"
}
}
}
venv を使用していない場合は、システムの Python パスを使用してください:
{
"mcpServers": {
"market-data-mcp": {
"command": "C:/Users/YourName/AppData/Local/Python/pythoncore-3.14-64/python.exe",
"args": ["-m", "market_data_mcp"],
"cwd": "C:/path/to/market-data-mcp",
"env": { "PYTHONUTF8": "1" }
}
}
}
任意:Alpaca のブローカーデータソース
broker_positions ツールは Alpaca のペーパー口座を読み込みます。有効にするには:
- https://app.alpaca.markets/ → Paper Trading → API Keys に移動します
.envに追加します:ALPACA_API_KEY=your-key-here ALPACA_SECRET_KEY=your-secret-here- サーバーを再起動します。
これらのキーが設定されていない場合、broker_positions は「キーが設定されていません」というメッセージを適切に返します。
このように構築した理由
- 統一された結果の仕様。 すべてのデータソースが同じ
Result形式(source、ok、summary、data、score、confidence、error)を返します。LLM は N 種類の形式を解析することなく、すべてのツールの結果を推論できます。 - 適切な縮退処理。 データがないデータソース、有料プラン限定のエンドポイント、またはキーの欠落に対しては、値を捏造せず
Result.failed(...)を返します。不明なシンボルに対して Finnhub が返す価格 0 は、株価ではなく「データなし」として扱います。 - スコア付き分析。 複合分析ツール
market_analyzeは、信頼度を伴う -100..+100 の方向性スコアを出力するため、エージェントは文章を読まずに優先順位を判断できます。 - TTL キャッシュ。 データソースごとのプロセス内キャッシュにより、エージェントが 1 回のターン中に複数のツールを呼び出す場合(例:スキャンに続けて分析する場合)でも、レート制限のある API への過剰なアクセスを防ぎます。
免責事項
調査および教育目的に限り使用してください。データは Finnhub と Alpaca から提供され、遅延または不完全な場合があります。独自に検証することなく、自動取得した市場データを金融上の意思決定に使用しないでください。
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。