ZBS Index What actually exists in applied AI, with the source next to it

mcp server

eurostat-mcp-server

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

Description as published by the maintainer. Source

  • version 0.6.0
  • active
  • retrieval

active — Most recent push to the repository was 2026-08-04. Dashed tags are derived by ZBS Index from the published description, not stated by the maintainer.

What this server can do

8 functions, named and described by the server itself. Parameter names are shown because they say more about what a function does than its name usually does.

eurostat_browse_themes(theme_code)
Navigate the Eurostat theme tree. Without theme_code returns the top-level theme folders (Economy, Population, Transport, etc.) — the practical starting points. With a theme_code returns its immediate children: subtheme folders and datasets in that branch. Use this for structured discovery when you know the domain but not the dataset code, or to drill down from a broad topic to a specific dataset. Pair with eurostat_search_datasets for keyword-based discovery.
eurostat_dataframe_describe(canvas_id)
List the tables staged on a Eurostat dataframe canvas, with their row counts and column names and types. Call this before eurostat_dataframe_query to learn the table and column names to write SQL against. The canvas_id comes from a eurostat_query_dataset or eurostat_download_dataset response that reported a staged table. Every observation column is flat, but the two stagers write different dimension columns, so read the columns reported here rather than assuming: eurostat_query_dataset gives each dimension a code column named after the dimension (e.g. "geo") plus a label companion (e.g. "geo_label"); eurostat_download_dataset gives code columns only — the bulk endpoint carries no labels — plus a "time" column. Both write the same five measure columns — obs_value, obs_flag, obs_flag_label, conf_status, conf_status_label — carrying the same codes for the same observation, so tables from the two stagers join on dimension codes and time and compare like with like. Required: canvas_id.
eurostat_dataframe_query(sql, canvas_id)
Run a read-only SQL SELECT against tables staged on a Eurostat dataframe canvas — the way to reach observations past the 5,000-row inline cap of eurostat_query_dataset and past the inline preview of a eurostat_download_dataset bulk download, and to aggregate, group, or join across staged tables without re-fetching from Eurostat. Call eurostat_dataframe_describe first for the table and column names, which differ between the two stagers. Only a single SELECT statement runs: statement chaining, non-SELECT verbs, and functions that read files or external data are rejected. Columns are flat — every dimension is a code column named after the dimension, the measure is obs_value, the observation flag is obs_flag / obs_flag_label and the confidentiality marker is conf_status / conf_status_label; a "_label" companion per dimension exists only on tables eurostat_query_dataset staged. Both stagers write the same five measure columns with the same codes, so join their tables on dimension codes and time and compare obs_flag or conf_status across them directly. Required: canvas_id, sql.
eurostat_download_dataset(filters, canvas_id, dataset_code, since_period, until_period, preview_limit)
Download a Eurostat dataset in bulk through the SDMX 2.1 TSV endpoint and stage every observation as a SQL table on the dataframe canvas — the route to a whole dataset, where eurostat_query_dataset is the route to a slice of one. The TSV wire format is roughly half the bytes of the JSON-stat body eurostat_query_dataset reads, so it reaches datasets that would otherwise time out, and it is expanded here into one row per observation. Filters take the same dimension-code map eurostat_query_dataset uses and are applied server-side by Eurostat; call eurostat_get_dataset_info first for the dimension codes and eurostat_get_dimension_values for their values. Narrow with since_period/until_period rather than asking for the most recent N periods — the TSV layout keeps a column for every period whichever is requested, so a period range is what actually shrinks the response. Transfers are bounded by a byte budget enforced while streaming: when it is spent the download stops and budgetExceeded is set, leaving a prefix of the dataset rather than an error. Only preview_limit rows come back inline; the rest are reachable with eurostat_dataframe_query when this deployment runs a canvas, and are not retained when it does not. Required: dataset_code.
eurostat_get_dataset_info(dataset_code)
Fetch metadata for a Eurostat dataset: dimensions with valid values, time range, observation count, and last-update date. Call this before eurostat_query_dataset or eurostat_download_dataset to discover what dimension codes are valid (unit, na_item, geo, etc.); eurostat_download_dataset builds its positional filter key from this dimension list, so a filter naming a dimension absent here is rejected outright. Returns up to 10 sample values per dimension for orientation; use eurostat_get_dimension_values to list the full set for large dimensions. Required: dataset_code.
eurostat_get_dimension_values(dimension, geo_level, dataset_code)
List all valid values for a specific dimension in a Eurostat dataset (e.g., all unit codes for nama_10_gdp, all geo codes for a regional dataset). Use this when eurostat_get_dataset_info returns more values than the 10-item sample, or to confirm exact codes before querying. For the "geo" dimension, use geo_level to filter by NUTS hierarchy (country, nuts1, nuts2, nuts3). Invalid dimension_value codes silently return no data from eurostat_query_dataset, and are rejected by Eurostat as a fault on eurostat_download_dataset; use this tool to verify codes first. Required: dataset_code, dimension.
eurostat_query_dataset(lang, filters, canvas_id, geo_level, dataset_code, since_period, until_period, last_n_periods)
Fetch statistical data from a Eurostat dataset with dimension filters. Returns decoded observations with dimension codes and labels, numeric values, an OBS_FLAG status (e.g., "p" = provisional, "e" = estimated) and a separate CONF_STATUS confidentiality marker (e.g., "C" = confidential, which is usually why a value is null), capped at 5,000 inline rows. Call eurostat_get_dataset_info first to discover valid dimension codes and values. Apply filters to keep the result set manageable — large unfiltered queries may trigger an async response error. Use filters.geo for specific country/region codes, or geo_level for NUTS hierarchy filtering (mutually exclusive). Use last_n_periods for the N most recent periods without knowing the end date. This tool fetches a slice: past the inline cap, either narrow the filters, or — on a deployment that runs a dataframe canvas — read the staged SQL table this response names in tableName with eurostat_dataframe_query rather than re-querying Eurostat. When the target is a whole dataset rather than a slice, eurostat_download_dataset reads the SDMX bulk endpoint instead and is the cheaper route. Required: dataset_code.
eurostat_search_datasets(limit, query, cursor)
Search the Eurostat catalogue by keyword. Returns matching datasets with codes, descriptions, period coverage, and theme breadcrumbs. Use this to discover dataset codes before calling eurostat_get_dataset_info, then eurostat_query_dataset for a slice of a dataset or eurostat_download_dataset for the whole of one. Results are limited to datasets and predefined tables — folders are excluded. Required: query.

