マーケットスタック MCP サーバー
Model Context Protocol(MCP)サーバーは、Marketstackの様々なAPIエンドポイントをMCPツールとして公開し、終値、日中取引、分割、配当、ティッカー、取引所、通貨、タイムゾーン、債券、ETFデータなどの金融データへのアクセスを提供します。このサーバーは、MarketstackデータをMCP対応のエージェントやシステムに統合することを簡素化します。
前提条件
Node.js (v18以降を推奨)
npm (Node.js に付属)
マーケットスタックAPIキー
(オプション) MCP 互換クライアントまたはランナー (例: VSCode 拡張機能、CLI)
Related MCP server: CoinMarketCap MCP
設定
リポジトリをクローンするか、プロジェクト ディレクトリにいることを確認します。
依存関係をインストールします:
npm install構成:
https://marketstack.com/から Marketstack API キーを取得します。
MCPランナーの設定から
MARKETSTACK_API_KEY環境変数を設定してください。これは、MCPクライアントとのシームレスな統合に推奨される方法です。MCPランナー経由で実行する場合は、この目的で.envファイルを使用することは避けてください。
構築と実行
サーバーを構築します。
npm run buildこれにより、コンパイルされた JavaScript コードを含む
buildディレクトリが作成されます。サーバーを実行します。
npm run startまたは直接:
node build/index.jsMCPランナー経由: MCPクライアントをstdioトランスポートを使用してサーバーを実行するように設定します。MCP設定エントリの例(
/path/to/mcp-marketstack実際のパスに調整し、YOUR_API_KEY_HEREを実際のキーに置き換えます):"marketstack": { "transportType": "stdio", "command": "node", "args": [ "/path/to/mcp-marketstack/build/index.js" ], "env": { "MARKETSTACK_API_KEY": "YOUR_API_KEY_HERE" } // ... other optional settings ... }
利用可能なツール
サーバーは、Marketstack API エンドポイントを機能別に分類された個別の MCP ツールとして公開します。
市場データ
参照データ
金融商品
各ツールの詳細な入力スキーマと説明は、イントロスペクションを介してサーバーに接続する MCP エージェントによって自動的に検出されます。
プロジェクト構造
このプロジェクトはモジュール構造に従っています。
キャッシング
サーバーは、ツールのレスポンス用にメモリ内のLRU(Least Recently Used)キャッシュを実装しています。これにより、Marketstack APIへの冗長な呼び出しが削減され、パフォーマンスが向上し、レート制限を遵守できます。
**メカニズム:**キャッシュには、ツール名と入力パラメータに基づいて応答が保存されます。
**設定可能なTTL:**各ツールには、キャッシュデータのTime To Live(TTL)が設定可能で、
src/cacheConfig.tsで定義されています。これにより、各Marketstackエンドポイントから提供されるデータの更新頻度に基づいて、異なるキャッシュ期間を設定できます。
ライセンス
このプロジェクトは、フリーソフトウェア財団が発行するGNU一般公衆利用許諾書(バージョン3、または(オプションで)それ以降のバージョン)に基づいてライセンスされています。詳細はLICENSEファイルをご覧ください。
貢献
貢献を歓迎します!標準的なフォークとプルリクエストのワークフローに従ってください。
サポート
問題や質問がある場合は、GitHub リポジトリで問題を開いてください。