Skip to main content
Glama
scampion

eurostat-mcp

by scampion

eurostat-mcp

Servidor MCP de acceso a datos Eurostat, diseñado para modelos locales (probado para Qwen3.8-27B): 4 tools, esquemas estrechos, validación en el servidor, salidas compactadas.

Arquitectura

Modèle (Qwen3.8-27B via vLLM / llama.cpp + harness MCP)
   │  tool calls
   ▼
server.py        4 tools : search_datasets, get_structure, list_codes, query_data
   │             validation DSD + suggestions difflib + plafond 400 cellules
   ▼
store.py         SQLite : catalogue en FTS5 (TTL 24h), structures DSD (TTL 24h)
   ▼
eurostat_client.py   API dissémination Eurostat (catalogue TSV + Statistics JSON-stat)

El modelo nunca construye URLs SDMX. Toda solicitud pasa por query_data, que valida dimensiones y códigos contra el DSD en caché y devuelve errores accionables (Código 'FRA' desconocido. ¿Querías decir: FR?).

Related MCP server: DuckDB Eurostat MCP Server

Instalación

pip install "mcp>=1.2" httpx pyarrow duckdb   # SDK mcp 1.x et 2.x
python -m territorial_mcp.server                      # stdio
MCP_TRANSPORT=http python -m territorial_mcp.server   # streamable HTTP

Config del cliente MCP (stdio):

{
  "mcpServers": {
    "eurostat": {
      "command": "python",
      "args": ["-m", "territorial_mcp.server"],
      "cwd": "/chemin/vers/eurostat-mcp"
    }
  }
}

Secuencia típica del lado del modelo

  1. search_datasets("GDP quarterly") → códigos candidatos

  2. get_structure("namq_10_gdp") → dimensiones, códigos truncados

  3. list_codes("namq_10_gdp", "geo", contains="fr") si es necesario

  4. query_data("namq_10_gdp", {"geo": "FR+BE", "na_item": "B1GQ", "unit": "CP_MEUR"}, time_from="2022")

Nota para Qwen3.8-27B: forzar un nivel de razonamiento medio/bajo (el valor por defecto xhigh sobre-piensa las secuencias de tools simples).

Modo offline total

# 1. (en ligne) construire le miroir — TOC-driven, idempotent
python -m territorial_mcp.mirror --datasets nama_10_gdp,une_rt_m
python -m territorial_mcp.mirror --all        # tout le catalogue, ~24 Go compressés
python -m territorial_mcp.mirror --resync     # cron quotidien : ne retélécharge
                                           # que ce que le TOC signale comme modifié

# 2. (hors ligne) servir uniquement depuis le miroir + caches
EUROSTAT_OFFLINE=1 python -m territorial_mcp.server
  • Datos: Parquet zstd en formato largo (dims, time, value, flag), un archivo por dataset, consultado mediante DuckDB. query_data sirve el espejo con prioridad incluso fuera del modo offline, y muestra la fecha de los datos ("espejo local, datos Eurostat del DD.MM.AAAA").

  • Estructuras + catálogo: actualizados en cada sync, servidos sin TTL en modo offline; serve-stale-on-error cuando Eurostat no está disponible.

  • La invalidación se controla mediante las columnas last update of data del TOC, no por un TTL: --resync solo toca los datasets modificados.

Límites del esqueleto y evoluciones

  • Búsqueda: solo FTS5/BM25. Añadir una búsqueda híbrida con embeddings (ej. bge-m3 en sqlite-vec) para consultas vagas.

  • Estructuras: obtenidas mediante el truco lastTimePeriod=1 en la API Statistics. Para datasets muy grandes, cambiar al endpoint SDMX 2.1 datastructure (XML) con parsing dedicado.

  • Caché de datos: solo se cachean las estructuras. Añadir una caché de respuestas query_data (TTL 24h — Eurostat publica a las 11h/23h).

  • Agregaciones: migrar store.py a DuckDB para ofrecer agregaciones del lado del servidor (promedios, crecimiento) en lugar de devolver datos brutos al modelo.

  • HTTP multi-usuario: añadir autenticación (bearer) y limitación de tasa delante del transporte streamable HTTP.

Install Server
F
license - not found
A
quality
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (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

View all related MCP servers

Related MCP Connectors

  • Search and query the Eurostat catalogue — EU economy, demography, trade, and NUTS regional data.

  • Eurostat MCP — wraps Eurostat Statistical Data API (no auth required)

  • Gateway between LLM agents and world data through eight tools and a bundled endpoint catalog.

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/scampion/nutshell-mcp'

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