MCP server to query Italian statistics (ISTAT) via SDMX API — compatible with any MCP client
{
"mcpServers": {
"istat": {
"cwd": "/path/to/istat_mcp_server",
"args": [
"-m",
"istat_mcp_server"
],
"command": "python"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
MCP server to query Italian statistics (ISTAT) via SDMX API — compatible with any MCP client
Is it safe?
No package registry to scan.
No authentication — any process on your machine can connect.
MIT. View license →
Is it maintained?
Last commit 3 days ago. 8 stars.
Will it work with my client?
Transport: stdio, sse. Works with Claude Desktop, Cursor, Claude Code, and most MCP clients.
No automated test available for this server. Check the GitHub README for setup instructions.
No known vulnerabilities.
This server is missing a description. Tools and install config are also missing.If you've used it, help the community.
Add informationHave you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
MCP Server for GCP environment for interacting with various Observability APIs.
AI cost tracking: 11 tools for spend, budgets, and Claude Code + Cursor + Cline costs
Real-time GitHub Actions observability: DORA Metrics, Cost Analysis, CI/CD Health dashboards.
MCP server for Yandex.Direct API — campaigns, ads, statistics, keywords. Bearer token auth.
MCP Security Weekly
Get CVE alerts and security updates for Istat_mcp_server and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
MCP server for accessing Italian statistical data from the ISTAT SDMX API.
This Model Context Protocol (MCP) server provides Claude Desktop with access to Italian statistical data from ISTAT (Istituto Nazionale di Statistica) through the SDMX REST API. It implements a two-layer caching mechanism to minimize API calls and provides eight tools for discovering, querying, and retrieving statistical data.
8 MCP Tools for data discovery and retrieval:
discover_dataflows - Find available datasets by keywords (with blacklist filtering)get_structure - Get dimension definitions and codelists for a datastructure IDget_constraints - Get available constraint values for each dimension with descriptions (combines structure + constraints + codelist descriptions)get_codelist_description - Get descriptions in Italian/English for codelist valuesget_concepts - Get semantic definitions of SDMX conceptsget_data - Fetch actual statistical data in TSV table format (with blacklist validation)get_cache_diagnostics - Debug tool to inspect cache statusget_territorial_codes - Resolve ISTAT REF_AREA codes for Italia, ripartizioni, regioni, province, and comuniRecommended Workflow (simple and efficient):
discover_dataflows to find the dataflow you're interested inget_constraints to see all dimensions with valid values AND descriptions in one call
get_structure + get_codelist_description for all dimensionsget_dataget_data with the appropriate dimension filters to retrieve actual dataAlternative workflow (manual approach):
get_structure with a datastructure ID to see dimensions and their codelistsget_codelist_description manually for each codelist you needget_concepts if you need semantic definitions of dimensions/attributesTwo-Layer Cache:
Rate Limiting: Maximum 3 API calls per minute with automatic queuing
Retry Logic: Exponential backoff on transient errors
Dataflow Blacklist: Filter out specific dataflows from all queries
git clone https://github.com/ondata/istat_mcp_server.git
cd istat_mcp_server
With uv (recommended):
uv sync
uv sync automatically creates a .venv directory and installs all dependencies into it. To run commands manually, activate it first:
# Linux/macOS
source .venv/bin/activate
# Windows
.venv\Scripts\activate
With pip:
python -m venv .venv
# Linux/macOS
source .venv/bin/activate
# Windows
.venv\Scripts\activate
pip install -e .
.env file (optional, uses defaults if not present):cp .env.example .env
Optional: for slow availableconstraint responses used by get_constraints, set:
AVAILABLECONSTRAINT_TIMEOUT_SECONDS=180
This server works with any MCP-compatible client. The sections below cover the most common ones.
Claude Desktop | Claude Code | Gemini CLI | VS Code | Codex CLI | Claude Desktop on Windows with Python on WSL2
In all examples, replace
/path/to/istat_mcp_serverwith the actual path to this directory, andpythonwithpython3if needed on your system.