Skip to main content
Glama

Eurostat MCP Server

A Model Context Protocol (MCP) server that provides tools to query Eurostat APIs for European statistics data.

Features

  • Search datasets - Find Eurostat datasets by keyword

  • Query data - Retrieve data with flexible filtering options

  • Export to CSV - Save data locally for further analysis

  • Support for both APIs:

    • SDMX 3.0 API for regular datasets (GDP, unemployment, population, etc.)

    • SDMX 2.1 Comext API for trade/production datasets (DS-prefixed)

Related MCP server: mcp-eurostat

Available Tools

Tool

Description

search_datasets

Search for datasets by keyword

get_dataset_info

Get metadata and dimensions for a dataset

query_eurostat_data

Query data with filters (geo, time, etc.)

get_available_values

List valid values for a dimension

list_popular_datasets

Show commonly used datasets by category

export_to_csv

Export data to a local CSV file

export_multiple_datasets

Batch export multiple datasets

Installation

Prerequisites

  • Python 3.10 or higher

  • uv (recommended) or pip

# Clone the repository
git clone https://github.com/YOUR_USERNAME/eurostat-mcp.git
cd eurostat-mcp

# Install dependencies
uv pip install -r requirements.txt

Install with pip

# Clone the repository
git clone https://github.com/YOUR_USERNAME/eurostat-mcp.git
cd eurostat-mcp

# Create virtual environment (optional but recommended)
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install dependencies
pip install -r requirements.txt

Configuration

Claude Desktop

Add the following to your Claude Desktop configuration file:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "eurostat": {
      "command": "uv",
      "args": [
        "--directory",
        "/path/to/eurostat-mcp",
        "run",
        "server.py"
      ]
    }
  }
}

Or with Python directly:

{
  "mcpServers": {
    "eurostat": {
      "command": "python",
      "args": ["/path/to/eurostat-mcp/server.py"]
    }
  }
}

Claude Code (CLI)

Add to your Claude Code settings (.claude/settings.json in your project or ~/.claude/settings.json globally):

{
  "mcpServers": {
    "eurostat": {
      "command": "python",
      "args": ["/path/to/eurostat-mcp/server.py"]
    }
  }
}

Usage Examples

Search for datasets

Search for GDP datasets
→ search_datasets("GDP")

Query unemployment data

Get monthly unemployment rate for Germany and France in 2024
→ query_eurostat_data(
    dataset_id="UNE_RT_M",
    geo="DE+FR",
    time_period="ge:2024"
  )

Query international trade data (Comext)

Get German exports to China in 2024
→ query_eurostat_data(
    dataset_id="DS-059341",
    filters="REPORTER=DE&PARTNER=CN&FLOW=2",
    time_period="2024"
  )

Export data to CSV

Export GDP data for EU countries
→ export_to_csv(
    dataset_id="NAMA_10_GDP",
    output_path="data/gdp_eu.csv",
    geo="EU27_2020",
    time_period="ge:2015"
  )

Economic

  • NAMA_10_GDP - GDP and main components

  • NAMQ_10_GDP - Quarterly GDP

Labour Market

  • UNE_RT_M - Monthly unemployment rate

  • UNE_RT_A - Annual unemployment rate

  • LFSI_EMP_A - Employment rates

Population

  • DEMO_PJAN - Population on 1 January

  • DEMO_GIND - Population change

Prices

  • PRC_HICP_MANR - Monthly inflation rates (HICP)

International Trade (Comext)

  • DS-059341 - Trade by HS2-4-6 product codes

  • DS-059331 - Trade by SITC codes

Business Surveys

  • ei_bsin_q_r2 - Industry survey results (quarterly)

  • ei_bsin_m_r2 - Industry confidence indicator (monthly)

Note: DS-prefixed datasets (Comext/Prodcom) require heavy filtering due to their size. Always specify REPORTER, PARTNER, PRODUCT, or other filters.

API Reference

This server uses the official Eurostat APIs:

Troubleshooting

"Data too large" error

Apply more filters to reduce the data size:

  • Add geo parameter for specific countries

  • Add time_period for date ranges

  • For Comext datasets, specify REPORTER, PARTNER, PRODUCT, FLOW

Timeout errors

Large datasets may timeout. Try:

  • Using last_n_observations to limit results

  • Adding more specific filters

  • Using export_to_csv for large extractions

Dataset not found

Use search_datasets() to find the correct dataset ID, or list_popular_datasets() to browse common datasets.

License

MIT License - see LICENSE file.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Acknowledgments

Related MCP Connectors

Related MCP Servers