MCP Server

booking

com.hotels-toulon-mer/booking
Travel & Hospitality Public & reachable MCP 2026-07-28

What this MCP does

Provides hotel availability and booking sessions, rooftop table reservations, property information, stay details, check-in access, and folios for a Toulon hotel.

create_booking_session
Ouvre une session de réservation à l’Hôtel-Rooftop Les Voiles (Toulon, Mourillon) pour des dates et une occupation données. Rend la chambre et le tarif réellement disponibles, le prix total en centimes d’euro, et une URL pour finaliser. Seuls les tarifs PRÉPAYÉS se réservent par agent : le séjour est réglé en totalité à la réservation, et n’est pas remboursable. Rend une erreur claire si l’hôtel est complet ou fermé sur la période.
Read only Open world
Input schema
{'type': 'object', 'required': ['booking'], 'properties': {'meta': {'type': 'object', 'description': 'Métadonnées de protocole UCP.'}, 'booking': {'type': 'object', 'required': ['stays'], 'properties': {'stays': {'type': 'array', 'items': {'type': 'object', 'required': ['stay_dates'], 'properties': {'occupancy': {'type': 'object', 'properties': {'adults': {'type': 'integer'}}}, 'rate_plan': {'type': 'object', 'properties': {'id': {'type': 'string'}}}, 'stay_dates': {'type': 'object', 'required': ['start_date', 'end_date'], 'properties': {'end_date': {'type': 'string'}, 'start_date': {'type': 'string'}}}, 'accommodation_type': {'type': 'object', 'properties': {'id': {'type': 'string'}}}}}}, 'booker': {'type': 'object', 'properties': {'email': {'type': 'string'}, 'last_name': {'type': 'string'}, 'first_name': {'type': 'string'}, 'phone_number': {'type': 'string'}}, 'description': 'Le client qui réserve. Son nom est nécessaire avant de conclure.'}, 'property': {'type': 'object', 'properties': {'id': {'type': 'string'}}}}}}}
create_rooftop_reservation
Réserve une table au Rooftop des Voiles. La table est tenue IMMÉDIATEMENT et fermement : il n’y a rien à confirmer ensuite, et aucun paiement n’est demandé. Rend une erreur claire si le rooftop est fermé, complet, ou si le service du soir est passé.
Open world
Input schema
{'type': 'object', 'required': ['date', 'party_size', 'name'], 'properties': {'date': {'type': 'string', 'description': 'Le soir, AAAA-MM-JJ.'}, 'name': {'type': 'string', 'description': 'Nom au nom duquel la table est tenue.'}, 'note': {'type': 'string', 'description': 'Allergies, occasion, demande particulière.'}, 'time': {'type': 'string', 'description': 'Créneau, par exemple « 19h30 ». Le premier possible si absent.'}, 'email': {'type': 'string'}, 'phone': {'type': 'string'}, 'party_size': {'type': 'integer', 'description': 'Nombre de couverts, 5 au maximum.'}}}
fetch
Le texte complet d’un résultat de `search`, par son identifiant.
Read only Idempotent
Input schema
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string'}}}
get_alternative_dates
Des séjours de même durée, proches des dates demandées, et réellement disponibles. Utile quand `create_booking_session` ne trouve rien : sur seize chambres, deux jours de décalage suffisent souvent. Rend jusqu’à trois propositions, de la plus proche à la plus lointaine, avec leur prix tout compris.
Read only Open world Idempotent
Input schema
{'type': 'object', 'required': ['start_date', 'end_date'], 'properties': {'adults': {'type': 'integer', 'description': 'Nombre d’adultes. 2 par défaut.'}, 'end_date': {'type': 'string', 'description': 'Départ souhaité, AAAA-MM-JJ.'}, 'start_date': {'type': 'string', 'description': 'Arrivée souhaitée, AAAA-MM-JJ.'}}}
get_booking_session
Relit une session de réservation ouverte, par son identifiant.
Read only Open world Idempotent
Input schema
{'type': 'object', 'required': ['booking'], 'properties': {'meta': {'type': 'object'}, 'booking': {'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string'}}}}}
get_check_in
Le code du portail, le numéro de chambre et le code de la porte — l’hôtel n’a pas de réception 24 h/24 et l’arrivée est autonome. Délivrés SEULEMENT le jour de l’arrivée, à partir de 15 h, et une fois la chambre faite. Sinon, dit ce qui manque et à partir de quand revenir.
Read only Open world
Input schema
{'type': 'object', 'required': ['stay_key'], 'properties': {'stay_key': {'type': 'string'}}}
get_folio
La note du séjour : le détail des prestations, ce qui est déjà réglé, et ce qui reste dû.
Read only Open world Idempotent
Input schema
{'type': 'object', 'required': ['stay_key'], 'properties': {'stay_key': {'type': 'string'}}}
get_property_details
Tout ce qu’il faut savoir pour DÉCRIRE l’Hôtel-Rooftop Les Voiles à un client : situation, étoiles, horaires d’arrivée et de départ, équipements compris (et ce qui ne l’est pas), petit-déjeuner, rooftop, catégories de chambres, conditions tarifaires et taxe de séjour. Ne contient ni prix ni disponibilité : ceux-ci viennent de `create_booking_session`.
Read only Open world Idempotent
Input schema
{'type': 'object', 'properties': {}}
get_rooftop_availability
Les soirs où une table est libre au Rooftop des Voiles (Toulon), sur une période donnée. Dit pour chaque soir s’il est réservable, et sinon si le rooftop est FERMÉ ou COMPLET — les deux ne se disent pas de la même façon à un client. Le rooftop accueille jusqu’à 5 personnes par table.
Read only Open world Idempotent
Input schema
{'type': 'object', 'required': ['start_date', 'end_date'], 'properties': {'end_date': {'type': 'string', 'description': 'Dernier soir regardé, AAAA-MM-JJ.'}, 'party_size': {'type': 'integer', 'description': 'Nombre de couverts. 2 par défaut.'}, 'start_date': {'type': 'string', 'description': 'Premier soir regardé, AAAA-MM-JJ.'}}}
get_stay
Relit un séjour déjà réservé : dates, numéro de réservation, chambre attribuée. Exige la clé du séjour (`stay_key`), celle remise dans la confirmation. Rappel : un séjour réservé par agent est prépayé — il n’est ni annulable, ni modifiable.
Read only Open world Idempotent
Input schema
{'type': 'object', 'required': ['stay_key'], 'properties': {'stay_key': {'type': 'string', 'description': 'La clé remise dans la confirmation.'}}}
search
Cherche une réponse dans ce que l’hôtel dit de lui-même : arrivée et départ, ce qui est compris dans le prix, les chambres, le rooftop, les conditions d’annulation, les animaux, la privatisation. Rend des extraits avec un identifiant ; `fetch` en donne le texte entier. Ne contient ni prix ni disponibilité.
Read only Idempotent
Input schema
{'type': 'object', 'required': ['query'], 'properties': {'query': {'type': 'string', 'description': 'La question, en français ou en anglais.'}}}
update_booking_session
Enregistre le client qui réserve (`booker`) sur une session ouverte. Le nom du client est nécessaire pour conclure une réservation ; cet outil permet de le fournir après l’ouverture de la session.
Open world Idempotent
Input schema
{'type': 'object', 'properties': {'id': {'type': 'string'}, 'meta': {'type': 'object'}, 'booking': {'type': 'object', 'properties': {'id': {'type': 'string'}, 'booker': {'type': 'object', 'properties': {'email': {'type': 'string'}, 'last_name': {'type': 'string'}, 'first_name': {'type': 'string'}, 'phone_number': {'type': 'string'}}}}}}}
Added
create_rooftop_reservation
Sept. 30, 2026, 2:40 a.m.
Added
get_rooftop_availability
Sept. 30, 2026, 2:40 a.m.
Added
get_folio
Sept. 30, 2026, 2:40 a.m.
Added
get_check_in
Sept. 30, 2026, 2:40 a.m.
Added
get_stay
Sept. 30, 2026, 2:40 a.m.
Added
get_property_details
Sept. 30, 2026, 2:40 a.m.
Added
get_alternative_dates
Sept. 30, 2026, 2:40 a.m.
Added
fetch
Sept. 30, 2026, 2:40 a.m.
Added
search
Sept. 30, 2026, 2:40 a.m.
Added
update_booking_session
Sept. 30, 2026, 2:40 a.m.
Added
get_booking_session
Sept. 30, 2026, 2:40 a.m.
Added
create_booking_session
Sept. 30, 2026, 2:40 a.m.