chucho — Book Direct
What this MCP does
Finds published vacation rentals, provides property facts and photos, and opens direct host booking links without creating reservations or processing payments.
Tools
Input schema
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'locale': {'enum': ['en', 'es'], 'type': 'string', 'default': 'en'}}, 'additionalProperties': False}
Output schema
{'type': 'object', 'required': ['propertyId', 'propertyName', 'bookingUrl', 'bookingProvider', 'bookingStatus', 'reservationCreated', 'instructions', 'action'], 'properties': {'action': {'type': 'object', 'required': ['@type', 'name', 'target'], 'properties': {'name': {'type': 'string'}, '@type': {'type': 'string', 'const': 'ReserveAction'}, 'target': {'type': 'object', 'required': ['@type', 'urlTemplate', 'actionPlatform'], 'properties': {'@type': {'type': 'string', 'const': 'EntryPoint'}, 'urlTemplate': {'type': 'string', 'format': 'uri'}, 'actionPlatform': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}}, 'additionalProperties': False}, 'bookingUrl': {'type': 'string', 'format': 'uri'}, 'propertyId': {'type': 'string'}, 'instructions': {'type': 'string'}, 'propertyName': {'type': 'string'}, 'bookingStatus': {'type': 'string', 'const': 'requires_host_confirmation'}, 'bookingProvider': {'type': 'string', 'const': 'host'}, 'reservationCreated': {'type': 'boolean', 'const': False}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'locale': {'enum': ['en', 'es'], 'type': 'string', 'default': 'en'}}, 'additionalProperties': False}
Output schema
{'type': 'object', 'required': ['total', 'places', 'features', 'amenities', 'pool'], 'properties': {'pool': {'type': 'array', 'items': {'type': 'string'}}, 'total': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'places': {'type': 'array', 'items': {'type': 'object', 'required': ['key', 'label', 'fullLabel', 'kind', 'countryCode', 'parentKey', 'center', 'count'], 'properties': {'key': {'type': 'string'}, 'kind': {'enum': ['country', 'region', 'locality'], 'type': 'string'}, 'count': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'label': {'type': 'string'}, 'center': {'anyOf': [{'type': 'object', 'required': ['lat', 'lng'], 'properties': {'lat': {'type': 'number'}, 'lng': {'type': 'number'}}, 'additionalProperties': False}, {'type': 'null'}]}, 'fullLabel': {'type': 'string'}, 'parentKey': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'countryCode': {'type': 'string'}}, 'additionalProperties': False}}, 'features': {'type': 'array', 'items': {'type': 'object', 'required': ['key', 'label', 'count'], 'properties': {'key': {'type': 'string'}, 'count': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'label': {'type': 'string'}}, 'additionalProperties': False}}, 'amenities': {'type': 'array', 'items': {'type': 'object', 'required': ['key', 'count'], 'properties': {'key': {'type': 'string'}, 'count': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'locale': {'enum': ['en', 'es'], 'type': 'string', 'default': 'en'}}, 'additionalProperties': False}
Output schema
{'type': 'object', 'required': ['id', 'slug', 'name', 'city', 'region', 'country', 'location', 'facts', 'photos', 'offerings', 'bookingUrl', 'canonicalUrl', 'markdownUrl', 'updatedAt', 'revision', 'theme'], 'properties': {'id': {'type': 'string'}, 'city': {'type': 'string'}, 'name': {'type': 'string'}, 'slug': {'type': 'string'}, 'facts': {'type': 'object', 'required': ['rooms', 'amenities', 'photos', 'faq'], 'properties': {'faq': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'question', 'answer'], 'properties': {'id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'answer': {'type': 'object', 'required': ['en'], 'properties': {'en': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'es': {'type': 'string', 'maxLength': 4000}}, 'additionalProperties': False}, 'question': {'type': 'object', 'required': ['en'], 'properties': {'en': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'es': {'type': 'string', 'maxLength': 4000}}, 'additionalProperties': False}}, 'additionalProperties': False}, 'default': [], 'maxItems': 50}, 'beds': {'type': 'integer', 'maximum': 100, 'minimum': 0}, 'host': {'type': 'object', 'required': ['name', 'languages'], 'properties': {'name': {'type': 'string', 'maxLength': 160}, 'languages': {'type': 'array', 'items': {'type': 'string', 'maxLength': 160}, 'default': [], 'maxItems': 10}, 'description': {'type': 'object', 'required': ['en'], 'properties': {'en': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'es': {'type': 'string', 'maxLength': 4000}}, 'additionalProperties': False}}, 'additionalProperties': False}, 'pool': {'type': 'object', 'required': ['present'], 'properties': {'detail': {'type': 'object', 'required': ['en'], 'properties': {'en': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'es': {'type': 'string', 'maxLength': 4000}}, 'additionalProperties': False}, 'fenced': {'type': 'boolean'}, 'heated': {'type': 'boolean'}, 'present': {'type': 'boolean'}, 'privacy': {'enum': ['private', 'shared'], 'type': 'string'}}, 'additionalProperties': False}, 'rooms': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'beds': {'type': 'integer', 'maximum': 20, 'minimum': 0}, 'name': {'type': 'object', 'required': ['en'], 'properties': {'en': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'es': {'type': 'string', 'maxLength': 4000}}, 'additionalProperties': False}, 'bathroom': {'type': 'boolean'}, 'bedDescription': {'type': 'object', 'required': ['en'], 'properties': {'en': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'es': {'type': 'string', 'maxLength': 4000}}, 'additionalProperties': False}, 'airConditioning': {'type': 'boolean'}}, 'additionalProperties': False}, 'default': [], 'maxItems': 50}, 'rules': {'type': 'object', 'required': ['en'], 'properties': {'en': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'es': {'type': 'string', 'maxLength': 4000}}, 'additionalProperties': False}, 'photos': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'caption'], 'properties': {'id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'group': {'type': 'string', 'maxLength': 160}, 'caption': {'type': 'object', 'required': ['en'], 'properties': {'en': {'type': 'string', 'maxLength': 4000}, 'es': {'type': 'string', 'maxLength': 4000}}, 'additionalProperties': False}, 'publicListing': {'type': 'boolean'}}, 'additionalProperties': False}, 'default': [], 'maxItems': 40}, 'bedrooms': {'type': 'integer', 'maximum': 50, 'minimum': 0}, 'capacity': {'type': 'integer', 'maximum': 100, 'minimum': 1}, 'amenities': {'type': 'array', 'items': {'type': 'object', 'required': ['key', 'present'], 'properties': {'key': {'enum': ['air-conditioning', 'wifi', 'workspace', 'parking', 'pets', 'kitchen', 'washer', 'step-free'], 'type': 'string'}, 'detail': {'type': 'object', 'required': ['en'], 'properties': {'en': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'es': {'type': 'string', 'maxLength': 4000}}, 'additionalProperties': False}, 'present': {'type': 'boolean'}}, 'additionalProperties': False}, 'default': [], 'maxItems': 20}, 'bathrooms': {'type': 'number', 'maximum': 50, 'minimum': 0, 'multipleOf': 0.5}, 'constraint': {'type': 'object', 'required': ['en'], 'properties': {'en': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'es': {'type': 'string', 'maxLength': 4000}}, 'additionalProperties': False}, 'checkinTime': {'type': 'string', 'pattern': '^([01]\\d|2[0-3]):[0-5]\\d$'}, 'description': {'type': 'object', 'required': ['en'], 'properties': {'en': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'es': {'type': 'string', 'maxLength': 4000}}, 'additionalProperties': False}, 'positioning': {'type': 'object', 'required': ['en'], 'properties': {'en': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'es': {'type': 'string', 'maxLength': 4000}}, 'additionalProperties': False}, 'checkoutTime': {'type': 'string', 'pattern': '^([01]\\d|2[0-3]):[0-5]\\d$'}, 'connectivity': {'type': 'object', 'properties': {'claim': {'type': 'object', 'required': ['en'], 'properties': {'en': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'es': {'type': 'string', 'maxLength': 4000}}, 'additionalProperties': False}, 'measuredAt': {'type': 'string', 'format': 'date', '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])))$'}, 'downloadMbps': {'type': 'number', 'maximum': 10000, 'exclusiveMinimum': 0}}, 'additionalProperties': False}, 'localContent': {'type': 'array', 'items': {'type': 'string', 'maxLength': 160}, 'maxItems': 40}}, 'additionalProperties': False}, 'theme': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'photos': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'url', 'caption'], 'properties': {'id': {'type': 'string'}, 'url': {'type': 'string'}, 'group': {'type': 'string'}, 'caption': {'type': 'object', 'required': ['en'], 'properties': {'en': {'type': 'string'}, 'es': {'type': 'string'}}, 'additionalProperties': False}, 'publicListing': {'type': 'boolean'}}, 'additionalProperties': False}}, 'region': {'type': 'string'}, 'country': {'type': 'string'}, 'location': {'type': 'object', 'required': ['countryCode', 'revision', 'places'], 'properties': {'places': {'type': 'array', 'items': {'type': 'object', 'required': ['key', 'kind', 'countryCode', 'parentKey', 'label', 'labelEs', 'fullLabel', 'fullLabelEs', 'center'], 'properties': {'key': {'type': 'string'}, 'kind': {'enum': ['country', 'region', 'locality'], 'type': 'string'}, 'label': {'type': 'string'}, 'center': {'anyOf': [{'type': 'object', 'required': ['lat', 'lng'], 'properties': {'lat': {'type': 'number'}, 'lng': {'type': 'number'}}, 'additionalProperties': False}, {'type': 'null'}]}, 'labelEs': {'type': 'string'}, 'fullLabel': {'type': 'string'}, 'parentKey': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'countryCode': {'type': 'string'}, 'fullLabelEs': {'type': 'string'}}, 'additionalProperties': False}}, 'revision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'countryCode': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}}, 'additionalProperties': False}, 'revision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'offerings': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'description', 'source'], 'properties': {'id': {'type': 'string'}, 'name': {'type': 'object', 'required': ['en'], 'properties': {'en': {'type': 'string'}, 'es': {'type': 'string'}}, 'additionalProperties': False}, 'source': {'enum': ['activity', 'restaurant', 'grocery', 'offer'], 'type': 'string'}, 'imageUrl': {'type': 'string'}, 'description': {'type': 'object', 'required': ['en'], 'properties': {'en': {'type': 'string'}, 'es': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}}, 'updatedAt': {'type': 'string'}, 'bookingUrl': {'type': 'string'}, 'markdownUrl': {'type': 'string'}, 'canonicalUrl': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'q': {'type': 'string', 'default': '', 'maxLength': 160, 'description': 'Public destination name to look up; empty lists current named stay areas.'}, 'locale': {'enum': ['en', 'es'], 'type': 'string', 'default': 'en'}}, 'additionalProperties': False}
Output schema
{'type': 'object', 'required': ['areas', 'total', 'truncated'], 'properties': {'areas': {'type': 'array', 'items': {'type': 'object', 'required': ['key', 'label', 'count'], 'properties': {'key': {'type': 'string'}, 'count': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'label': {'type': 'string'}}, 'additionalProperties': False}}, 'total': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'truncated': {'type': 'boolean'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'q': {'type': 'string', 'default': '', 'maxLength': 160, 'description': 'Search public property names, locations and approved introduction text.'}, 'city': {'type': 'string', 'default': '', 'maxLength': 160}, 'page': {'type': 'integer', 'default': 1, 'maximum': 1000, 'minimum': 1}, 'pool': {'enum': ['', 'present', 'private', 'shared', 'absent'], 'type': 'string', 'default': ''}, 'place': {'type': 'string', 'default': '', 'maxLength': 240, 'description': 'Place key from the live filter catalog.'}, 'guests': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Minimum sleeping capacity.'}, 'locale': {'enum': ['en', 'es'], 'type': 'string', 'default': 'en'}, 'region': {'type': 'string', 'default': '', 'maxLength': 160}, 'country': {'type': 'string', 'default': '', 'maxLength': 160}, 'feature': {'enum': ['', 'private-pools', 'room-for-4', 'room-for-6', 'room-for-8', 'room-for-10', '2-bedrooms', '3-bedrooms', '4-bedrooms', 'pets', 'air-conditioning', 'workspace', 'step-free'], 'type': 'string', 'default': '', 'description': 'Collection key from the filter catalog.'}, 'amenities': {'type': 'string', 'default': '', 'maxLength': 240, 'description': 'Comma-separated amenity keys; every requested amenity must be explicitly present.'}, 'minBedrooms': {'type': 'integer', 'maximum': 50, 'minimum': 1}, 'minBathrooms': {'type': 'number', 'maximum': 50, 'minimum': 0.5, 'multipleOf': 0.5}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'q': {'type': 'string', 'default': '', 'maxLength': 160, 'description': 'Search public property names, locations and approved introduction text.'}, 'city': {'type': 'string', 'default': '', 'maxLength': 160}, 'page': {'type': 'integer', 'default': 1, 'maximum': 1000, 'minimum': 1}, 'pool': {'enum': ['', 'present', 'private', 'shared', 'absent'], 'type': 'string', 'default': ''}, 'place': {'type': 'string', 'default': '', 'maxLength': 240, 'description': 'Place key from the live filter catalog.'}, 'guests': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Minimum sleeping capacity.'}, 'locale': {'enum': ['en', 'es'], 'type': 'string', 'default': 'en'}, 'region': {'type': 'string', 'default': '', 'maxLength': 160}, 'country': {'type': 'string', 'default': '', 'maxLength': 160}, 'feature': {'enum': ['', 'private-pools', 'room-for-4', 'room-for-6', 'room-for-8', 'room-for-10', '2-bedrooms', '3-bedrooms', '4-bedrooms', 'pets', 'air-conditioning', 'workspace', 'step-free'], 'type': 'string', 'default': '', 'description': 'Collection key from the filter catalog.'}, 'amenities': {'type': 'string', 'default': '', 'maxLength': 240, 'description': 'Comma-separated amenity keys; every requested amenity must be explicitly present.'}, 'minBedrooms': {'type': 'integer', 'maximum': 50, 'minimum': 1}, 'minBathrooms': {'type': 'number', 'maximum': 50, 'minimum': 0.5, 'multipleOf': 0.5}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['id', 'type', 'sessionId', 'locale'], 'properties': {'id': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'type': {'enum': ['public_property_opened', 'public_booking_referral'], 'type': 'string'}, 'locale': {'enum': ['en', 'es'], 'type': 'string'}, 'sessionId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}}, 'additionalProperties': False}
Output schema
{'type': 'object', 'required': ['accepted'], 'properties': {'accepted': {'type': 'boolean'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['ids'], 'properties': {'ids': {'type': 'array', 'items': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'maxItems': 6, 'minItems': 1}, 'locale': {'enum': ['en', 'es'], 'type': 'string', 'default': 'en'}}, 'additionalProperties': False}
Output schema
{'type': 'object', 'required': ['properties', 'locale'], 'properties': {'locale': {'enum': ['en', 'es'], 'type': 'string'}, 'missingIds': {'type': 'array', 'items': {'type': 'string'}}, 'properties': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'place'], 'properties': {'id': {'type': 'string'}, 'beds': {'type': 'number'}, 'name': {'type': 'string'}, 'pool': {'type': 'object', 'required': ['present'], 'properties': {'present': {'type': 'boolean'}, 'privacy': {'enum': ['private', 'shared'], 'type': 'string'}}, 'additionalProperties': False}, 'place': {'type': 'string'}, 'bedrooms': {'type': 'number'}, 'capacity': {'type': 'number'}, 'bathrooms': {'type': 'number'}, 'areaDistanceKm': {'type': 'number'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['nearArea'], 'properties': {'page': {'type': 'integer', 'default': 1, 'maximum': 1000, 'minimum': 1}, 'pool': {'enum': ['', 'present', 'private', 'shared', 'absent'], 'type': 'string', 'default': ''}, 'guests': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Minimum sleeping capacity.'}, 'locale': {'enum': ['en', 'es'], 'type': 'string', 'default': 'en'}, 'feature': {'enum': ['', 'private-pools', 'room-for-4', 'room-for-6', 'room-for-8', 'room-for-10', '2-bedrooms', '3-bedrooms', '4-bedrooms', 'pets', 'air-conditioning', 'workspace', 'step-free'], 'type': 'string', 'default': '', 'description': 'Collection key from the filter catalog.'}, 'nearArea': {'type': 'string', 'maxLength': 240, 'minLength': 1, 'description': 'Exact public stay-area key from get_stay_areas; never invent a key or coordinates.'}, 'radiusKm': {'type': 'number', 'default': 30, 'maximum': 100, 'minimum': 1, 'description': 'Maximum approximate straight-line distance between public area centers, not home GPS or driving distance.'}, 'amenities': {'type': 'string', 'default': '', 'maxLength': 240, 'description': 'Comma-separated amenity keys; every requested amenity must be explicitly present.'}, 'minBedrooms': {'type': 'integer', 'maximum': 50, 'minimum': 1}, 'minBathrooms': {'type': 'number', 'maximum': 50, 'minimum': 0.5, 'multipleOf': 0.5}}, 'additionalProperties': False}
Output schema
{'type': 'object', 'required': ['total', 'page', 'pageSize', 'nextPage', 'area', 'radiusKm', 'distanceBasis', 'properties', 'locale'], 'properties': {'area': {'type': 'object', 'required': ['key', 'label'], 'properties': {'key': {'type': 'string'}, 'label': {'type': 'string'}}, 'additionalProperties': False}, 'page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'total': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'locale': {'enum': ['en', 'es'], 'type': 'string'}, 'nextPage': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}, 'pageSize': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'radiusKm': {'type': 'number'}, 'properties': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'place'], 'properties': {'id': {'type': 'string'}, 'beds': {'type': 'number'}, 'name': {'type': 'string'}, 'pool': {'type': 'object', 'required': ['present'], 'properties': {'present': {'type': 'boolean'}, 'privacy': {'enum': ['private', 'shared'], 'type': 'string'}}, 'additionalProperties': False}, 'place': {'type': 'string'}, 'bedrooms': {'type': 'number'}, 'capacity': {'type': 'number'}, 'bathrooms': {'type': 'number'}, 'areaDistanceKm': {'type': 'number'}}, 'additionalProperties': False}}, 'distanceBasis': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'q': {'type': 'string', 'default': '', 'maxLength': 160, 'description': 'Search public property names, locations and approved introduction text.'}, 'city': {'type': 'string', 'default': '', 'maxLength': 160}, 'page': {'type': 'integer', 'default': 1, 'maximum': 1000, 'minimum': 1}, 'pool': {'enum': ['', 'present', 'private', 'shared', 'absent'], 'type': 'string', 'default': ''}, 'place': {'type': 'string', 'default': '', 'maxLength': 240, 'description': 'Place key from the live filter catalog.'}, 'guests': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Minimum sleeping capacity.'}, 'locale': {'enum': ['en', 'es'], 'type': 'string', 'default': 'en'}, 'region': {'type': 'string', 'default': '', 'maxLength': 160}, 'country': {'type': 'string', 'default': '', 'maxLength': 160}, 'feature': {'enum': ['', 'private-pools', 'room-for-4', 'room-for-6', 'room-for-8', 'room-for-10', '2-bedrooms', '3-bedrooms', '4-bedrooms', 'pets', 'air-conditioning', 'workspace', 'step-free'], 'type': 'string', 'default': '', 'description': 'Collection key from the filter catalog.'}, 'amenities': {'type': 'string', 'default': '', 'maxLength': 240, 'description': 'Comma-separated amenity keys; every requested amenity must be explicitly present.'}, 'minBedrooms': {'type': 'integer', 'maximum': 50, 'minimum': 1}, 'minBathrooms': {'type': 'number', 'maximum': 50, 'minimum': 0.5, 'multipleOf': 0.5}}, 'additionalProperties': False}
Output schema
{'type': 'object', 'required': ['properties', 'locale', 'total', 'page', 'pageSize', 'nextPage'], 'properties': {'page': {'type': 'number'}, 'total': {'type': 'number'}, 'locale': {'enum': ['en', 'es'], 'type': 'string'}, 'nextPage': {'anyOf': [{'type': 'number'}, {'type': 'null'}]}, 'pageSize': {'type': 'number'}, 'missingIds': {'type': 'array', 'items': {'type': 'string'}}, 'properties': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'place'], 'properties': {'id': {'type': 'string'}, 'beds': {'type': 'number'}, 'name': {'type': 'string'}, 'pool': {'type': 'object', 'required': ['present'], 'properties': {'present': {'type': 'boolean'}, 'privacy': {'enum': ['private', 'shared'], 'type': 'string'}}, 'additionalProperties': False}, 'place': {'type': 'string'}, 'bedrooms': {'type': 'number'}, 'capacity': {'type': 'number'}, 'bathrooms': {'type': 'number'}, 'areaDistanceKm': {'type': 'number'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['query'], 'properties': {'query': {'type': 'string', 'maxLength': 160}}, 'additionalProperties': False}
Recent tool changes
Similar MCP servers
Award Travel Finder
Searches award flights and hotels, tracks bookings and loyalty balances, evaluates points and credit cards, and monitors travel r…
Good Turn Studio (all tools)
Offers consumer utilities for insurance claim appeals, subscription cancellation, flight fare research, financial recovery resour…
AI 代理人任務中樞
Aggregates Taiwan-focused tools for AI service comparisons, cryptocurrency data, game information, health guidance, and other con…
Gover MCP
Searches and manages corporate travel requests, flights, hotels, rental vehicles, passengers, carts, approvals, reservations, and…
DC Member API
Provides access to Dynamite Circle membership data, community profiles, chapters, events, trips, calendars, alerts, follows, agen…
Nomad Stays
Searches and books remote-work accommodations while supporting host listing management, rooms, packages, availability, and hospit…
lilo Vacation Rentals
Supports vacation-rental discovery, availability and direct booking, property operations, short-term-rental compliance, guest and…
mcp-server
Provides immigration, citizenship and residency programme research alongside tax, wealth structuring, banking, visa, treaty and c…