collect_feedback
ChatGPTCollects feedback about this MCP hotel's search and booking assistant, its tools, responses, or user experience, along with sentiment. Use only when the user voluntarily comments on how this MCP server or assistant worked. Do not use for hotel issues, requests to contact a hotel, service complaints, reservation support, or general feedback about a hotel's stay or facilities.
collect_stay_details
ChatGPTProvides a stay details form for check-in, check-out, and guest count, with calendar prices where available. Pre-fill with checkIn/checkOut (YYYY-MM-DD) and adults/children counts if known. When the user explicitly asks to check different or other dates, omit checkIn and checkOut even if earlier dates are known, so the form opens without prefilled dates. Infer guest counts from conversational cues — e.g. 'wife' or 'husband' adds 1 adult, 'kids'/'children'/'son'/'daughter' add children, 'friends'/'colleagues' add adults. Always include the user in the count. Example: 'with my wife and two kids' = 2 adults, 2 children. Do not assume children's ages if unspecified. After hotel selection, briefly acknowledge the choice and summarize using only explicitly available hotel data. Do not invent amenities, pricing, room types, or policies. Keep the response short and action-oriented.
get_chain_info
ChatGPTAnswers questions about the hotel chain as a whole rather than any single hotel: how many hotels it has, which cities and countries they are in, which hotels are temporarily closed, and the curated keywords describing what the chain is known for, such as mountains, seaside or spa. Call this when the user asks 'how many hotels do you have', 'where are your hotels', 'do you have anything in the mountains or by the sea', or otherwise asks about the group before they have picked a destination. Takes no hotel or chain argument - the chain is fixed by the session. This tool returns no prices, no availability and no individual hotel records: once the user names a place or a preference, call search_hotels to find actual hotels, using the keywords and locations returned here to build a better query. Ground your reply strictly in the returned data and never state a hotel count, city or characteristic that is not in it.
get_currency_exchange_rates
ChatGPTReturns exchange rate factors from multiple source currencies to a single target currency. UI-only tool for client-side price conversion.
get_hotel_info
ChatGPTAnswers questions about a specific hotel using its published content or available pricing data. Call this when the user asks what a hotel is like, about dining, wellness or experiences, or for indicative prices. Requires a category - 'dining', 'experience', 'wellness', 'general', or 'prices' - and exactly one hotel selector. Pass hotelId when it is available from search_hotels; otherwise pass the hotelName stated by the user. Never guess or fabricate a hotelId. A hotelName is resolved within the current chain and this tool continues only when exactly one usable hotel is found. If the name cannot be resolved uniquely, follow the returned guidance to call search_hotels and use the hotelId selected from those results. This is a text-only lookup: it returns no widget, makes no live availability call, and creates no booking. The 'prices' category returns indicative nightly after-tax prices when available; follow the returned coverageNote to interpret them and confirm a specific stay. Other categories do not read or return prices. For categories other than 'general', ground the reply strictly in informationText and never introduce unstated facts. For 'general', use informationText, propertyNote and policies first. If the requested general detail is missing, use web search limited to the hotel's official website, starting from sourceUrl when present. State only facts verified on an official page and cite the exact page retrieved; if official sources do not verify the detail, say it remains unavailable rather than guessing. propertyNote remains authoritative over web-searched content. Use listed check-in, check-out and pet policies as hotel-level guidance. Treat listed cancellation and payment conditions as general guidance because a specific room or rate may differ, and make clear that specific rate terms take precedence when available. When matchedRequestedCategory is false, disclose the content shortfall. Never invent a URL.
get_room_rate_info
ChatGPTReturns room and rate detail for a hotel. If code and rateCodes are both omitted, it returns descriptions for all rooms when hotel-level room descriptions are available. For room-level rate details, pass availabilityId unchanged from get_rooms_availability and provide a room code. Without rateCodes, it returns room prose plus one ratePlanCode/name/price line per rate. To retrieve full terms for up to 3 selected rates (price breakdown, taxes, meal plan, guarantee and cancellation), pass their exact ratePlanCode values in the rateCodes array.
get_rooms_availability
ChatGPTFetches room availability for a hotel stay and presents interactive room cards with photos, descriptions, rates, amenities, and availability context. If any required stay details (check-in, check-out, guest count) are missing, the tool responds with an error. After the hotel availability tool returns results, provide a short summary of the available rooms. Recommend up to 3 room options that best match the provided occupancy, prioritizing the most relevant and suitable options based only on the data explicitly returned by the tool. Do not invent, assume, or exaggerate room details, rates, amenities, bed types, policies, availability conditions, or included services. If fewer than 3 suitable rooms are available, show only the available suitable options. If no rooms match the provided occupancy, clearly say so and suggest updating the occupancy or selecting different dates if appropriate. Keep the response concise, clear, and focused on helping the user choose a room.
search_hotels
ChatGPTFinds hotels that best match the user's query, keywords, and optional geographic or location constraints. The location constraint accepts a city, region/state, country, 2-letter country code, or broad region such as Europe, Asia, or the Americas. For abbreviated country names, use the 2-letter country code, for example US instead of USA. Always pass the most specific single place the user mentioned. Presents results in a visual hotel gallery with photos, descriptions, location and map context, and available prices. Only set limit when the user explicitly requests a specific number of results; otherwise omit it. After the hotel search tool returns results, present up to 3 available hotels in order that best match the user's search criteria. Base the selection and summary only on information explicitly available in the tool response. Briefly explain why each hotel is a strong match using confirmed details only. Ask the user to select only a hotel whose availabilityStatus is available. Selecting a hotel means the user wants to proceed to the next step with that hotel; continue to collect_stay_details or get_rooms_availability as appropriate without repeating the hotel search. When availabilityStatus is unavailable, clearly say it is unavailable for the requested dates; never describe its price as merely not shown, recommend it, select it, or proceed to next tool call. If every matching hotel is unavailable, suggest changing the dates instead. Do not invent or assume hotel attributes, pricing details, amenities, availability conditions, policies, ratings, or extra services. If fewer than 3 suitable hotels are available, show only those. If no hotels match the search criteria, clearly say so and ask the user to refine the search.
summarize_booking_plan
ChatGPTDisplays a booking summary with the selected hotel, room, rate, dates, guests, price, and relevant policies. Call this after the user has selected a hotel and room rate. Requires: hotelId, roomCode, rateCode, checkIn, checkOut, adults. Optionally accepts childrenAges. After the booking summary tool returns results, provide a brief summary of the booking details using only information explicitly available in the tool response. Keep the summary short because the full details are already visible in the UI. This tool does not create a reservation. When everything looks right, invite the user to select Continue to booking to finish on the hotel booking site. Do not make recommendations, suggestions, or offers unless they are clearly supported by the available data and current flow. In particular, do not suggest extras such as breakfast, hotel comparisons, loyalty programs, upgrades, or similar services unless they are explicitly included in the tool output.