Skip to main content
Glama
italia

Schema.gov.it MCP Server

Official
by italia

Inspect Concept

inspect_concept
Read-onlyIdempotent

Get a comprehensive semantic profile of a concept from schema.gov.it, showing its hierarchy, own and inherited properties, and usage data, with both asserted and effective views.

Instructions

Get a comprehensive profile of a concept from schema.gov.it, with explicit raw vs effective views.

Args:

  • uri: URI of the concept to inspect

  • mode: "raw" | "effective" (default: "effective")

  • source: "schema" | "local" | "hybrid" (default: "schema")

  • file_path / content / upload_id: local context when source="local" or source="hybrid"

  • lang: "it" | "en" | "any" (default: "any")

Tip: Use search_concepts first if you do not know the URI.

mode: "raw" — only explicitly asserted triples:

  • definition: literal annotations (label, comment, definition…)

  • hierarchy: direct type, parent classes (rdfs:subClassOf / skos:broader), child classes

  • usage: instance count

  • own_properties: properties with rdfs:domain exactly this class

mode: "effective" (default) — full OWL/RDFS-implied view, adds:

  • inherited_properties: properties from ancestor classes via rdfs:subClassOf+/skos:broader+, each row annotated with the ancestor that declares domain (distinguishes asserted-on-this-class from inherited)

  • incoming: properties pointing to instances of this type (data-level)

  • outgoing: properties used by instances of this type (data-level)

Interpreting own vs inherited:

  • own_properties = rdfs:domain written explicitly for this class → if missing, the property may still apply via inheritance

  • inherited_properties = rdfs:domain written on an ancestor → redundant to re-assert on this class unless restricting range

  • A property absent from both may still apply via owl:restriction, owl:equivalentClass, or owl:unionOf/intersectionOf (not shown — use query_sparql for those cases)

Limitations of effective mode:

  • owl:equivalentClass: not expanded (equivalent classes share all properties but this tool shows only the rdfs:subClassOf chain)

  • owl:unionOf / owl:intersectionOf: not traversed (anonymous class expressions)

  • owl:imports: schema.gov.it resolves these server-side; the endpoint already includes imported triples

Hybrid mode:

  • source="hybrid" uses the local/uploaded ontology as the base graph

  • for effective mode it enriches missing inherited properties and labels from schema.gov.it when ancestor URIs are known locally

  • it does not create a fully unified graph and does not resolve arbitrary owl:imports chains

When to use this vs X:

  • vs inspect_local_concept: use this for concepts already in the remote schema.gov.it catalog; use inspect_local_concept for a local/uploaded ontology

  • vs describe_resource: use this for a semantic profile (hierarchy, inherited properties, usage); use describe_resource for the raw RDF dump of a resource

  • vs query_sparql: use this when you want the standard profile of one concept; use query_sparql only for custom questions not covered here

All queries run in parallel for performance.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
uriYesThe URI of the concept to inspect
langNoPreferred label language; "any" keeps all languages.any
modeNo"raw": only asserted triples (own_properties, no ancestor traversal). "effective" (default): adds inherited_properties via rdfs:subClassOf+/skos:broader+ and data-level incoming/outgoing.effective
formatNoRDF content type for inline content
sourceNoExecution context: "schema" for schema.gov.it, "local" for a local/uploaded ontology, "hybrid" for local base + schema.gov.it enrichment.schema
contentNoInline RDF content when source='local' or 'hybrid'
file_pathNoAbsolute path to a local ontology file when source='local' or 'hybrid'
upload_idNoUploaded ontology store ID when source='local' or 'hybrid'
Behavior5/5

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

The description goes far beyond the annotations (readOnlyHint, openWorldHint, idempotentHint, destructiveHint) by detailing the exact behavior of each mode, including limitations of effective mode (owl:equivalentClass, owl:unionOf, owl:imports not expanded), hybrid mode details, and interpretation of own vs inherited properties. There is no contradiction with annotations.

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

Conciseness5/5

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

The description is well-structured with clear headings, bullet points for args and mode details, and a concise 'When to use this vs X' section. Despite its length, every sentence provides necessary information, and the structure allows for easy scanning. It is front-loaded with the core purpose and immediately useful details.

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

Completeness5/5

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

Given the complexity of the tool (8 parameters, 3 enums, no output schema), the description covers all relevant aspects: parameter behavior, return structure (including differentiation of sections for each mode), limitations, and comparative guidance. The inclusion of interpretation details and performance notes ('All queries run in parallel') adds completeness.

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

Parameters5/5

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

With 100% schema coverage, the description adds significant meaning beyond the schema by explaining the semantics of each parameter. For example, it elaborates on the 'mode' parameter ('raw' vs 'effective') with detailed sub-sections, explains how 'source' modes interact, and provides tips for interpreting 'own_properties' and 'inherited_properties'. The lang parameter is also clarified.

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?

The description clearly states the tool's purpose: 'Get a comprehensive profile of a concept from schema.gov.it, with explicit raw vs effective views.' It distinguishes between modes and explicitly contrasts with sibling tools like inspect_local_concept, describe_resource, and query_sparql in the 'When to use this vs X' section, ensuring the agent knows exactly what this tool does and how it differs.

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

Usage Guidelines5/5

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

The description provides explicit when-to-use and when-not-to-use guidance. It includes a dedicated 'When to use this vs X' section that compares with three sibling tools, stating clear conditions for each. Additionally, it gives a tip to use search_concepts first if the URI is unknown, providing practical usage context.

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

Install Server

Other Tools

Latest Blog Posts

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/italia/dati-semantic-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server