eurostat-mcp
A Model Context Protocol (MCP) server that provides tools to query Eurostat APIs for European statistics data.
README
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)
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
Install with uv (recommended)
# 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"
)
Popular Datasets
Economic
NAMA_10_GDP- GDP and main componentsNAMQ_10_GDP- Quarterly GDP
Labour Market
UNE_RT_M- Monthly unemployment rateUNE_RT_A- Annual unemployment rateLFSI_EMP_A- Employment rates
Population
DEMO_PJAN- Population on 1 JanuaryDEMO_GIND- Population change
Prices
PRC_HICP_MANR- Monthly inflation rates (HICP)
International Trade (Comext)
DS-059341- Trade by HS2-4-6 product codesDS-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
geoparameter for specific countries - Add
time_periodfor date ranges - For Comext datasets, specify
REPORTER,PARTNER,PRODUCT,FLOW
Timeout errors
Large datasets may timeout. Try:
- Using
last_n_observationsto limit results - Adding more specific filters
- Using
export_to_csvfor 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
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.