Hybrid

eurostat-mcp-server

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

io.github.cyanheads/eurostat-mcp-serverSource repository
Version0.11.1latest catalog version
ConnectionHybridstreamable-http · npm
PublishedOct 31, 2026catalog
UpdatedOct 31, 2026catalog
Overview

What this server provides

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

Connect

Remote endpoints

1
Remote endpoint 1streamable-http
https://eurostat.caseyjhand.com/mcp
Open endpoint
Install

Packages

2
Package 1npm
@cyanheads/eurostat-mcp-server0.11.1
  • EUROSTAT_CLAMP_LIMITS

    Clamp positive integer preview/search/dimension limits to 500/100/1000 with a notice. False restores schemas rejecting over-cap inputs.

    Format: boolean · Default: true
    Optional
  • MCP_LOG_LEVEL

    Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').

    Format: string · Default: info
    Optional
  • EUROSTAT_BASE_URL

    Eurostat API base URL. Override when using a mirror or proxy.

    Format: string · Default: https://ec.europa.eu/eurostat/api/dissemination
    Optional
  • EUROSTAT_COMEXT_BASE_URL

    Base URL of the Comext dissemination host, which serves every DS-* dataset code (detailed trade and PRODCOM). Override when using a mirror or proxy.

    Format: string · Default: https://ec.europa.eu/eurostat/api/comext/dissemination
    Optional
  • EUROSTAT_REQUEST_TIMEOUT_MS

    Total allowance for one Eurostat request across retries, backoff and body consumption, in milliseconds.

    Format: string · Default: 30000
    Optional
  • EUROSTAT_METADATA_TIMEOUT_MS

    Total allowance for one dataset's SDMX dataflow structure across retries, backoff and body consumption, in milliseconds. Defaults to 120000; separate from EUROSTAT_REQUEST_TIMEOUT_MS for large structures.

    Format: string · Default: 120000
    Optional
  • EUROSTAT_TOC_CACHE_TTL_MS

    How long a fetched catalogue TOC stays usable before the next catalogue call refreshes it, in milliseconds. Defaults to 12 hours.

    Format: string · Default: 43200000
    Optional
  • EUROSTAT_BULK_TIMEOUT_MS

    Total allowance for one eurostat_download_dataset transfer across request retries, backoff and streaming body consumption, in milliseconds. Defaults to 120000.

    Format: string · Default: 120000
    Optional
  • EUROSTAT_BULK_MAX_BYTES

    Byte budget for one eurostat_download_dataset transfer, counted on the decoded TSV rather than on the wire. Eurostat sends the body chunked with no Content-Length, so the budget is enforced while streaming and the transfer is aborted when it is reached. Defaults to 50 MiB.

    Format: string · Default: 52428800
    Optional
  • CANVAS_PROVIDER_TYPE

    Dataframe canvas backend. The default, 'duckdb', lists eurostat_dataframe_describe and eurostat_dataframe_query, stages query matches with stage=true or above 5,000 observations, and retains bulk downloads beyond their previews. Set to 'none' to disable the canvas and those tools. The DuckDB binding ships with the server.

    Format: string · Default: duckdb
    Optional
  • CANVAS_TEMP_PATH

    Parent directory for DuckDB canvas spill files: a private 'mcp-canvas-XXXXXX' directory is created inside it, so it must be writable by the server process. Defaults to the OS temp directory.

    Format: string
    Optional
  • CANVAS_TTL_MS

    Sliding lifetime of a staged dataframe canvas in milliseconds; every call against it extends the window. Defaults to 24 hours.

    Format: string · Default: 86400000
    Optional
  • CANVAS_DEFAULT_ROW_LIMIT

    Maximum complete rows a single eurostat_dataframe_query returns before reporting truncated.

    Format: string · Default: 10000
    Optional
  • EUROSTAT_DATAFRAME_DROP_ENABLED

    Set to 'true' to list eurostat_dataframe_drop, which removes one staged table from a dataframe canvas and leaves its other tables in place. Off by default because a drop cannot be undone; staged tables expire with their canvas either way. Has no effect with CANVAS_PROVIDER_TYPE=none.

    Format: boolean · Default: false
    Optional
