Federal Reserve Economic Data MCP Server について
FRED MCP サーバーは、米連邦準備制度の経済データ(FRED)80 万超の時系列データにアクセスできるオープンソースの MCP サーバーです。経済・金融データを分析するユーザーが対象です。本プロジェクトは連邦準備制度およびセントルイス連銀とは提携していません。
主な機能
- 01カテゴリ、リリース、ソースを閲覧する fred_browse ツール
- 02キーワード、タグ、フィルターで検索する fred_search ツール
- 03期間指定と変換に対応した fred_get_series ツール
- 04stdio と Streamable HTTP に対応し、キャッシュと制限を提供
活用シーン
- 01LLM を通じて GDP、失業率、CPI などの指標を取得する
- 02金利やインフレ系列に前期比などの変換を適用して分析する
- 03ネットワーク上で共有する FRED データサービスとして運用する
MCP 対応
MCP サーバーとして、fred_browse、fred_search、fred_get_series の 3 つのツールを MCP クライアントに公開します。FRED API キーが必要です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
3掲載時のツール一覧 · 3 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| limit | number | いいえ | 結果の最大件数 |
| offset | number | いいえ | スキップする結果数 |
| order_by | string | いいえ | 並べ替えに使用するフィールド |
| release_id | number | いいえ | リリース ID(release_series 用) |
| sort_order | enum | いいえ | 並べ替え順asc | desc |
| browse_type | enum | はい | 実行する閲覧の種類categories | releases | sources | category_series | release_series |
| category_id | number | いいえ | カテゴリ ID(categories または category_series 用) |
詳細
Federal Reserve Economic Data MCP サーバー
重要
免責事項:このオープンソースプロジェクトは、Federal Reserve または Federal Reserve Bank of St. Louis とは提携、後援、承認の関係にありません。「FRED」は Federal Reserve Bank of St. Louis の登録商標であり、ここでは説明を目的としてのみ使用しています。
Federal Reserve Economic Data(FRED®)の 800,000 件を超えるすべての時系列データに、3 つの強力なツールを通じてアクセスできる Model Context Protocol(MCP)サーバーです。
https://github.com/user-attachments/assets/66c7f3ad-7b0e-4930-b1c5-a675a7eb1e09
ヒント
このプロジェクトを研究や業務で使用する場合は、CITATION.cff ファイルを使って引用するか、以下の形式で引用してください。
APA 形式:
Amorelli, S. (2025). Federal Reserve Economic Data MCP (Model Context Protocol) Server (Version 1.0.2) [Computer software]. Zenodo. https://doi.org/10.5281/zenodo.14536707
BibTeX:
@software{amorelli_2025_14536707,
author = {Amorelli, Stefano},
title = {{Federal Reserve Economic Data MCP (Model Context
Protocol) Server}},
month = jan,
year = 2025,
publisher = {Zenodo},
version = {1.0.2},
doi = {10.5281/zenodo.14536707},
url = {https://doi.org/10.5281/zenodo.14536707}
}
インストール
手動インストール
- リポジトリをクローンします:
git clone https://github.com/stefanoamorelli/fred-mcp-server.git cd fred-mcp-server - 依存関係をインストールします:
pnpm install - プロジェクトをビルドします:
pnpm build
設定
このサーバーには FRED® API キーが必要です。FRED® のウェブサイトから取得できます。
たとえば、Claude Desktop にサーバーをインストールするには、claude_desktop_config.json ファイルを編集し、以下の設定を追加します。
{
"mcpServers": {
"FRED MCP Server": {
"command": "/usr/bin/node",
"args": [
"<PATH_TO_YOUR_CLONED_REPO>/fred-mcp-server/build/index.js"
],
"env": {
"FRED_API_KEY": "<YOUR_API_KEY>"
}
}
}
}
Docker を使用する
Docker を使用して FRED MCP Server を実行することもできます。claude_desktop_config.json に以下の設定を追加します。
{
"mcpServers": {
"fred-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"FRED_API_KEY=<your-key-here>",
"stefanoamorelli/fred-mcp-server:latest"
],
"env": {}
}
}
}
<your-key-here> を実際の FRED API キーに置き換えてください。
Streamable HTTP トランスポートを使用する
ネットワーク環境にデプロイする場合、stdio の代わりに Streamable HTTP トランスポートを使ってサーバーを実行できます。
# Using CLI flag
node build/index.js --http
# Or using environment variable
TRANSPORT=http node build/index.js
# Custom port (default is 3000)
PORT=8080 node build/index.js --http
サーバーは http://localhost:3000/mcp(または指定したポート)で利用できます。
クライアントリクエストの例:
# Initialize session
curl -X POST http://localhost:3000/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"my-client","version":"1.0.0"}}}'
# Use the mcp-session-id from the response header for subsequent requests
curl -X POST http://localhost:3000/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-H "mcp-session-id: <session-id-from-init>" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}'
GET /healthz エンドポイントは、ロードバランサーやオーケストレーター向けに、アクティブなセッション数、キャッシュ統計、稼働時間を報告します。
設定
すべての設定は、適切なデフォルト値を持つ環境変数です。
| 変数 | デフォルト | 説明 |
|---|---|---|
FRED_API_KEY | (required) | FRED API キー |
FRED_API_TIMEOUT_MS | 30000 | FRED API へのリクエストごとのタイムアウト |
FRED_API_MAX_RETRIES | 3 | 429/5xx/ネットワーク障害時の再試行回数(ジッター付き指数バックオフを使用し、Retry-After を尊重します) |
FRED_API_RETRY_BASE_DELAY_MS | 500 | 再試行のバックオフにおける基本遅延 |
FRED_RATE_LIMIT_PER_MINUTE | 120 | FRED のキーごとのクォータに合わせた、クライアント側のトークンバケット |
FRED_CACHE_TTL_MS | 60000 | キャッシュされた API レスポンスの TTL(0 にするとキャッシュを無効にします) |
FRED_CACHE_MAX_ENTRIES | 500 | LRU キャッシュの容量 |
TRANSPORT | stdio | Streamable HTTP トランスポートを使用するには http に設定します |
HOST | (すべてのインターフェース) | HTTP バインドアドレス |
PORT | 3000 | HTTP ポート |
MCP_MAX_SESSIONS | 100 | 同時 MCP セッションの最大数(この数を超えると、新しいセッションには 503 が返されます) |
MCP_SESSION_TTL_MS | 1800000 | セッションが破棄されるまでのアイドル時間 |
MCP_SESSION_SWEEP_INTERVAL_MS | 60000 | アイドルセッションの破棄処理が実行される間隔 |
MCP_BODY_LIMIT | 1mb | 受け入れる JSON ボディの最大サイズ |
LOG_LEVEL | info | error、warn、info、または debug(ログは stderr に出力されます) |
同一の同時リクエストは、単一の上流呼び出しにまとめられます。また、成功したレスポンスはキャッシュされるため、複数のセッションでレート制限の枠を効率的に共有できます。
利用可能なツール
この MCP サーバーは、80 万件を超える FRED® 経済データ系列すべてにアクセスできる、包括的な 3 つのツールを提供します。
fred_browse
説明:カテゴリ、リリース、またはソースを通じて、FRED の完全なカタログを閲覧します。
パラメーター:
browse_type(必須):閲覧の種類。「categories」、「releases」、「sources」、「category_series」、「release_series」category_id(任意):カテゴリ内のサブカテゴリまたは系列を閲覧するためのカテゴリ IDrelease_id(任意):リリース内の系列を閲覧するためのリリース IDlimit(任意):結果の最大数(デフォルト:50)offset(任意):ページネーションのためにスキップする結果数order_by(任意):結果の並べ替えに使用するフィールドsort_order(任意):「asc」または「desc」
fred_search
説明:キーワード、タグ、またはフィルターを使って、FRED の経済データ系列を検索します。
パラメーター:
search_text(任意):系列のタイトルや説明から検索するテキストsearch_type(任意):「full_text」または「series_id」tag_names(任意):絞り込みに使用する、カンマ区切りのタグ名リストexclude_tag_names(任意):除外する、カンマ区切りのタグ名リストlimit(任意):結果の最大数(デフォルト:25)offset(任意):ページネーションのためにスキップする結果数order_by(任意):並べ替えに使用するフィールド(例:「popularity」、「last_updated」)sort_order(任意):「asc」または「desc」filter_variable(任意):「frequency」、「units」、または「seasonal_adjustment」による絞り込みfilter_value(任意):変数の絞り込みに使用する値
fred_get_series
説明:変換や日付範囲の指定に対応して、IDで指定した任意のFRED系列のデータを取得します。
パラメーター:
series_id(必須):FRED系列ID(例:「GDP」、「UNRATE」、「CPIAUCSL」)observation_start(任意):YYYY-MM-DD形式の開始日observation_end(任意):YYYY-MM-DD形式の終了日limit(任意):観測値の最大数offset(任意):スキップする観測値の数sort_order(任意):「asc」または「desc」units(任意):データの変換:- 「lin」(水準/変換なし)
- 「chg」(前期からの変化)
- 「ch1」(前年からの変化)
- 「pch」(変化率)
- 「pc1」(前年からの変化率)
- 「pca」(年率換算した複利変化率)
- 「cch」(連続複利変化率)
- 「log」(自然対数)
frequency(任意):集計頻度(「d」、「w」、「m」、「q」、「a」)aggregation_method(任意):「avg」(平均)、「sum」、または「eop」(期末)
使用例
これら3つのツールを使用すると、次のことができます。
- すべての経済カテゴリを閲覧し、利用可能なデータを見つける
- キーワードやタグで特定の指標を検索する
- 変換方法をカスタマイズして、80万以上の系列から任意のデータを取得する
- GDP、失業率、インフレ、金利などを含むリアルタイムの経済データにアクセスする
ソーシャルメディアでのご紹介 📣
メモ
紹介をご希望ですか?FRED MCP Serverの利用について投稿する際に、LinkedInでStefano Amorelliにタグ付けするか、Xで@stefanoamorelliにメンションしてください。または、PRを送信して、ご紹介を追加してください!
コミュニティの皆さまのご支援に感謝します!素晴らしい方々から寄せられた投稿をご紹介します。
Scott G - 「Claudeで何ができるのかを『理解』するうえで、画期的な瞬間のひとつとなったのが、このfred-mcp-serverプロジェクトでした……」
Scott G - フィンテックおよびデータ分析の専門家 | LinkedInプロフィール
John Shelburne - 「FRED MCP Serverは、金融分析を大きく変える存在です……」
John Shelburne - 20年以上の経験を持つ債券フィンテックのリーダー | 機械学習およびクラウドコンピューティングの専門家 | LinkedInプロフィール
テスト
詳細については、TESTING.mdをご覧ください。
# Run all tests
pnpm test
# Run specific tests
pnpm test:registry
ライセンス ⚖️
このオープンソースプロジェクトは、GNU Affero General Public License v3.0(AGPL-3.0)のもとでライセンスされています。これは、次のことを意味します。
- このソフトウェアを使用、変更、配布できます
- 変更したソフトウェアを配布する場合、変更内容をAGPL-3.0のもとで公開する必要があります
- 変更したバージョンをサーバー上で実行する場合、ユーザーにソースコードを提供する必要があります
- 詳細については、LICENSEファイルをご覧ください
商用ライセンスの選択肢やその他のライセンスに関するお問い合わせは、[email protected]までご連絡ください。
© 2025 Stefano Amorelli
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。