Last successful function declaration observed on . Source: https://eurostat.caseyjhand.com/mcp. We list what the server declared; we do not call any of these functions.

Endpoint status observed on . Source: https://eurostat.caseyjhand.com/mcp.

Signals

These are separate measurements of different things. They are deliberately not combined into one score, because a popularity number that mixes website traffic with saves and stars cannot be checked or acted on.

Signal Value What it measures Window Observed Source
GitHub stars 3 Number of GitHub accounts that bookmarked this repository since it was created. It is a bookmark count, not installs, not active users and not quality. cumulative, all time GitHub
Last commit 2026-08-04 Date of the most recent push to any branch. This is the strongest cheap indicator of whether the project is still maintained. point in time GitHub
Open issues 0 Open issues plus open pull requests, as GitHub counts them together. A high number can mean an active project or an abandoned one. as of fetch GitHub
Latest published version 0.6.0 Latest version string the maintainer published to the registry. as of fetch Model Context Protocol
Registry record last updated 2026-08-04 When the registry record was last updated by its maintainer. point in time Model Context Protocol
License Apache-2.0 Licence GitHub detected in the repository. Detection can be wrong; the LICENSE file is authoritative. as of fetch GitHub
First listed in the MCP Registry 2026-08-04 Date this server was first published to the official MCP Registry. Not a usage or quality measure. point in time Model Context Protocol
repository status active The repository exists on GitHub and is not archived. This says nothing about how recently it was worked on. as of fetch GitHub
mcp tools declared 8 tools Number of functions the server itself declared when asked to list them. This is what the server offers an agent, not a measure of how well any of them work. as of probe eurostat.caseyjhand.com
mcp endpoint status ok The server listed 8 functions when asked. as of probe eurostat.caseyjhand.com

Where to get it

Related, by what their authors tagged them

  • io.github.cyanheads/un-comtrade-mcp-server — last commit 2026-06-13, shares cyanheads, trade
    UN Comtrade international trade statistics via MCP. Country/HS lookups, flows, balances, rankings.
  • Tokonomix Council — last commit 2026-07-30, shares eu
    Multi-model consensus: 2-6 frontier LLMs answer, an independent judge synthesises one answer.
  • be.vibedeploy/vibedeploy — last commit 2026-08-06, shares eu
    Deploy and host AI-built websites on EU infrastructure, straight from your AI agent.
  • l0g.fr Risk Intelligence — last commit 2026-08-06, shares economy
    Read-only macro risk analysis, evidence, signals, and source-backed research from l0g.fr.
  • io.github.derekslinz/meta-data-mcp — last commit 2026-08-04, shares eurostat
    Query 76 open data APIs — government, science, finance, environment, and more.
  • io.github.drivenbymyai-max/sputnikx-market — last commit 2026-03-31, shares eurostat
    EU trade analytics, product catalog, orders, and heating fuel calculator for AI agents.
  • KTA-Oracle — last commit 2026-04-16, shares economy
    Live KTA rates, market data, payment rails, AML/VAT compliance, SDK snippets. 16 tools.
  • io.github.cyanheads/faostat-mcp-server — last commit 2026-07-30, shares bun, cyanheads, open-data
    UN FAOSTAT global food & agriculture statistics over a local SQLite mirror, via MCP.
  • Statistics Canada MCP Server — last commit 2026-08-02, shares open-data, statistics
    Access Statistics Canada data via the Web Data Services API
  • io.github.cyanheads/imf-mcp-server — last commit 2026-08-06, shares cyanheads, statistics
    Query IMF SDMX 3.0 macroeconomic dataflows — WEO, BOP, CPI, exchange rates, 190 countries.

These share tags the maintainers applied themselves, such as cyanheads, trade, eu, economy. Common tags like "mcp" or "ai" are ignored for this: agreeing with six hundred other projects is not a similarity.

This is not a recommendation and not a test result. It is a map of what the authors said their work is about.

Also from cyanheads

How the author describes it

Topics the maintainer set on GitHub: bun, cyanheads, demography, economy, eu, eurostat, gdp, mcp, mcp-server, model-context-protocol, nuts, open-data, statistics, trade, typescript.

This record as data

Every field on this page, with its source and observation date, is in the catalog JSON. Fetch the whole kind at once instead of parsing this HTML.

GET /api/v1/entries/mcp_server.json

Sources

  1. cyanheads/eurostat-mcp-server on GitHub — GitHub, observed , trust tier 3.
  2. Tools declared by the MCP server at https://eurostat.caseyjhand.com/mcp — eurostat.caseyjhand.com, observed , trust tier 4.
  3. Official MCP Registry — Model Context Protocol, observed , trust tier 1.