Skip to main content
Glama

mcp-nbb

CI PyPI version Python versions License: MIT MCP compatible

MCP-сервер для National Bank of Belgium SDMX статистического API.

Предоставляет 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 .

Пакет поставляется с полным обогащённым каталогом (~9 МБ в src/nbb_mcp/data/catalog/). Для обычного использования не требуется этап сборки.


Related MCP server: Thailand NSO MCP Server

Конфигурация Claude Desktop

Отредактируйте ~/Library/Application Support/Claude/claude_desktop_config.json на macOS, %APPDATA%\Claude\claude_desktop_config.json на Windows или эквивалентный файл на 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 — 6 инструментов nbb_* появятся на панели MCP.


Инструменты

Инструмент

Вызовы 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

Индекс Markdown всех 221 потоков данных по категориям.

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

Полная обогащённая карточка для одного потока.

nbb://category/{category}

Все потоки в категории.


Примеры запросов в Claude

"Какой курс EUR/USD за последний месяц?" → nbb_quick("exchange_rate", currency="USD", frequency="D", last_n_observations=30)

"Сравните рост ВВП Бельгии с уровнем безработицы с 2020 года." → 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

Базовый URL SDMX REST

NBB_API_TIMEOUT

30

Таймаут на запрос (с)

NBB_USER_AGENT

браузерный UA

Требуется для WAF — по умолчанию используется корректная строка UA Chrome

NBB_ORIGIN

https://dataexplorer.nbb.be

Требуется для WAF

NBB_HTTP_CACHE_ENABLED

true

Постоянный дисковый кэш

NBB_HTTP_CACHE_PATH

системный каталог кэша

Переопределить расположение кэша (по умолчанию 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/ пересоздаётся путём получения DSD + списков кодов для каждого из 221 потоков данных:

mcp-nbb-build-catalog --force

Параметры:

  • --force — пересоздать все карточки, игнорируя существующие.

  • --limit N — обработать только первые N потоков (отладка).

  • --only BE2/DF_EXR,BE2/DF_HICP_2025 — пересоздать конкретные потоки.

  • --concurrency 5 — параллельные запросы DSD.

Полное пересоздание занимает ~80 секунд при обращении к живому API. Размер каталога ограничен ~9 МБ за счёт усечения списков кодов до 200 кодов на измерение (в некоторых потоках IMF более 65 000 кодов).

Еженедельное действие GitHub Action (build-catalog.yml) пересоздаёт каталог и открывает PR при обнаружении расхождений.


Устранение неполадок

«WAF вернул HTML-редирект»

API NBB находится за WAF, который возвращает HTML-редирект с кодом 200 для любого запроса без браузерного User-Agent и заголовка Origin: https://dataexplorer.nbb.be. Клиент по умолчанию добавляет оба. Если вы переопределяете 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.

Отказ от ответственности

Этот проект не связан с National Bank of Belgium и не одобрен им. Это независимый клиент их публичного SDMX REST API. Браузерные заголовки User-Agent и Origin требуются вышестоящим 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