Was dieses MCP kann
Identifies Spanish buildings and produces automated housing reports using cadastral and other official public records, including report status and purchase options.
Tools
Eingabeschema
{'type': 'object', 'properties': {'language': {'enum': ['es', 'en', 'de', 'nl', 'fr'], 'type': 'string', 'default': 'es', 'description': 'Language of the texts in the answer (and of the report): es, en, de, nl or fr. Default es.'}, 'province': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'Spanish province by name (Madrid, València, Bizkaia…) or two-digit INE code (28). Omit both fields to list every province.'}, 'municipality': {'type': 'string', 'maxLength': 80, 'minLength': 2, 'description': 'Optional municipality name; it is looked up in the official street directory of the province.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['contract', 'language', 'provinces', 'municipalities', 'municipalityLookup', 'coverageNote'], 'properties': {'contract': {'type': 'string', 'const': 'agent-api-1.1.0'}, 'language': {'enum': ['es', 'en', 'de', 'nl', 'fr'], 'type': 'string'}, 'provinces': {'type': 'array', 'items': {'type': 'object', 'required': ['provinceCode', 'provinceLabel', 'territoryCode', 'status', 'foral', 'addressSource', 'unitSelection', 'buildingConditionRegistry', 'reason', 'note'], 'properties': {'note': {'type': 'string', 'maxLength': 600, 'minLength': 1}, 'foral': {'type': 'boolean'}, 'reason': {'anyOf': [{'enum': ['foral_adapter_pending', 'not_a_spanish_province'], 'type': 'string'}, {'type': 'null'}]}, 'status': {'enum': ['covered', 'not_yet_covered', 'unrecognized'], 'type': 'string'}, 'provinceCode': {'anyOf': [{'type': 'string', 'pattern': '^\\d{2}$'}, {'type': 'null'}]}, 'addressSource': {'anyOf': [{'enum': ['dgc', 'nora_foral_cadastres'], 'type': 'string'}, {'type': 'null'}]}, 'provinceLabel': {'anyOf': [{'type': 'string', 'maxLength': 120, 'minLength': 1}, {'type': 'null'}]}, 'territoryCode': {'anyOf': [{'type': 'string', 'maxLength': 64, 'minLength': 1}, {'type': 'null'}]}, 'unitSelection': {'anyOf': [{'enum': ['dwelling_or_building', 'building_only'], 'type': 'string'}, {'type': 'null'}]}, 'buildingConditionRegistry': {'anyOf': [{'enum': ['integrated', 'not_integrated'], 'type': 'string'}, {'type': 'null'}]}}, 'additionalProperties': False}, 'minItems': 1}, 'coverageNote': {'type': 'string', 'maxLength': 600, 'minLength': 1}, 'municipalities': {'anyOf': [{'type': 'array', 'items': {'type': 'object', 'required': ['provinceCode', 'municipalityDgcCode', 'municipalityIneCode', 'officialLabel'], 'properties': {'provinceCode': {'type': 'string', 'pattern': '^\\d{2}$'}, 'officialLabel': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'municipalityDgcCode': {'type': 'string', 'pattern': '^\\d{1,3}$'}, 'municipalityIneCode': {'type': 'string', 'pattern': '^\\d{3}$'}}, 'additionalProperties': False}, 'maxItems': 20}, {'type': 'null'}]}, 'municipalityLookup': {'enum': ['not_requested', 'found', 'not_found', 'unavailable'], 'type': 'string'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'required': ['resolutionToken', 'consent', 'consentStatementSha256'], 'properties': {'email': {'type': 'string', 'pattern': '^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$', 'maxLength': 254, 'minLength': 6, 'description': 'Optional email of the person for the ready notice, only with their permission.'}, 'consent': {'type': 'boolean', 'const': True, 'description': 'true only if the person explicitly accepted the consent text from get_products.'}, 'language': {'enum': ['es', 'en', 'de', 'nl', 'fr'], 'type': 'string', 'default': 'es', 'description': 'Language of the report and of the texts: es, en, de, nl or fr. Default es. Must be the language of the consent text shown.'}, 'resolutionToken': {'type': 'string', 'pattern': '^[A-Za-z0-9_-]{43}$', 'description': 'resolutionToken returned by resolve_building (valid 15 minutes).'}, 'consentStatementSha256': {'type': 'string', 'pattern': '^[0-9a-f]{64}$', 'description': 'consent.statementSha256 from get_products for the same language.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['contract', 'language', 'jobId', 'status', 'statusToken', 'previewUrl', 'pollAfterSeconds', 'emailNotice', 'notice'], 'properties': {'jobId': {'type': 'string', 'pattern': '^scr_[A-Za-z0-9_-]{22}$'}, 'notice': {'type': 'string', 'maxLength': 600, 'minLength': 1}, 'status': {'type': 'string', 'const': 'queued'}, 'contract': {'type': 'string', 'const': 'agent-api-1.1.0'}, 'language': {'enum': ['es', 'en', 'de', 'nl', 'fr'], 'type': 'string'}, 'previewUrl': {'type': 'string', 'pattern': '^https:\\/\\/[^\\s]+$', 'maxLength': 400}, 'emailNotice': {'type': 'boolean'}, 'statusToken': {'type': 'string', 'pattern': '^[A-Za-z0-9_-]{43}\\.[A-Za-z0-9_-]{43}$'}, 'pollAfterSeconds': {'type': 'integer', 'maximum': 600, 'minimum': 1}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'properties': {'language': {'enum': ['es', 'en', 'de', 'nl', 'fr'], 'type': 'string', 'default': 'es', 'description': 'Language of the texts in the answer (and of the report): es, en, de, nl or fr. Default es.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['contract', 'language', 'currency', 'vatIncluded', 'priceNote', 'products', 'upgrade', 'freeReportLimits', 'consent', 'checksCount', 'pricingUrl', 'orderUrl', 'exampleReportUrl', 'disclaimer'], 'properties': {'consent': {'type': 'object', 'required': ['text', 'statementSha256', 'termsVersion', 'termsUrl', 'privacyUrl'], 'properties': {'text': {'type': 'string', 'maxLength': 2000, 'minLength': 1}, 'termsUrl': {'type': 'string', 'pattern': '^https:\\/\\/[^\\s]+$', 'maxLength': 400}, 'privacyUrl': {'type': 'string', 'pattern': '^https:\\/\\/[^\\s]+$', 'maxLength': 400}, 'termsVersion': {'type': 'string', 'maxLength': 16, 'minLength': 1}, 'statementSha256': {'type': 'string', 'pattern': '^[0-9a-f]{64}$'}, 'agentContractingTermsUrl': {'type': 'string', 'pattern': '^https:\\/\\/[^\\s]+$', 'maxLength': 400}}, 'additionalProperties': False}, 'upgrade': {'type': 'object', 'required': ['from', 'to', 'priceCents', 'price'], 'properties': {'to': {'type': 'string', 'const': 'complete'}, 'from': {'type': 'string', 'const': 'simple'}, 'price': {'type': 'string', 'maxLength': 600, 'minLength': 1}, 'priceCents': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1}}, 'additionalProperties': False}, 'contract': {'type': 'string', 'const': 'agent-api-1.1.0'}, 'currency': {'type': 'string', 'const': 'EUR'}, 'language': {'enum': ['es', 'en', 'de', 'nl', 'fr'], 'type': 'string'}, 'orderUrl': {'type': 'string', 'pattern': '^https:\\/\\/[^\\s]+$', 'maxLength': 400}, 'products': {'type': 'array', 'items': {'type': 'object', 'required': ['tier', 'name', 'priceCents', 'price', 'description', 'requiresBuildingConditionRecord', 'format', 'emailRequired', 'orderChannel'], 'properties': {'name': {'type': 'string', 'maxLength': 600, 'minLength': 1}, 'tier': {'enum': ['free', 'simple', 'complete'], 'type': 'string'}, 'price': {'type': 'string', 'maxLength': 600, 'minLength': 1}, 'format': {'enum': ['redacted_web_preview', 'web_and_pdf'], 'type': 'string'}, 'priceCents': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'description': {'type': 'string', 'maxLength': 600, 'minLength': 1}, 'orderChannel': {'enum': ['agent_api', 'web'], 'type': 'string'}, 'emailRequired': {'type': 'boolean'}, 'requiresBuildingConditionRecord': {'type': 'boolean'}}, 'additionalProperties': False}, 'maxItems': 3, 'minItems': 3}, 'priceNote': {'type': 'string', 'maxLength': 600, 'minLength': 1}, 'disclaimer': {'type': 'string', 'maxLength': 600, 'minLength': 1}, 'pricingUrl': {'type': 'string', 'pattern': '^https:\\/\\/[^\\s]+$', 'maxLength': 400}, 'checksCount': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1}, 'vatIncluded': {'type': 'boolean', 'const': True}, 'exampleReportUrl': {'type': 'string', 'pattern': '^https:\\/\\/[^\\s]+$', 'maxLength': 400}, 'freeReportLimits': {'type': 'object', 'required': ['perEmail', 'note', 'agentChannelPerDay'], 'properties': {'note': {'type': 'string', 'maxLength': 600, 'minLength': 1}, 'perEmail': {'type': 'object', 'required': ['count', 'windowDays'], 'properties': {'count': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1}, 'windowDays': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1}}, 'additionalProperties': False}, 'agentChannelPerDay': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1}}, 'additionalProperties': False}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'required': ['jobId', 'statusToken'], 'properties': {'jobId': {'type': 'string', 'pattern': '^scr_[A-Za-z0-9_-]{22}$', 'description': 'jobId returned by create_free_report or purchase_report.'}, 'language': {'enum': ['es', 'en', 'de', 'nl', 'fr'], 'type': 'string', 'default': 'es', 'description': 'Language of the texts in the answer (and of the report): es, en, de, nl or fr. Default es.'}, 'statusToken': {'type': 'string', 'pattern': '^[A-Za-z0-9_-]{43}\\.[A-Za-z0-9_-]{43}$', 'description': 'statusToken returned by create_free_report or purchase_report.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['contract', 'language', 'jobId', 'status', 'stage', 'notice'], 'properties': {'jobId': {'type': 'string', 'pattern': '^scr_[A-Za-z0-9_-]{22}$'}, 'stage': {'anyOf': [{'type': 'string', 'pattern': '^[A-Z0-9_]{1,64}$'}, {'type': 'null'}]}, 'notice': {'type': 'string', 'maxLength': 600, 'minLength': 1}, 'status': {'enum': ['awaiting_payment', 'payment_received', 'queued', 'in_progress', 'ready', 'failed', 'expired', 'payment_expired', 'refunded'], 'type': 'string'}, 'payment': {'type': 'object', 'required': ['orderId', 'status'], 'properties': {'status': {'enum': ['pending', 'paid', 'expired', 'failed', 'refunded'], 'type': 'string'}, 'orderId': {'type': 'string', 'pattern': '^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$'}}, 'additionalProperties': False}, 'contract': {'type': 'string', 'const': 'agent-api-1.1.0'}, 'language': {'enum': ['es', 'en', 'de', 'nl', 'fr'], 'type': 'string'}, 'errorCode': {'type': 'string', 'pattern': '^[A-Z0-9_]{1,100}$'}, 'previewUrl': {'type': 'string', 'pattern': '^https:\\/\\/[^\\s]+$', 'maxLength': 400}, 'queuePosition': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'withLimitations': {'type': 'boolean'}, 'estimatedSeconds': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'pollAfterSeconds': {'type': 'integer', 'maximum': 600, 'minimum': 1}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'properties': {'language': {'enum': ['es', 'en', 'de', 'nl', 'fr'], 'type': 'string', 'default': 'es', 'description': 'Language of the texts in the answer (and of the report): es, en, de, nl or fr. Default es.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['contract', 'language', 'count', 'checks', 'semaphore', 'methodologyUrl'], 'properties': {'count': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1}, 'checks': {'type': 'array', 'items': {'type': 'object', 'required': ['number', 'key', 'title', 'question', 'integration', 'includedIn'], 'properties': {'key': {'enum': ['aluminosis', 'iee', 'risks_by_year', 'asbestos', 'cadastral_record', 'building_condition', 'energy_certificate', 'land_history', 'ground_motion', 'geology_and_drainage', 'flooding', 'seismic', 'radon', 'sun_hours', 'solar_potential', 'price_and_market', 'surroundings_and_noise', 'land_affections', 'land_classification', 'climate_and_light', 'wildfire', 'industrial_facilities', 'public_safety'], 'type': 'string'}, 'title': {'type': 'string', 'maxLength': 600, 'minLength': 1}, 'number': {'type': 'integer', 'maximum': 99, 'minimum': 1}, 'question': {'type': 'string', 'maxLength': 600, 'minLength': 1}, 'includedIn': {'type': 'array', 'items': {'enum': ['free', 'simple', 'complete'], 'type': 'string'}, 'minItems': 1}, 'integration': {'enum': ['integrated', 'pending_integration'], 'type': 'string'}}, 'additionalProperties': False}, 'minItems': 1}, 'contract': {'type': 'string', 'const': 'agent-api-1.1.0'}, 'language': {'enum': ['es', 'en', 'de', 'nl', 'fr'], 'type': 'string'}, 'semaphore': {'type': 'object', 'required': ['ok', 'attention', 'no_data', 'not_included'], 'properties': {'ok': {'type': 'string', 'maxLength': 600, 'minLength': 1}, 'no_data': {'type': 'string', 'maxLength': 600, 'minLength': 1}, 'attention': {'type': 'string', 'maxLength': 600, 'minLength': 1}, 'not_included': {'type': 'string', 'maxLength': 600, 'minLength': 1}}, 'additionalProperties': False}, 'methodologyUrl': {'type': 'string', 'pattern': '^https:\\/\\/[^\\s]+$', 'maxLength': 400}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'required': ['tier', 'email', 'consent', 'consentStatementSha256', 'termsVersion', 'acceptTerms', 'waiveWithdrawalRight'], 'properties': {'tier': {'enum': ['simple', 'complete'], 'type': 'string', 'description': 'simple (essential report) or complete (only when the building has an IEE/ITE record).'}, 'email': {'type': 'string', 'pattern': '^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$', 'maxLength': 254, 'minLength': 6, 'description': 'Email of the person (required): receipt, private report link and withdrawal confirmation.'}, 'consent': {'type': 'boolean', 'const': True, 'description': "true: you accept the consent text from get_products on the person's behalf."}, 'language': {'enum': ['es', 'en', 'de', 'nl', 'fr'], 'type': 'string', 'default': 'es', 'description': 'Language of the report, the checkout page and the texts: es, en, de, nl or fr. Default es. Must be the language of the consent text shown.'}, 'freeReport': {'type': 'object', 'required': ['jobId', 'statusToken'], 'properties': {'jobId': {'type': 'string', 'pattern': '^scr_[A-Za-z0-9_-]{22}$'}, 'statusToken': {'type': 'string', 'pattern': '^[A-Za-z0-9_-]{43}\\.[A-Za-z0-9_-]{43}$'}}, 'description': 'A ready free report of the same person to buy from: { jobId, statusToken } from create_free_report. Give this or resolutionToken, not both.', 'additionalProperties': False}, 'acceptTerms': {'type': 'boolean', 'const': True, 'description': 'true: you accept the Terms, including the clause on contracting through an agent (consent.agentContractingTermsUrl).'}, 'termsVersion': {'type': 'string', 'maxLength': 16, 'minLength': 1, 'description': 'consent.termsVersion from get_products (the Terms version you accept).'}, 'resolutionToken': {'type': 'string', 'pattern': '^[A-Za-z0-9_-]{43}$', 'description': 'resolutionToken returned by resolve_building (valid 15 minutes). Give this or freeReport, not both.'}, 'waiveWithdrawalRight': {'type': 'boolean', 'const': True, 'description': 'true: the person asks for immediate execution and loses the 14-day right of withdrawal once the report is supplied.'}, 'consentStatementSha256': {'type': 'string', 'pattern': '^[0-9a-f]{64}$', 'description': 'consent.statementSha256 from get_products for the same language.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['contract', 'language', 'orderId', 'status', 'tier', 'name', 'priceCents', 'price', 'currency', 'vatIncluded', 'checkoutUrl', 'checkoutExpiresAt', 'jobId', 'statusToken', 'reportUrl', 'pollAfterSeconds', 'termsVersion', 'agentContractingTermsUrl', 'notice'], 'properties': {'name': {'type': 'string', 'maxLength': 600, 'minLength': 1}, 'tier': {'enum': ['simple', 'complete'], 'type': 'string'}, 'jobId': {'type': 'string', 'pattern': '^scr_[A-Za-z0-9_-]{22}$'}, 'price': {'type': 'string', 'maxLength': 600, 'minLength': 1}, 'notice': {'type': 'string', 'maxLength': 600, 'minLength': 1}, 'status': {'type': 'string', 'const': 'awaiting_payment'}, 'orderId': {'type': 'string', 'pattern': '^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$'}, 'contract': {'type': 'string', 'const': 'agent-api-1.1.0'}, 'currency': {'type': 'string', 'const': 'EUR'}, 'language': {'enum': ['es', 'en', 'de', 'nl', 'fr'], 'type': 'string'}, 'reportUrl': {'type': 'string', 'pattern': '^https:\\/\\/[^\\s]+$', 'maxLength': 400}, 'priceCents': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1}, 'checkoutUrl': {'type': 'string', 'pattern': '^https:\\/\\/checkout\\.stripe\\.com\\/\\S+$', 'maxLength': 2048}, 'statusToken': {'type': 'string', 'pattern': '^[A-Za-z0-9_-]{43}\\.[A-Za-z0-9_-]{43}$'}, 'vatIncluded': {'type': 'boolean', 'const': True}, 'termsVersion': {'type': 'string', 'maxLength': 16, 'minLength': 1}, 'pollAfterSeconds': {'type': 'integer', 'maximum': 600, 'minimum': 1}, 'checkoutExpiresAt': {'type': 'string', 'format': 'date-time', 'pattern': '^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$'}, 'agentContractingTermsUrl': {'type': 'string', 'pattern': '^https:\\/\\/[^\\s]+$', 'maxLength': 400}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'properties': {'scope': {'type': 'string', 'const': 'building', 'description': 'Only with a 14-character cadastralReference: building to report on the whole building.'}, 'address': {'type': 'object', 'required': ['provinceCode', 'municipalityDgcCode', 'municipalityIneCode', 'streetTypeCode', 'streetCode', 'number'], 'properties': {'door': {'type': 'string', 'pattern': '^[\\p{L}\\p{N}/ .-]+$', 'maxLength': 16, 'minLength': 1}, 'block': {'type': 'string', 'pattern': '^[\\p{L}\\p{N}/ .-]+$', 'maxLength': 16, 'minLength': 1}, 'floor': {'type': 'string', 'pattern': '^[\\p{L}\\p{N}/ .-]+$', 'maxLength': 16, 'minLength': 1}, 'stair': {'type': 'string', 'pattern': '^[\\p{L}\\p{N}/ .-]+$', 'maxLength': 16, 'minLength': 1}, 'number': {'type': 'string', 'pattern': '^[\\p{L}\\p{N}/ -]+$', 'maxLength': 16, 'minLength': 1}, 'localityId': {'type': 'string', 'pattern': '^[0-9]{14}$'}, 'streetCode': {'type': 'string', 'pattern': '^[A-Z0-9]{1,15}$'}, 'provinceCode': {'type': 'string', 'pattern': '^\\d{2}$'}, 'streetTypeCode': {'type': 'string', 'pattern': '^[A-Z0-9]{1,4}$'}, 'municipalityDgcCode': {'type': 'string', 'pattern': '^\\d{1,3}$'}, 'municipalityIneCode': {'type': 'string', 'pattern': '^\\d{3}$'}}, 'description': 'Coded address from search_address (provinceCode, municipalityDgcCode, municipalityIneCode, streetTypeCode, streetCode, number; localityId in the Basque Country; optional block, stair, floor, door). Use instead of cadastralReference.', 'additionalProperties': False}, 'language': {'enum': ['es', 'en', 'de', 'nl', 'fr'], 'type': 'string', 'default': 'es', 'description': 'Language of the texts in the answer (and of the report): es, en, de, nl or fr. Default es.'}, 'cadastralReference': {'type': 'string', 'pattern': '^[A-Z0-9]{14}([A-Z0-9]{4}|[A-Z0-9]{6})?$', 'description': 'Cadastral reference: 14 characters (building or plot), 18 or 20 (a flat). Use instead of address.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['contract', 'language', 'status', 'evaluationScope', 'building', 'candidates', 'resolutionToken', 'resolutionExpiresInSeconds', 'ieeAvailability', 'availableTiers', 'notice'], 'properties': {'notice': {'type': 'string', 'maxLength': 600, 'minLength': 1}, 'status': {'enum': ['resolved', 'select_unit', 'not_found', 'unconfirmed'], 'type': 'string'}, 'building': {'anyOf': [{'type': 'object', 'required': ['cadastralReference', 'rc14'], 'properties': {'use': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'door': {'type': 'string', 'maxLength': 16, 'minLength': 1}, 'rc14': {'type': 'string', 'pattern': '^[A-Z0-9]{14}$'}, 'floor': {'type': 'string', 'maxLength': 16, 'minLength': 1}, 'stair': {'type': 'string', 'maxLength': 16, 'minLength': 1}, 'address': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'province': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'postalCode': {'type': 'string', 'pattern': '^\\d{5}$'}, 'municipality': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'surfaceAreaM2': {'type': 'number', 'exclusiveMinimum': 0}, 'constructionYear': {'type': 'integer', 'maximum': 2100, 'minimum': 1000}, 'cadastralReference': {'type': 'string', 'pattern': '^[A-Z0-9]{14,20}$'}}, 'additionalProperties': False}, {'type': 'null'}]}, 'contract': {'type': 'string', 'const': 'agent-api-1.1.0'}, 'language': {'enum': ['es', 'en', 'de', 'nl', 'fr'], 'type': 'string'}, 'candidates': {'type': 'array', 'items': {'type': 'object', 'required': ['cadastralReference', 'rc14'], 'properties': {'use': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'door': {'type': 'string', 'maxLength': 16, 'minLength': 1}, 'rc14': {'type': 'string', 'pattern': '^[A-Z0-9]{14}$'}, 'floor': {'type': 'string', 'maxLength': 16, 'minLength': 1}, 'stair': {'type': 'string', 'maxLength': 16, 'minLength': 1}, 'address': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'province': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'postalCode': {'type': 'string', 'pattern': '^\\d{5}$'}, 'municipality': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'surfaceAreaM2': {'type': 'number', 'exclusiveMinimum': 0}, 'constructionYear': {'type': 'integer', 'maximum': 2100, 'minimum': 1000}, 'cadastralReference': {'type': 'string', 'pattern': '^[A-Z0-9]{14,20}$'}}, 'additionalProperties': False}, 'maxItems': 200}, 'availableTiers': {'type': 'array', 'items': {'enum': ['free', 'simple', 'complete'], 'type': 'string'}, 'maxItems': 3}, 'evaluationScope': {'anyOf': [{'enum': ['building', 'dwelling'], 'type': 'string'}, {'type': 'null'}]}, 'ieeAvailability': {'anyOf': [{'enum': ['available', 'none', 'not_integrated', 'unverified'], 'type': 'string'}, {'type': 'null'}]}, 'resolutionToken': {'anyOf': [{'type': 'string', 'pattern': '^[A-Za-z0-9_-]{43}$'}, {'type': 'null'}]}, 'availableNumbers': {'type': 'array', 'items': {'type': 'string', 'maxLength': 16, 'minLength': 1}, 'maxItems': 40}, 'resolutionExpiresInSeconds': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1}, {'type': 'null'}]}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', 'required': ['kind', 'provinceCode', 'q'], 'properties': {'q': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'Text to search: municipality name, or street name optionally followed by the number ("Colón, 5").'}, 'kind': {'enum': ['municipality', 'street'], 'type': 'string', 'description': 'municipality (step 1) or street (step 2).'}, 'language': {'enum': ['es', 'en', 'de', 'nl', 'fr'], 'type': 'string', 'default': 'es', 'description': 'Language of the texts in the answer (and of the report): es, en, de, nl or fr. Default es.'}, 'provinceCode': {'type': 'string', 'pattern': '^\\d{2}$', 'description': 'Two-digit INE province code (e.g. 28 Madrid, 08 Barcelona).'}, 'streetTypeCode': {'type': 'string', 'pattern': '^[A-Z0-9]{1,4}$', 'description': 'Only with kind=street, optional: street type code to narrow the search (CL, AV, PZ…).'}, 'municipalityDgcCode': {'type': 'string', 'pattern': '^\\d{1,3}$', 'description': 'Only with kind=street: municipalityDgcCode from step 1.'}, 'municipalityIneCode': {'type': 'string', 'pattern': '^\\d{3}$', 'description': 'Only with kind=street: municipalityIneCode from step 1.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['contract', 'language', 'kind', 'options'], 'properties': {'kind': {'enum': ['municipality', 'street'], 'type': 'string'}, 'options': {'anyOf': [{'type': 'array', 'items': {'type': 'object', 'required': ['provinceCode', 'municipalityDgcCode', 'municipalityIneCode', 'officialLabel'], 'properties': {'provinceCode': {'type': 'string', 'pattern': '^\\d{2}$'}, 'officialLabel': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'municipalityDgcCode': {'type': 'string', 'pattern': '^\\d{1,3}$'}, 'municipalityIneCode': {'type': 'string', 'pattern': '^\\d{3}$'}}, 'additionalProperties': False}, 'maxItems': 20}, {'type': 'array', 'items': {'type': 'object', 'required': ['provinceCode', 'municipalityDgcCode', 'municipalityIneCode', 'officialLabel', 'streetTypeCode', 'streetCode'], 'properties': {'localityId': {'type': 'string', 'pattern': '^[0-9]{14}$'}, 'streetCode': {'type': 'string', 'pattern': '^[A-Z0-9]{1,15}$'}, 'provinceCode': {'type': 'string', 'pattern': '^\\d{2}$'}, 'localityLabel': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'officialLabel': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'streetTypeCode': {'type': 'string', 'pattern': '^[A-Z0-9]{1,4}$'}, 'streetTypeLabel': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'municipalityDgcCode': {'type': 'string', 'pattern': '^\\d{1,3}$'}, 'municipalityIneCode': {'type': 'string', 'pattern': '^\\d{3}$'}}, 'additionalProperties': False}, 'maxItems': 20}]}, 'contract': {'type': 'string', 'const': 'agent-api-1.1.0'}, 'language': {'enum': ['es', 'en', 'de', 'nl', 'fr'], 'type': 'string'}, 'numberHint': {'type': 'string', 'maxLength': 16, 'minLength': 1}}, 'additionalProperties': False}
Letzte Tool-Änderungen
Ähnliche MCP-Server
Microburbs Australian Property Data
Provides Australian property, suburb, valuation, sales, rental, zoning, school, risk, geospatial, and census statistics.
Superlógica Condomínios
Connects to a condominium ERP for billing, collections, agreements, expenses, bank movements, statements, files, communications, …
DFX Real Estate Intelligence
Provides US commercial real estate, parcel, debt maturity, bank CRE exposure, private capital, investor, ownership, occupancy, an…
RateAPI — live US mortgage, auto, HELOC, personal & deposit rates
Supplies live US lending and deposit rates, financing comparisons, affordability and amortization calculations, eligibility check…
immobilier
Creates, validates, analyzes, and exports French building and property designs as DXF, IFC, BCF, PDFs, visualizations, quantities…
US Company Intelligence for AI Agents (SEC EDGAR, x402)
Offers pay-per-call web extraction, search and LLM tools plus French company, property, procurement, marketplace and security dat…
lilo Vacation Rentals
Supports vacation-rental discovery, availability and direct booking, property operations, short-term-rental compliance, guest and…
Rafid Intelligence Network
Analyzes Oman properties using rental comparables, yields, costs, and payback metrics, and supports Oman company search, profilin…