Servidor MCP para consultar datos catastrales de España. Proporciona acceso a los servicios web de la Dirección General del Catastro
This server has basic tool definitions with descriptions and input schemas present for all 5 tools. However, there are significant quality gaps: (1) Tool names do not follow verb_noun conventions consistently, 'buscar_calle', 'buscar_numero', 'buscar_inmuebles' are Spanish verb forms, not English action verbs expected in MCP tool naming. (2) Descriptions are present but often lack depth, they state WHAT the tool does but rarely explain WHEN to use it or what distinguishes it from similar tools. For example, 'buscar_inmuebles' and 'buscar_numero' have overlapping purposes but no guidance on which to call. (3) Parameter descriptions are minimal and sometimes redundant with names (e.g., 'Código de la calle' for a 'calle' param). (4) No documented output schemas, the code parses XML responses but does not show LLMs what fields they should expect. (5) Error handling is present in code (parse_xml_error function) but not surfaced in tool descriptions. (6) No parameters have enums, ranges, or format constraints documented in descriptions. The server is functional but falls short of production-grade clarity and LLM-optimization standards.
Busca calles en una provincia y municipio especificado
Busca inmuebles por ubicación (provincia, municipio, calle, número)
Busca números de inmuebles en una calle específica
Busca inmuebles en un área rectangular definida por coordenadas geográficas
Obtiene información completa detallada de un inmueble usando su referencia catastral
Tool names are in Spanish (buscar_*, obtener_*) instead of English verb_noun convention (search_*, get_*). MCP standard is English. LLMs rely on English names for intent parsing.
No output schemas documented. Code parses complex XML (referencia_catastral, unidades_constructivas, subparcelas, etc.) but tool descriptions do not tell LLMs what fields to expect in responses. Forces LLMs to guess downstream field names.
No pagination parameters (limit, offset, page) documented for list-returning tools (buscar_calle, buscar_numero, buscar_inmuebles). No result caps mentioned. Code does not show pagination handling.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 39 | <=2025-11-25 | v2 |
Overlapping tool purposes with no guidance. 'buscar_numero' searches for building numbers on a street; 'buscar_inmuebles' searches for properties at a location. Descriptions do not clarify when to use each. LLMs will struggle to disambiguate.
Parameter descriptions lack constraint documentation. E.g., 'referencia_catastral' is described as '14-20 dígitos' in description but no regex pattern or length constraint in schema. Provincia and municipio accept 'names or codes' but no guidance on format or valid values.
Error handling present in code (parse_xml_error) but not documented in tool descriptions. No guidance for LLMs on what errors can occur, what they mean, or how to recover. Agents will fail silently on invalid provincia/municipio codes.
Parameter descriptions are redundant. E.g., buscar_calle has param 'calle' with description 'Nombre de la calle a buscar', the description just repeats the parameter name. No actionable details on format, examples, or when it's required.