Skip to main content
Glama
italia

Schema.gov.it MCP Server

Official
by italia

Search Concepts

search_concepts
Read-onlyIdempotent

Search for Italian government concepts, classes, and properties by keyword when the exact URI is unknown. Filter results by resource type or ontology to reduce noise.

Instructions

Fuzzy search for concepts/classes/properties by keyword.

Args:

  • keyword: Search term (e.g. 'amministrazione')

  • limit: Maximum results (default: 10)

  • resource_type: (optional) Filter by type: "class", "property", "concept"

  • ontology_filter: (optional) URI prefix to restrict the search (e.g. 'https://w3id.org/italia/onto/COV/')

  • prefer_core: (optional) If true, results from core ontologies (COV, CPV, CLV, l0) are ranked first

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

Returns:

  • Matching subjects with type and label

When to use this vs X:

  • use this when you do not know the exact URI yet

  • vs search_in_vocabulary: use this to search across the whole catalog; use search_in_vocabulary or browse_vocabulary only when the ConceptScheme is already known

Use when: You don't know the exact URI of a concept. Use resource_type and ontology_filter to reduce noise.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
langNoPreferred label language; "any" keeps all languages.any
limitNo
keywordYesThe search term (e.g. 'amministrazione')
prefer_coreNoIf true, rank results from COV, CPV, CLV, l0 ontologies first
resource_typeNoFilter by resource type: "class", "property", or "concept"
ontology_filterNoRestrict results to URIs starting with this prefix (e.g. 'https://w3id.org/italia/onto/COV/')
Behavior5/5

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

Disclosures include fuzzy search behavior, return format ('Matching subjects with type and label'), ranking with prefer_core, and default limit. Annotations (readOnlyHint, etc.) are consistent and description adds significant context beyond them.

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?

Well-structured with sections (description, args, returns, when to use). Every sentence provides value; no redundancy. Efficient length for a 6-parameter tool.

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 tool's complexity and no output schema, the description covers return format, parameter usage, and when to use. It is complete for an agent to select and invoke correctly.

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

Parameters4/5

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

Schema coverage is high (83%), and the description adds meaningful context: keyword example, limit default, resource_type options, ontology_filter example, prefer_core explanation, lang options. However, some parameter details are already in schema, so slightly above baseline.

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 'Fuzzy search for concepts/classes/properties by keyword', specifying the verb and resource. It distinguishes from sibling tools like search_in_vocabulary by explaining when to use each.

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?

Explicitly states when to use this tool ('when you do not know the exact URI yet') and contrasts with alternatives (search_in_vocabulary, browse_vocabulary). Also advises using resource_type and ontology_filter to reduce noise.

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