Package 2npm
@cyanheads/eurostat-mcp-server0.11.1
http://localhost:3010/mcp
  • EUROSTAT_CLAMP_LIMITS

    Clamp positive integer preview/search/dimension limits to 500/100/1000 with a notice. False restores schemas rejecting over-cap inputs.

    Format: boolean · Default: true
    Optional
  • MCP_HTTP_HOST

    The hostname for the HTTP server.

    Format: string · Default: 127.0.0.1
    Optional
  • MCP_HTTP_PORT

    The port to run the HTTP server on.

    Format: string · Default: 3010
    Optional
  • MCP_HTTP_ENDPOINT_PATH

    The endpoint path for the MCP server.

    Format: string · Default: /mcp
    Optional
  • MCP_PUBLIC_URL

    Public origin override for deployments behind a TLS-terminating reverse proxy (e.g. https://mcp.example.com).

    Format: string
    Optional
  • MCP_AUTH_MODE

    Authentication mode to use: 'none', 'jwt', or 'oauth'.

    Format: string · Default: none
    Optional
  • MCP_LOG_LEVEL

    Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').

    Format: string · Default: info
    Optional
  • EUROSTAT_BASE_URL

    Eurostat API base URL. Override when using a mirror or proxy.

    Format: string · Default: https://ec.europa.eu/eurostat/api/dissemination
    Optional
  • EUROSTAT_COMEXT_BASE_URL

    Base URL of the Comext dissemination host, which serves every DS-* dataset code (detailed trade and PRODCOM). Override when using a mirror or proxy.

    Format: string · Default: https://ec.europa.eu/eurostat/api/comext/dissemination
    Optional
  • EUROSTAT_REQUEST_TIMEOUT_MS

    Total allowance for one Eurostat request across retries, backoff and body consumption, in milliseconds.

    Format: string · Default: 30000
    Optional
  • EUROSTAT_METADATA_TIMEOUT_MS

    Total allowance for one dataset's SDMX dataflow structure across retries, backoff and body consumption, in milliseconds. Defaults to 120000; separate from EUROSTAT_REQUEST_TIMEOUT_MS for large structures.

    Format: string · Default: 120000
    Optional
  • EUROSTAT_TOC_CACHE_TTL_MS

    How long a fetched catalogue TOC stays usable before the next catalogue call refreshes it, in milliseconds. Defaults to 12 hours.

    Format: string · Default: 43200000
    Optional
  • EUROSTAT_BULK_TIMEOUT_MS

    Total allowance for one eurostat_download_dataset transfer across request retries, backoff and streaming body consumption, in milliseconds. Defaults to 120000.

    Format: string · Default: 120000
    Optional
  • EUROSTAT_BULK_MAX_BYTES

    Byte budget for one eurostat_download_dataset transfer, counted on the decoded TSV rather than on the wire. Eurostat sends the body chunked with no Content-Length, so the budget is enforced while streaming and the transfer is aborted when it is reached. Defaults to 50 MiB.

    Format: string · Default: 52428800
    Optional
  • CANVAS_PROVIDER_TYPE

    Dataframe canvas backend. The default, 'duckdb', lists eurostat_dataframe_describe and eurostat_dataframe_query, stages query matches with stage=true or above 5,000 observations, and retains bulk downloads beyond their previews. Set to 'none' to disable the canvas and those tools. The DuckDB binding ships with the server.

    Format: string · Default: duckdb
    Optional
  • CANVAS_TEMP_PATH

    Parent directory for DuckDB canvas spill files: a private 'mcp-canvas-XXXXXX' directory is created inside it, so it must be writable by the server process. Defaults to the OS temp directory.

    Format: string
    Optional
  • CANVAS_TTL_MS

    Sliding lifetime of a staged dataframe canvas in milliseconds; every call against it extends the window. Defaults to 24 hours.

    Format: string · Default: 86400000
    Optional
  • CANVAS_DEFAULT_ROW_LIMIT

    Maximum complete rows a single eurostat_dataframe_query returns before reporting truncated.

    Format: string · Default: 10000
    Optional
  • EUROSTAT_DATAFRAME_DROP_ENABLED

    Set to 'true' to list eurostat_dataframe_drop, which removes one staged table from a dataframe canvas and leaves its other tables in place. Off by default because a drop cannot be undone; staged tables expire with their canvas either way. Has no effect with CANVAS_PROVIDER_TYPE=none.

    Format: boolean · Default: false
    Optional
View server metadata