mcp-nbb
mcp-nbb
ベルギー国立銀行(NBB)のSDMX統計API向けMCPサーバー。
221のNBBデータフロー(194のBE2 + 27のIMF/SDDS)を6つのLLMフレンドリーなツールと3つのブラウズ可能なリソースとして公開し、バンドルされた拡張カタログを備えているため、LLMは冗長なAPI呼び出しなしでデータフローを発見、説明、クエリできます。
上流:
https://nsidisseminate-stat.nbb.be/rest(NSI Web Service v8)トランスポート: stdio(標準MCP)
Python: 3.11+
プラットフォーム: Linux、macOS、Windows
221のデータフローを14カテゴリに分類 — DATAFLOWS_CATALOG.md を参照
インストール
PyPIから(推奨)
# With uv (runs without installing globally)
uvx mcp-nbb
# Or install into a regular venv
pip install mcp-nbbソースから
git clone https://github.com/lacausecrypto/mcp-nbb.git
cd mcp-nbb
pip install -e .パッケージには完全な拡張カタログ(src/nbb_mcp/data/catalog/ 配下に約9MB)が同梱されています。通常の使用にビルド手順は不要です。
Related MCP server: OECD MCP Server
Claude Desktopの設定
macOSでは ~/Library/Application Support/Claude/claude_desktop_config.json を編集し、Windowsでは %APPDATA%\Claude\claude_desktop_config.json、Linuxでは同等のファイルを編集します。
uvx を使用する場合(PyPI公開後は推奨)
{
"mcpServers": {
"nbb": {
"command": "uvx",
"args": ["mcp-nbb"]
}
}
}ローカルの編集可能インストールから
macOS / Linux:
{
"mcpServers": {
"nbb": {
"command": "/Users/you/projects/mcp-nbb/.venv/bin/mcp-nbb"
}
}
}Windows:
{
"mcpServers": {
"nbb": {
"command": "C:\\Users\\you\\projects\\mcp-nbb\\.venv\\Scripts\\mcp-nbb.exe"
}
}
}Claude Desktopを再起動すると、MCPパネルに6つの nbb_* ツールが表示されます。
ツール
ツール | API呼び出し | 目的 |
| 0 | 221のローカルフィッシュ(en/fr/nl/de)に対するファジー検索。 |
| 0(デフォルト) | 完全な拡張フィッシュ — ディメンション、コードリスト、キーテンプレート、一般的なクエリ。 |
| 1 | 汎用データ取得。 |
| 1 | 18の一般的なクエリのためのトピックベースのショートカット — 下のトピック表を参照。 |
| N | 2〜5の系列を共通の時間インデックスに整列し、より細かい頻度を終値集計でダウンサンプリング。 |
| 0 | 診断スナップショット:カタログ、キャッシュ、API設定。 |
nbb_quick のトピック
トピック | データフロー | パラメータ |
|
|
|
|
| — |
|
| — |
|
| — |
|
| — |
|
| — |
|
| — |
|
| — |
|
| — |
|
| — |
|
| — |
|
| — |
|
| — |
|
| — |
|
| — |
|
| — |
|
| — |
リソース
URI | 内容 |
| カテゴリ別の全221データフローのMarkdownインデックス。 |
| 1つのフローの完全な拡張フィッシュ。 |
| カテゴリ内のすべてのフロー。 |
Claudeでのプロンプト例
「先月のEUR/USD為替レートは?」 →
nbb_quick("exchange_rate", currency="USD", frequency="D", last_n_observations=30)
「2020年以降のベルギーのGDP成長率と失業率を比較して。」 →
nbb_compare([{dataflow_id:"DF_QNA_DISS",label:"GDP"}, {dataflow_id:"DF_UNEMPLOY_RATE",label:"Unemployment"}], start_period="2020-Q1")
「消費者信用に関するNBBデータフローを探して。」 →
nbb_search("consumer credit")→nbb_describe(...)→nbb_query(...)。
設定(環境変数)
すべての設定には適切なデフォルトがあり、環境変数で上書きできます。
変数 | デフォルト | 目的 |
|
| SDMX RESTベースURL |
|
| リクエストごとのタイムアウト(秒) |
| ブラウザUA | WAFに必須 — デフォルトは有効なChrome UA文字列 |
|
| WAFに必須 |
|
| 永続ディスクキャッシュ |
| OSキャッシュディレクトリ | キャッシュ場所の上書き(デフォルトは |
|
| データ応答のTTL(秒) |
|
| 構造応答のTTL(秒) |
|
| 自己課すレート制限(リクエスト/期間) |
|
| レート制限ウィンドウ(秒) |
|
| 一時的なエラーでの再試行回数 |
|
|
|
|
|
|
デフォルトのキャッシュパスは次のように解決されます:
Linux:
~/.cache/mcp-nbb/macOS:
~/Library/Caches/mcp-nbb/Windows:
%LOCALAPPDATA%\mcp-nbb\Cache\
カタログの更新
同梱の src/nbb_mcp/data/catalog/ スナップショットは、221のデータフローそれぞれのDSDとコードリストを取得して再生成されます:
mcp-nbb-build-catalog --forceオプション:
--force— 既存のフィッシュを無視してすべて再構築。--limit N— 最初のNフローのみ処理(デバッグ用)。--only BE2/DF_EXR,BE2/DF_HICP_2025— 特定のフローを再構築。--concurrency 5— 並列DSDリクエスト。
ライブAPIに対する完全な再構築には約80秒かかります。カタログのフットプリントは、ディメンションごとにコードリストを200コードに切り詰めることで約9MBに制限されています(一部のIMFフローには65,000以上のコードがあります)。
毎週のGitHub Action(build-catalog.yml)がカタログを再構築し、ドリフトが検出された場合にPRを開きます。
トラブルシューティング
「WAFがHTMLリダイレクトを返しました」
NBB APIはWAFの背後にあり、ブラウザのような User-Agent と Origin: https://dataexplorer.nbb.be ヘッダーがないリクエストにはHTML 200リダイレクトを返します。クライアントはデフォルトで両方を注入します。NBB_USER_AGENT を上書きする場合は、本物らしいブラウザ文字列を維持してください。
データクエリで「HTTP 404 NoResultsFound」
SDMXキーがどの系列にも一致しませんでした。nbb_describe(dataflow_id) を使用して有効なコードを確認するか、filters={} または key="all" を渡してすべてを取得し、start_period/end_period で絞り込んでください。
「観測値が多すぎるため切り詰められました」
すべてのデータ応答はデフォルトで max_observations=200 に制限されています。nbb_query(max_observations=1000) で増やすか、期間ウィンドウでクエリを絞り込んでください。
カタログが見つからない
同梱の src/nbb_mcp/data/catalog/ なしで実行する場合は、mcp-nbb-build-catalog を一度実行してカタログを生成してください。
開発
完全な開発ワークフローについては CONTRIBUTING.md を参照してください。簡易版:
pip install -e ".[dev]"
pytest # full suite (unit + integration + E2E)
pytest -m "not e2e" # fast subset
ruff check src tests
mcp-nbb-build-catalog # refresh the bundled catalogue
mcp-nbb # run the server (stdio)CIはLinux、macOS、WindowsでPython 3.11と3.12を使用して実行されます。分類されたインベントリについては DATAFLOWS_CATALOG.md を参照してください。
セキュリティ
脆弱性は非公開で報告してください — SECURITY.md を参照。
ライセンス
MIT — 全文は LICENSE を参照。
免責事項
このプロジェクトはベルギー国立銀行と提携しておらず、承認も受けていません。これは彼らの公開SDMX REST APIの独立したクライアントです。ブラウザのような User-Agent と Origin ヘッダーは上流のWAFによって要求され、公開統計データにアクセスするためだけに使用されます。ユーザーはNBBの利用規約を遵守する責任があります。
This server cannot be deployed
Maintenance
Related MCP Connectors
Search and query 1,500+ OECD statistical datasets via SDMX. Keyless.
Query IMF SDMX 3.0 macroeconomic dataflows — WEO, BOP, CPI, exchange rates, 190 countries.
Macroeconomic and other official data from 170+ publishers, resolved from natural language with provenance.
BPstat — Banco de Portugal statistics API (Portuguese central bank). Keyless.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceProvides access to European Central Bank statistical data through SDMX data flows, enabling querying and listing of data flows via natural language or direct tool calls.1 npmMIT
- AlicenseNot gradedqualityAmaintenanceEnables searching, exploring, and querying over 1,500 OECD statistical datasets via SDMX, covering national accounts, employment, trade, PISA, health, and more.95 npm2Apache 2.0
- AlicenseAqualityBmaintenanceMCP server for Eurostat statistics, enabling seamless search, query, and analysis of over 8,900 EU datasets with support for SDMX, DuckDB SQL, NUTS regional filtering, and CSV export.121MIT

@pipeworx/bisofficial
AlicenseNot gradedqualityBmaintenanceEnables querying Bank for International Settlements central-bank and global financial statistics via the SDMX v2 API, including credit-to-GDP gaps, curated dataflows, and full registry search with dataset fetching, without authentication.224 npm1MIT