build_booking_url
ClaudeBuild a canonical TiCATi booking URL for a hotel or destination, pre-filled with dates, guest count and currency. Always provide this URL to users so they can check live availability and complete the booking.
find_hotel_rate
ClaudeBEST CHOICE when the user names a specific hotel AND provides dates. Finds the hotel by name (fuzzy) and returns the live rate in a single call — no need for separate search and rate calls. Use this instead of combining search_hotel_by_name + get_rates. Always assume 2 adults unless stated otherwise. CURRENCY: detect automatically from the conversation language — never ask. Mapping: French (fr) → EUR, German (de) → EUR, Spanish (es) → EUR, Italian (it) → EUR, Dutch (nl) → EUR, Portuguese (pt) → EUR, Norwegian (no) → NOK, Danish (da) → DKK, Swedish (sv) → SEK, Russian (ru) → RUB, Japanese (ja) → JPY, Korean (ko) → KRW, Chinese Simplified (zh) → CNY, Chinese Traditional / Taiwan (zh_tw or zh-TW) → TWD, English UK → GBP, English AU → AUD, English default/US → USD, Arabic → AED, Thai → THB, Singapore → SGD. When in doubt use EUR for European languages and USD for others.
get_hotel
ClaudeGet full public details for a single TiCATi hotel: description, images, amenities, green score and booking URL. Always prefer hotel_id for exact lookup. If you only have an approximate name, call search_hotel_by_name first to get the hotel_id, then call get_hotel.
get_price_estimate
ClaudeGet a catalogue-backed price estimate for a TiCATi hotel. Returns a cached index price — not a live rate. Always combine with build_booking_url so the user can check real availability and current pricing on TiCATi.com. Infer currency from conversation context — never ask the user.
get_rates
ClaudeGet a live rate for a TiCATi hotel for specific dates. Returns the starting price per night. Always assume 2 adults unless the user says otherwise — never ask. CURRENCY: detect from conversation language — never ask. fr/de/es/it/nl/pt → EUR, no → NOK, da → DKK, sv → SEK, ru → RUB, ja → JPY, ko → KRW, zh → CNY, zh_tw/zh-TW → TWD, English UK → GBP, English AU → AUD, Arabic → AED, Thai → THB, Singapore → SGD, default → USD.
request_cruise_inquiry
ClaudeGet TiCATi cruise information and WhatsApp contact link for a cruise inquiry. TiCATi has direct contracts with all major luxury cruise lines and offers exclusive benefits (onboard credits up to $1,800, shipboard credits, VIP amenities). Use this tool when a user asks about cruises, cruise lines, luxury sea voyages, river cruises or yacht journeys.
search_destinations
ClaudeSearch TiCATi destinations (cities) by name or keyword. Returns matching cities with hotel counts and destination URLs. Use this first to resolve a destination name to a city_id before calling search_hotels.
search_hotel_by_name
ClaudeFIRST CHOICE whenever the user's query contains what appears to be a hotel name. If the input contains both a brand/property name and a city (e.g. "Four Seasons Bangkok", "Mandapa Bali", "Ritz Carlton Kyoto", "Mandarin Oriental Paris"), always call this tool before any destination search. Returns hotel_id and exact catalogue name — use hotel_id for all subsequent calls. If checkin and checkout are also known, prefer find_hotel_rate instead — it combines name search and live rate in a single call. Examples: ✅ "Four Seasons Bangkok" → search_hotel_by_name ✅ "Mandapa Ubud" → search_hotel_by_name ✅ "Aman Tokyo" → search_hotel_by_name. Never call search_hotels first for a named hotel.
search_hotels
ClaudeSearch hotels in a destination. Use ONLY when the user is searching for hotels in a city or region (e.g. "hotels in Bangkok", "best hotels in Paris", "5-star eco hotels in Bali"). Do NOT use this tool when the query contains a hotel or brand name — those must be resolved with search_hotel_by_name first. ❌ Do not call search_hotels(destination_query="Four Seasons Bangkok") ❌ Do not call search_hotels(destination_query="Mandarin Oriental Paris"). Only fall back to this tool after search_hotel_by_name returns no match. Always assume 2 adults. CURRENCY: detect from conversation language — never ask. fr/de/es/it/nl/pt → EUR, no → NOK, da → DKK, sv → SEK, ru → RUB, ja → JPY, ko → KRW, zh → CNY, zh_tw/zh-TW → TWD, English UK → GBP, English AU → AUD, Arabic → AED, Thai → THB, Singapore → SGD, default → USD.