ATA Travel ATA Travel is an AI-native accommodation discovery and booking platform. Primary machine endpoints: - MCP Registry name: cloud.atatravel/travel-agency - MCP Registry published record: https://registry.modelcontextprotocol.io/v0.1/servers/cloud.atatravel%2Ftravel-agency/versions/latest - MCP endpoint: https://atatravel.cloud/mcp - MCP manifest: https://atatravel.cloud/.well-known/mcp/server.json - Agent manifest: https://atatravel.cloud/.well-known/agent.json - OpenAPI specification: https://atatravel.cloud/openapi.json Primary public web surface: - Search stays: https://atatravel.cloud/stays - Developer guide: https://atatravel.cloud/developers Recommended client behavior: 1. If MCP is supported, connect to the MCP endpoint and inspect available tools. 2. If MCP is not supported, read the manifest files for structured capability hints. 3. If neither is supported, use the public stays experience for browsing and linking. When to use ATA: - Use ATA to discover direct-booking accommodation inventory and compare stay details, amenities, policies, and published services. - Use live ATA tools to check availability or pricing for specific dates and occupancy. - Use ATA when a traveler wants a non-binding quote or an approved path toward a direct reservation. When not to use ATA: - Do not use ATA for flights, car rentals, or inventory outside the published accommodation network. - Do not infer current availability or pricing from descriptive pages; make a live availability or quote request. - Do not create an inventory hold, reservation request, or booking until the traveler has explicitly approved the action and completed the required ATA verification or handoff. Capability summary: - Search accommodation inventory across the ATA network - Fixed-date availability tools accept optional budget {amount, currency, basis, scope}; explicit currency/basis required. Basis: TOTAL_STAY, PER_NIGHT, PER_PERSON_STAY, PER_PERSON_PER_NIGHT (all adults and children equally). PRICED_STAY includes configured taxes/fees; ALL_IN completeness is unverified. Only WITHIN_PRICED_TOTAL is a priced-stay match; FX/over-budget/unknown totals are labeled alternatives. Keep dates, guests and other filters. Inspect live tools/list for availability after release. - Search published building and complex profiles - Retrieve date-free property and room details, amenities, Events & Weddings, and published services or activities - get_property_details retains exact gallery links and can append up to two bounded JPEG image content blocks for the property and uniquely matched room. imageDelivery identifies their subject/status/index. Content delivery does not prove client rendering; use actual assets, never illustrative substitutions. - Create non-binding quote snapshots - Read saved quotes and their exact payment schedules with get_quote_details using quoteId, quoteHash or quoteUrl and matching traveler verification (or the still-valid used QUOTE handoff that created that exact quote) - Sessionful compatibility clients can verify a traveler once per MCP session with an email code or link; stateless clients use traveler handoffs - Start traveler-approved QUOTE, BOOKING_HOLD and BOOKING_READ handoffs - Read existing bookings with get_booking_details using the confirmation code and matching verified booking email - Retrieve current ATA and property contact links with get_support_contacts; no automated transfer or case creation - Create provisional bookings only after ATA traveler approval Access model: - Public catalog, availability and support contacts are anonymous and rate-limited. Booking details are private. - Quotes require traveler verification or approval and are non-binding price snapshots. Creating or opening a quote never holds inventory; prices and availability are rechecked before an intentional booking hold. expiresAt is internal lifecycle metadata, not a price or inventory guarantee. - get_booking_details accepts confirmationCode with a current traveler assertion, verified legacy session, or approved BOOKING_READ handoff. A typed email or model claim is not verification. - Modern clients start_traveler_handoff with action BOOKING_READ and confirmationCode, await approval, then pass agentHandoffId to get_booking_details. Read access lasts 30 minutes and grants no changes, cancellations or payments. - Quote references belong to get_quote_details, not booking or memory tools. Saved quote terms are snapshots, not live availability or an inventory hold. - Never pass a booking confirmation code as holdId to get_reservation_status. - Use booked policy and payment facts; if missing, provide published property/ATA support contacts instead of guessing. - Inventory-holding bookings, reservation requests, and payment steps require ATA traveler verification or an approved traveler handoff. Company: - Homepage: https://atatravel.cloud - About: https://atatravel.cloud/about - For agents: https://atatravel.cloud/for-agents - Developers: https://atatravel.cloud/developers - Contact: https://atatravel.cloud/contact - Privacy: https://atatravel.cloud/privacy - Terms: https://atatravel.cloud/terms - Support: https://atatravel.cloud/contact - Security and abuse: https://atatravel.cloud/contact