istat-mcp-suite
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MCP_STORAGE_DIR | No | Directory path where large data files are saved locally. Used by get_data when payloads are large or timeouts occur. | |
| DOWNLOAD_TIMEOUT_SECONDS | No | Timeout in seconds for file downloads when force_file_download is used. Default is 900. | 900 |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| discover_dataflowsA | Search ~4,700 available ISTAT statistical datasets (dataflows) by keywords. Returns dataflow id, Italian name and the datastructure id to feed into get_constraints. |
| get_constraintsA | Single-Call Metadata Tool: retrieves dimensions (with their position), valid constrained code values, and human-readable Italian/English labels for an ISTAT dataset in 1 query. Replaces the separate get_structure and get_codelist_description tools of earlier versions. Call this before get_data to build the key_filter. |
| get_conceptsA | Get semantic definitions for ISTAT SDMX concept IDs (e.g. REF_AREA, FREQ). |
| get_structure_diagramA | Generate a Mermaid.js diagram showing dataset dimensions, codelists, and hierarchies. |
| get_territorial_codesA | Instant offline lookup across 8,039 official ISTAT REF_AREA territorial codes (Comuni, Province, Regioni, Ripartizioni). Case-insensitive on name, REF_AREA code and ISTAT code. Example: search='Grosseto', level='comune' -> 053011. |
| get_dataA | Fetch statistical data from ISTAT. Returns formatted text inline for small queries and automatically downloads to a local disk file for large datasets, for payloads above 1 MB, or when force_file_download=True. The key_filter is a dotted SDMX key string (e.g. 'A.053011.W_SUPPL+W_TOTLOS'), not a dictionary. On dataflows with long time series (e.g. 22_389) pass last_n_observations=1, otherwise ISTAT scans the whole series and the request times out. |
| get_cache_diagnosticsA | Inspect cache hit/miss diagnostics, disk usage, and downloaded files list. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ManoloZocco/istat-mcp-suite'
If you have feedback or need assistance with the MCP directory API, please join our Discord server