Skip to main content
Glama

Expat Living Italy

Get one comune's profile

get_comune
Read-only

One Italian comune's population, foreign residents by citizenship, property purchase/rent price, price-to-rent, verified tax-regime eligibility, its province's rollup, layers (climate, air quality, crime, healthcare quality, age, population change and every other Italy-map layer) and provinceWellbeing (ISTAT BES indicators, polarity-aware percentiles) — looked up by 6-digit ISTAT code. Each layer's grain and measuredFor say whose number it is: a province or region value is not a measurement of this comune — say so when you quote it. Every field is wrapped in a provenance envelope (source, vintage, extractedOn, license); repeat the vintage when you state the number, and if a value is null, say why rather than treating it as zero.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
istatCodeYes6-digit ISTAT comune code, e.g. 075029.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only provide readOnlyHint=true; the description goes well beyond that by warning that layer `grain`/`measuredFor` may describe a province or region rather than the comune, that null values must be explained rather than read as zero, and that each field carries a provenance envelope. These are genuine behavioral caveats not present in the structured fields.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The opening sentence is very long and enumerates the payload, but it is front-loaded with the core action and key, and the two follow-up sentences each carry distinct, actionable guidance (grain interpretation, provenance/null handling). Dense but nearly every clause earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description must carry the burden of describing the return shape, and it does so thoroughly (layers, provinceWellbeing, provenance envelope fields). It stops short of describing result granularity or error behavior for an invalid/unknown code, but is sufficient to call and interpret the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There is exactly one parameter with 100% schema description coverage, including the pattern and an example (075029), so the schema does the work. The description repeats the '6-digit ISTAT code' lookup key but adds no syntax or format detail beyond what is already documented.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Specific verb+resource: retrieves one comune's profile by 6-digit ISTAT code, and enumerates the returned payload (population, foreign residents, prices, tax eligibility, layers, provinceWellbeing). This clearly differentiates it from search_comuni (search) and list_datasets (catalog listing), so an agent can pick it without opening sibling schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The lookup key ('6-digit ISTAT code') is stated, which implies use when the code is already known, but the description never explicitly contrasts this with search_comuni or states when-not to use it. Usage is inferable rather than spelled out.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources