Skip to main content
Glama

mcp-nbb

CI PyPI version Python versions License: MIT MCP compatible

ベルギー国立銀行(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: Thailand NSO 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呼び出し

目的

nbb_search(query, …)

0

221のローカルフィッシュ(en/fr/nl/de)に対するファジー検索。

nbb_describe(dataflow_id, …)

0(デフォルト)

完全な拡張フィッシュ — ディメンション、コードリスト、キーテンプレート、一般的なクエリ。force_refresh=True でライブ再検証。

nbb_query(dataflow_id, key=…, filters=…)

1

汎用データ取得。key(生のSDMX)または filters{"FREQ":"D","EXR_CURRENCY":"USD"})のいずれか。

nbb_quick(topic, …)

1

18の一般的なクエリのためのトピックベースのショートカット — 下のトピック表を参照。

nbb_compare(series, …)

N

2〜5の系列を共通の時間インデックスに整列し、より細かい頻度を終値集計でダウンサンプリング。

nbb_status()

0

診断スナップショット:カタログ、キャッシュ、API設定。

nbb_quick のトピック

トピック

データフロー

パラメータ

exchange_rate

BE2/DF_EXR

currency, frequency

policy_rate

BE2/DF_IRESCB

mortgage_rate

BE2/DF_MIR

long_term_yield

BE2/DF_IROLOYLD

inflation_hicp

BE2/DF_HICP_2025

inflation_national

BE2/DF_NICP_2025

ppi

BE2/DF_PPI

industrial_production

BE2/DF_INDPROD

gdp / gdp_growth

BE2/DF_QNA_DISS

unemployment_rate

BE2/DF_UNEMPLOY_RATE

employment

BE2/DF_EMPLOY_DISS

government_debt

BE2/DF_CGD

government_deficit

BE2/DF_NFGOV_NET_DISS

current_account

BE2/DF_BOPBPM6

consumer_confidence

BE2/DF_CONSN

business_confidence

BE2/DF_BUSSURVM

trade_balance

BE2/DF_EXTERNAL_TRADE_OVERVIEW

リソース

URI

内容

nbb://catalog

カテゴリ別の全221データフローのMarkdownインデックス。

nbb://dataflow/{agency}/{dataflow_id}

1つのフローの完全な拡張フィッシュ。

nbb://category/{category}

カテゴリ内のすべてのフロー。


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(...)


設定(環境変数)

すべての設定には適切なデフォルトがあり、環境変数で上書きできます。

変数

デフォルト

目的

NBB_API_BASE_URL

https://nsidisseminate-stat.nbb.be/rest

SDMX RESTベースURL

NBB_API_TIMEOUT

30

リクエストごとのタイムアウト(秒)

NBB_USER_AGENT

ブラウザUA

WAFに必須 — デフォルトは有効なChrome UA文字列

NBB_ORIGIN

https://dataexplorer.nbb.be

WAFに必須

NBB_HTTP_CACHE_ENABLED

true

永続ディスクキャッシュ

NBB_HTTP_CACHE_PATH

OSキャッシュディレクトリ

キャッシュ場所の上書き(デフォルトは platformdirs.user_cache_dir

NBB_MEMORY_CACHE_TTL_DATA

300

データ応答のTTL(秒)

NBB_MEMORY_CACHE_TTL_STRUCTURE

3600

構造応答のTTL(秒)

NBB_RATE_LIMIT_REQUESTS

100

自己課すレート制限(リクエスト/期間)

NBB_RATE_LIMIT_PERIOD

60

レート制限ウィンドウ(秒)

NBB_RETRY_ATTEMPTS

3

一時的なエラーでの再試行回数

NBB_LOG_LEVEL

INFO

DEBUG/INFO/WARNING/ERROR

NBB_LOG_FORMAT

json

json または console

デフォルトのキャッシュパスは次のように解決されます:

  • 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-AgentOrigin: 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-AgentOrigin ヘッダーは上流のWAFによって要求され、公開統計データにアクセスするためだけに使用されます。ユーザーはNBBの利用規約を遵守する責任があります。

A
license - permissive license
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
0dRelease cycle
3Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables querying economic statistics from over 80 providers via DBnomics, with tools to list providers and datasets.
    8
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Enables natural language discovery, querying, and analysis of Thailand's official statistics from the National Statistical Office via SDMX REST API. It provides tools for searching dataflows, exploring structures, and fetching data with caching and bilingual support.
    8
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Provides 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.
    3
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Access Statbel Belgium open data via natural language queries. Provides tools to query bestat datasets through an MCP gateway.
    11
    MIT

View all related MCP servers

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.

  • BPstat — Banco de Portugal statistics API (Portuguese central bank). Keyless.

View all MCP Connectors

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/lacausecrypto/mcp-nbb'

If you have feedback or need assistance with the MCP directory API, please join our Discord server