booking
Beach Valencia holiday apartments (Valencia, Spain): availability, pricing, cancellation policy.
¿Debería usar esto?
Calidad y seguridad
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"booking": {
"url": "https://www.beachvalencia.com/api/mcp"
}
}
}Puntos de conexión remotos
https://www.beachvalencia.com/api/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (4)
🟢search_availability(check_in, check_out, adults, children, language)
Search availability across every apartment category for a given date range and party size. Returns one match per available category with total EUR price (public rate, no discount code), photos and a booking_url that opens beachvalencia.com with dates and guests pre-filled. Use it whenever the traveller asks "what do you have from X to Y for N people". Example: {"check_in":"2027-05-22","check_out":"2027-05-27","adults":4}.
Esquema de entrada
{
"type": "object",
"properties": {
"check_in": {
"type": "string",
"description": "Arrival date (YYYY-MM-DD, Europe/Madrid)."
},
"check_out": {
"type": "string",
"description": "Departure date (YYYY-MM-DD, Europe/Madrid); must be strictly after check_in."
},
"adults": {
"type": "integer",
"minimum": 1,
"maximum": 32,
"description": "Number of adults."
},
"children": {
"description": "Optional list of children ages. Only the count is used to size the property.",
"maxItems": 10,
"type": "array",
"items": {
"type": "integer",
"minimum": 0,
"maximum": 17
}
},
"language": {
"description": "Response language. Defaults to en if omitted or unsupported.",
"type": "string",
"enum": [
"es",
"en"
]
}
},
"required": [
"check_in",
"check_out",
"adults"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Esquema de salida
{
"type": "object",
"properties": {
"currency": {
"type": "string",
"const": "EUR"
},
"check_in": {
"type": "string"
},
"check_out": {
"type": "string"
},
"nights": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"guests": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"matches": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"max_guests": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"bedrooms": {
"type": "string"
},
"location": {
"type": "string"
},
"highlights": {
"type": "array",
"items": {
"type": "string"
}
},
"total_price_eur": {
"type": "number"
},
"nightly_avg_eur": {
"type": "number"
},
"nights": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"public_price_eur": {
"type": "number"
},
"discount_note": {
"type": "string"
},
"min_stay_nights": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"photos": {
"type": "array",
"items": {
"type": "string"
}
},
"booking_url": {
"type": "string"
}
},
"required": [
"id",
"name",
"max_guests",
"bedrooms",
"location",
"highlights",
"total_price_eur",
"nightly_avg_eur",
"nights",
"photos",
"booking_url"
],
"additionalProperties": false
}
},
"minimum_stay_only": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"min_stay_nights": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
}
},
"required": [
"id",
"name",
"min_stay_nights"
],
"additionalProperties": false
},
"description": "Properties that would be available if the stay met the minimum-nights rule."
},
"priority_note": {
"type": "string"
},
"priority_url": {
"type": "string"
}
},
"required": [
"currency",
"check_in",
"check_out",
"nights",
"guests",
"matches",
"minimum_stay_only",
"priority_note",
"priority_url"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_property_details(id, language)
Return description, capacity, amenities and photos for one property category (G1..G6 or G4B). Use it after search_availability when the traveller wants to compare or see more detail about a specific option. The exact apartment address and access instructions are shared by email only after the reservation is confirmed — never expose them here or invent them. Example: {"id":"G4","language":"en"}.
Esquema de entrada
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Property/type ID (G1..G6 or G4B)."
},
"language": {
"description": "Response language. Defaults to en.",
"type": "string",
"enum": [
"es",
"en"
]
}
},
"required": [
"id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Esquema de salida
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"max_guests": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"bedrooms": {
"type": "string"
},
"size_sqm": {
"type": [
"number",
"null"
]
},
"location": {
"type": "string"
},
"highlights": {
"type": "array",
"items": {
"type": "string"
}
},
"description": {
"type": "string"
},
"amenities": {
"type": "object",
"properties": {
"parking": {
"type": "boolean"
},
"pool_seasonal": {
"type": "boolean"
}
},
"required": [
"parking",
"pool_seasonal"
],
"additionalProperties": false
},
"photos": {
"type": "array",
"items": {
"type": "string"
}
},
"booking_url_base": {
"type": "string"
},
"priority_note": {
"type": "string"
},
"priority_url": {
"type": "string"
}
},
"required": [
"id",
"name",
"max_guests",
"bedrooms",
"size_sqm",
"location",
"highlights",
"description",
"amenities",
"photos",
"booking_url_base",
"priority_note",
"priority_url"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_quote(id, check_in, check_out, adults, children, ...)
Return the exact total EUR price for one property category and date range. The price matches what checkout charges a non-member with no discount code — if the traveller has a code, they enter it themselves on beachvalencia.com. Includes deposit and cancellation summary. If the dates are not available, "available" is false and booking_url points to the search page as a fallback. Example: {"id":"G4","check_in":"2027-06-08","check_out":"2027-06-15","adults":6}.
Esquema de entrada
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Property/type ID (G1..G6 or G4B)."
},
"check_in": {
"type": "string",
"description": "Arrival date YYYY-MM-DD."
},
"check_out": {
"type": "string",
"description": "Departure date YYYY-MM-DD."
},
"adults": {
"type": "integer",
"minimum": 1,
"maximum": 32
},
"children": {
"maxItems": 10,
"type": "array",
"items": {
"type": "integer",
"minimum": 0,
"maximum": 17
}
},
"language": {
"type": "string",
"enum": [
"es",
"en"
]
}
},
"required": [
"id",
"check_in",
"check_out",
"adults"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Esquema de salida
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"currency": {
"type": "string",
"const": "EUR"
},
"check_in": {
"type": "string"
},
"check_out": {
"type": "string"
},
"nights": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"guests": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"available": {
"type": "boolean"
},
"total_price_eur": {
"type": "number"
},
"nightly_avg_eur": {
"type": "number"
},
"public_price_eur": {
"type": "number"
},
"discount_note": {
"type": "string"
},
"min_stay_nights": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"deposit": {
"type": "string"
},
"cancellation": {
"type": "string"
},
"cancellation_details_url": {
"type": "string"
},
"booking_url": {
"type": "string"
},
"hint": {
"type": "string"
}
},
"required": [
"id",
"name",
"currency",
"check_in",
"check_out",
"nights",
"guests",
"available",
"deposit",
"cancellation",
"cancellation_details_url",
"booking_url"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_policies(language)
Return the official policies of the property: check-in / check-out times, cancellation summary, refundable deposit rules, the mandatory Spanish traveller registration (SES.Hospedajes) and the contact email. Use it whenever the traveller asks about "cancellation", "deposit", "check-in time", "how does registration work", etc. Example: {"language":"en"}.
Esquema de entrada
{
"type": "object",
"properties": {
"language": {
"description": "Response language. Defaults to en.",
"type": "string",
"enum": [
"es",
"en"
]
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}Esquema de salida
{
"type": "object",
"properties": {
"check_in": {
"type": "string"
},
"check_out": {
"type": "string"
},
"cancellation": {
"type": "object",
"properties": {
"summary": {
"type": "string"
},
"details_url": {
"type": "string"
}
},
"required": [
"summary",
"details_url"
],
"additionalProperties": false
},
"deposit": {
"type": "string"
},
"online_check_in": {
"type": "string"
},
"contact": {
"type": "string"
}
},
"required": [
"check_in",
"check_out",
"cancellation",
"deposit",
"online_check_in",
"contact"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}Comunidad
Evidencia