Hôtel-Rooftop Les Voiles, Toulon Mourillon : disponibilités, tarifs réels et table au rooftop.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Ouvre une session de réservation à l’Hôtel-Rooftop Les Voiles (Toulon, Mourillon) pour des dates et une occupation données. Le plus simple : `check_in`, `check_out` (AAAA-MM-JJ) et `adults`. La forme UCP `booking.stays[]` est acceptée aussi. 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.
Métadonnées de protocole UCP.
Nombre d’adultes (2 par défaut). Forme courte.
Date d’arrivée, AAAA-MM-JJ. Forme courte, équivaut à booking.stays[0].stay_dates.start_date.
Date de départ, AAAA-MM-JJ. Forme courte.
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Ouvre une session de réservation à l’Hôtel-Rooftop Les Voiles (Toulon, Mourillon) pour des dates et une occupation données. Le plus simple : `check_in`, `check_out` (AAAA-MM-JJ) et `adults`. La forme UCP `booking.stays[]` est acceptée aussi. 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.
| Argument | Type | Description |
|---|---|---|
| meta | object | Métadonnées de protocole UCP. |
| adults | integer | Nombre d’adultes (2 par défaut). Forme courte. |
| booking* | object | |
| check_in | string | Date d’arrivée, AAAA-MM-JJ. Forme courte, équivaut à booking.stays[0].stay_dates.start_date. |
| check_out | string | Date de départ, AAAA-MM-JJ. Forme courte. |
{
"type": "object",
"required": [
"booking"
],
"properties": {
"meta": {
"type": "object",
"description": "Métadonnées de protocole UCP."
},
"adults": {
"type": "integer",
"description": "Nombre d’adultes (2 par défaut). Forme courte."
},
"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"
}
}
}
}
},
"check_in": {
"type": "string",
"description": "Date d’arrivée, AAAA-MM-JJ. Forme courte, équivaut à booking.stays[0].stay_dates.start_date."
},
"check_out": {
"type": "string",
"description": "Date de départ, AAAA-MM-JJ. Forme courte."
}
}
}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é.
| Argument | Type | Description |
|---|---|---|
| date* | string | Le soir, AAAA-MM-JJ. |
| name* | string | Nom au nom duquel la table est tenue. |
| note | string | Allergies, occasion, demande particulière. |
| time | string | Créneau, par exemple « 19h30 ». Le premier possible si absent. |
| string | ||
| phone | string | |
| party_size* | integer | Nombre de couverts, 5 au maximum. |
{
"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."
}
}
}Le texte complet d’un résultat de `search`, par son identifiant.
| Argument | Type | Description |
|---|---|---|
| id* | string |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string"
}
}
}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.
| Argument | Type | Description |
|---|---|---|
| adults | integer | Nombre d’adultes. 2 par défaut. |
| end_date* | string | Départ souhaité, AAAA-MM-JJ. |
| start_date* | string | Arrivée souhaitée, AAAA-MM-JJ. |
{
"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."
}
}
}Relit une session de réservation ouverte, par son identifiant.
| Argument | Type | Description |
|---|---|---|
| meta | object | |
| booking* | object |
{
"type": "object",
"required": [
"booking"
],
"properties": {
"meta": {
"type": "object"
},
"booking": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string"
}
}
}
}
}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.
| Argument | Type | Description |
|---|---|---|
| stay_key* | string |
{
"type": "object",
"required": [
"stay_key"
],
"properties": {
"stay_key": {
"type": "string"
}
}
}La note du séjour : le détail des prestations, ce qui est déjà réglé, et ce qui reste dû.
| Argument | Type | Description |
|---|---|---|
| stay_key* | string |
{
"type": "object",
"required": [
"stay_key"
],
"properties": {
"stay_key": {
"type": "string"
}
}
}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`.
No arguments.
{
"type": "object",
"properties": {}
}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.
| Argument | Type | Description |
|---|---|---|
| end_date* | string | Dernier soir regardé, AAAA-MM-JJ. |
| party_size | integer | Nombre de couverts. 2 par défaut. |
| start_date* | string | Premier soir regardé, AAAA-MM-JJ. |
{
"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."
}
}
}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.
| Argument | Type | Description |
|---|---|---|
| stay_key* | string | La clé remise dans la confirmation. |
{
"type": "object",
"required": [
"stay_key"
],
"properties": {
"stay_key": {
"type": "string",
"description": "La clé remise dans la confirmation."
}
}
}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é.
| Argument | Type | Description |
|---|---|---|
| query* | string | La question, en français ou en anglais. |
{
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"description": "La question, en français ou en anglais."
}
}
}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.
| Argument | Type | Description |
|---|---|---|
| id | string | |
| meta | object | |
| booking | object |
{
"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"
}
}
}
}
}
}
}