Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, email [email protected] and we’ll put it right.

Jinko MCP

REMOTE · MCP.GOJINKO.COM · SCANNED AUG 3

Turn your ChatGPT to a super travel agent

Available components

+5 this week 67 Trust /100
Trust breakdown (6 categories)

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score →

Endpoint Security63
Transport & Reachability100
Schema Quality & AI Usability66
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (good).Pass
  • Context-footprint check failed: tool/resource definitions use about 13766 tokens (~983/item across 14 items; 7 tools + 7 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
  • Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
  • Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
  • Supports UI / widget rendering.Pass
Install

Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.

remote · mcp.gojinko.com

# add to Claude Code
claude mcp add --transport http com-gojinko-mcp-jinko https://mcp.gojinko.com/
# ~/.codex/config.toml
[mcp_servers.com-gojinko-mcp-jinko]
url = "https://mcp.gojinko.com/"
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-gojinko-mcp-jinko": {
      "type": "remote",
      "url": "https://mcp.gojinko.com/",
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add com-gojinko-mcp-jinko --url https://mcp.gojinko.com/ --transport streamable-http
# ~/.hermes/config.yaml
mcp_servers:
  com-gojinko-mcp-jinko:
    url: "https://mcp.gojinko.com/"
// mcp.json
{
  "mcpServers": {
    "com-gojinko-mcp-jinko": {
      "type": "http",
      "url": "https://mcp.gojinko.com/"
    }
  }
}

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 2 Aug 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 20 to 23. That category is still filling its 30-day observation window: 6 days of observed history at the previous scan, 7 at this one. The score rises as the window fills, whether or not the server changes.

  • 1 Aug 26 −1
    • Schema quality: excellent → good functional
  • 31 Jul 26 +2
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 30 Jul 26 +1
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 28 Jul 26 +2

    No change was recorded against any check on this day. Schema Quality & AI Usability went from 62 to 66. Other categories moved too: Stability & Change Management rose 4.

  • 27 Jul 26 −1
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 26 Jul 26 63

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 3 Aug 2026 · Probed https://mcp.gojinko.com

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=mcp.gojinko.com CN=WE1,O=Google Trust Services,C=US 25 Jun 2026 23 Sept 2026 ECDSA 256 ECDSA-SHA256 224cb47ccba32af913859769ded44395
SANs: mcp.gojinko.com
CN=WE1,O=Google Trust Services,C=US (CA) CN=GTS Root R4,O=Google Trust Services LLC,C=US 13 Dec 2023 20 Feb 2029 ECDSA 256 ECDSA-SHA384 7ff31977972c224a76155d13b6d685e3
CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE 15 Nov 2023 28 Jan 2028 ECDSA 384 SHA256-RSA 7fe530bf331343bedd821610493d8a1b
DNSSEC insecure

Validation of mcp.gojinko.com. Not signed

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
com. present 19718 13 Verified
gojinko.com. absent Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation
Authentication No authorisation required

The endpoint answered without asking for a token. Anyone who knows the URL can reach it.

Result No authorisation required
HTTP status 200
Header Value
strict-transport-security max-age=31536000; includeSubDomains; preload
Transports 3 probes
Transport URL Outcome Status Location
streamable-http https://mcp.gojinko.com Verified 200
sse https://mcp.gojinko.com Verified 200
http (plaintext) http://mcp.gojinko.com HTTPS enforced 301 https://mcp.gojinko.com/
MCP tools — 7 exposed · ~13,687 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.

Tool Tokens
book ~1,147

Unified tool for booking a trip. Actions are determined by which object you provide. SCHEMA: { create?: { // Initiate booking trip_id: string, // Required: ID of the trip to book buyer_contact?: { // Optional: buyer contact info email: string, phone?: string } }, status?: { // Check booking status booking_id: string // Required: ID of the booking to check }, idempotency_key?: string // Prevent duplicate processing } ACTIONS: 1. CREATE BOOKING (create object): Quotes the trip and returns a Stripe Checkout URL for payment authorization. { "create": { "trip_id": "trip_xxx" } } Returns: { "checkout_session": { "id": "cs_xxx", "url": "https://checkout.stripe.com/...", // Open this URL for payment "expires_at": "2026-01-08T15:30:00Z" }, "pending_booking": { "id": "bkg_xxx", "status": "awaiting_payment", "trip_id": "trip_xxx" } } 2. CHECK STATUS (status object): Retrieves booking status. If payment is authorized but fulfillment hasn't started, automatically triggers fulfillment. { "status": { "booking_id": "bkg_xxx" } } Returns: Full booking object with status, items, passengers, totals, payment info. PREREQUISITES: • Trip must have at least one item (use trip tool with add_item) • Trip must have travelers assigned (use trip tool with upsert_travelers) • Trip must pass validation WORKFLOW (flights): 1. flight_calendar → offer_token 2. flight_search → trip_item_token 3. trip(add_item) → trip created 4. trip(upsert_travelers) → travelers set 5. book(create={trip_id}) → checkout URL WORKFLOW (hotels): 1. hotel_search → htl_* offer_id 2. trip(add_item, trip_item_token=htl_*) → trip created 3. trip(upsert_travelers) → travelers set 4. book(create={trip_id}) → checkout URL Flights and hotels can be in the same trip (single checkout). After book(create), poll with book(status={booking_id}) for confir…

NameTypeReqDescription
createobjectInitiate booking for a trip. Quotes the trip and returns a Stripe Checkout URL for payment. Mutually exclusive with `status` — provide exactly one action per call.
idempotency_keystringIdempotency key to prevent duplicate processing
statusobjectCheck the status of an existing booking. If payment is authorized, triggers fulfillment automatically. Mutually exclusive with `create` — provide exactly one action per call.
user_intentstringA concise summary of what the user is trying to accomplish, derived from their message or the conversation context that triggered this tool call. This is used to understand the user's intent and cont…
NameTypeReqDescription
actionstring
booking
checkout_session
error_codestring
error_messagestring
hintstring
pending_booking
quoted_offer
statusstring
trip

No examples provided.

find_destination ~2,297

Discover travel destinations when the user does NOT know where to go. This is a destination EXPLORATION tool. WHEN TO USE THIS TOOL (CRITICAL): - The user does NOT specify a destination: "Where should I go?", "Best deals from NYC" - The user wants inspiration based on criteria: "Beach destinations", "Somewhere warm", "Cheap flights from SF" - The user wants to compare multiple destination options from their origin - The user previously asked for destination recommendations and wants pricing for those options WHEN NOT TO USE THIS TOOL — USE flight_calendar INSTEAD: - The user specifies BOTH an origin AND a destination → use flight_calendar - Examples that should use flight_calendar, NOT this tool: • "Flights from Paris to Barcelona" → flight_calendar • "Find me a flight from JFK to CDG" → flight_calendar • "Cheapest flight from LA to Miami in June" → flight_calendar • "Paris to BCN for a weekend in April" → flight_calendar • "What are the cheapest dates to go to NYC from Paris?" → flight_calendar - If the user names a specific city/airport as destination, that means they KNOW where to go → flight_calendar IMPORTANT - DATES: All dates in query parameters (departure_dates, departure_date_ranges, return_dates, return_date_ranges) MUST be in the future. Never use past dates. Please fill as much as possible search parameters based on user intent to get best results. IMPORTANT - RE-CALL THIS TOOL when the user: - Asks for a different type of destination (beach, city trip, ski, etc.) - Asks for different dates while still exploring - The user is already in fullscreen mode in the widget CORE FUNCTIONALITY: - REQUIRED: User's origin location (LLM identifies ALL nearby airports) - OPTIONAL: Destination filtering by specific airports/cities OR omit for global discovery mode - Destination Discovery Mode: When destinations is omitted/empty, searches ALL destinations globally - Flexible dates and stay durations for exploring options - Filter by budget, direct f…

NameTypeReqDescription
cabin_classstringPreferred cabin class. Options: "economy", "premium_economy", "business", or "first". Filters results accordingly.
currencystringISO 4217 currency code for displaying prices (e.g. "EUR", "USD", "GBP"). Infer from the user's country or locale. If the user mentions a specific currency, use that.
departure_date_rangesarrayList of departure date ranges for flexible travel discovery. Use when the user mentions periods like “next month” or “spring.” Supports multiple non-contiguous ranges (OR logic). Example: [{start: "2…
departure_datesarrayList of specific departure dates in ISO 8601 format (YYYY-MM-DD). Use for searching multiple specific dates with OR logic. Example: ["2025-12-15", "2025-12-16", "2025-12-17"] for flexible date search…
destinationsarrayOPTIONAL. Array of destination IATA codes (3-letter uppercase), representing either airports or cities. When a city code is provided, the LLM MUST expand it to include all associated airports. Exampl…
direct_onlybooleanWhen true, only returns nonstop (direct) flights. Useful for avoiding layovers or minimizing total travel time.
localestringUser's BCP 47 locale inferred from the conversation (e.g. "fr-FR", "en-US", "ja-JP"). Used for formatting dates, numbers, and selecting currency. Infer from the user's language and location context.
max_pricenumberMaximum total price per passenger, the currency is user default currency. Filters out results exceeding the limit. Example: 500 = limit of $500/€500/£500 per person.
originsarrayyesREQUIRED. Array of origin IATA codes (3-letter uppercase), representing either airports or cities where the trip starts. The LLM MUST detect and include all relevant nearby airports or city codes bas…
return_date_rangesarrayList of return date ranges for flexible round-trip searches. Supports multiple return windows. Example: [{start: "2025-12-22", end: "2025-12-25"}, {start: "2025-12-29", end: "2026-01-02"}].
return_datesarrayList of specific return dates for round-trip searches (YYYY-MM-DD). Must be after the corresponding departure dates. Supports multiple options (OR logic). Example: ["2025-12-22", "2025-12-23", "2025-…
sort_bystringSorting preference for search results. Options: "lowest" (cheapest first, default) or "recommendation" (best overall balance of price, duration, and stops).
stay_daysintegerExact number of days to stay at the destination. Used with a departure date to automatically compute the return date. Example: 7 = one-week trip; 3 = weekend getaway.
stay_days_rangeobjectRange of acceptable trip durations for flexible planning (e.g., “5 to 10 days”). Cannot be combined with stay_days or explicit return_date. Example: {min: 5, max: 10}.
trip_typestringyesREQUIRED. Type of trip: "oneway" for single-leg flights, or "roundtrip" for return flights.
user_intentstringA concise summary of what the user is trying to accomplish, derived from their message or the conversation context that triggered this tool call. This is used to understand the user's intent and cont…
NameTypeReqDescription
availableAirlinesarray
destinationsarray
emissionsInfoobject
error_messagestring
hasMoreboolean
origins
priceRangeobject
searchQueryobject
statusstring
totalDestinationsnumber
totalFlightsnumber

No examples provided.

flight_calendar ~2,037

Search flights between a known origin and destination using cached pricing. Use this tool whenever the user specifies BOTH where they are flying FROM and where they are flying TO. WHEN TO USE THIS TOOL (CRITICAL): - The user provides both an origin AND a destination (city or airport) - Examples: "Paris to Barcelona", "JFK to CDG", "London to NYC for a weekend" - Supports loose / flexible dates: single dates, date arrays, date ranges, stay_days - ALSO the right tool for "cheapest flight", "best flight", "find me a flight", "cheapest date" phrasings — this tool returns the cheapest cached itineraries for the given route and window. WHEN TO USE find_destination INSTEAD: - The user does NOT specify a destination: "Where should I go from Paris?", "Best deals from NYC" - The user wants inspiration: "Beach destinations from London", "Cheap flights from SF" WHEN TO USE flight_search INSTEAD: - The user has committed to EXACT dates — both a single departure date AND a single return date for one specific route. - Example: "Paris → NYC, June 17 → June 26" - flight_search hits live pricing (each call has a cost) and is the step immediately before booking. Use it only once route + both dates are locked in. - **TRIP-CONTEXT DATES COUNT AS EXACT.** If a trip is already in context with a HOTEL, the hotel's check-in and check-out ARE the exact departure/return dates the user wants — even if they don't restate the dates in the message. In that case use flight_search (not flight_calendar) with the hotel's check-in as departure_date and check-out as return_date. Examples: cart has hotel May 8 → May 10 in Madrid; user says "add a flight from Paris" → flight_search with PAR→MAD, dep=2026-05-08, ret=2026-05-10. The trip cross-sell hint confirms this — when it points you at flight_search, follow it. IMPORTANT: All dates in query parameters (departure_dates, departure_date_ranges, return_dates, return_date_ranges) MUST be in the future. Never use past dates. Please fill as much as…

NameTypeReqDescription
cabin_classstringCabin class preference. Options: "economy" (standard economy), "premium_economy" (enhanced economy with more space/amenities), "business" (business class), "first" (first class). When specified, only…
currencystringISO 4217 currency code for displaying prices (e.g. "EUR", "USD", "GBP"). Infer from the user's country or locale. If the user mentions a specific currency, use that.
departure_date_rangesarrayList of departure date ranges for flexible travel exploration. Use when user says "next month", "spring", or wants to discover deals across multiple date periods with OR logic. Example: [{start: "202…
departure_datesarrayList of specific departure dates in ISO 8601 format (YYYY-MM-DD). Use for searching multiple specific dates with OR logic. Example: ["2025-12-15", "2025-12-16", "2025-12-17"] for flexible date search…
destinationstringyesREQUIRED: Single origin airport IATA code or IATA City Code. Example for IATA airport code : "LGW" for Gatwick in London, "SFO" for San Francisco. Example for IATA city code : "LHR" for London, "BJS"…
direct_onlybooleanOnly show direct/nonstop flights. When true, only flights with no stops are returned. Use for fastest travel or when layovers are not desired.
localestringUser's BCP 47 locale inferred from the conversation (e.g. "fr-FR", "en-US", "ja-JP"). Used for formatting dates, numbers, and selecting currency. Infer from the user's language and location context.
max_pricenumberMaximum total price per person in specified currency. Helps find flights within budget. Example: 500 means flights up to $500/€500/£500 per person depending on currency.
originstringyesREQUIRED: Single origin airport IATA code or IATA City Code. Example for IATA airport code : "JFK" for John F.Kennedy in New York, "LAX" for Los Angeles. Example for IATA city code : "NYC" for New Yo…
return_date_rangesarrayList of return date ranges for flexible round-trip exploration. Use when user wants flexibility on return timing across multiple periods with OR logic. Example: [{start: "2025-12-22", end: "2025-12-2…
return_datesarrayList of specific return dates for round-trip flights (YYYY-MM-DD). Use for searching multiple return date options with OR logic. Must be after departure dates. Example: ["2025-12-22", "2025-12-23", "…
sort_bystringSort results by this criteria. Default: lowest (best deals first). Options: lowest (cheapest flights), recommendation (best overall value considering price, duration, and stops).
stay_daysintegerExact number of days to stay at destination. Used with departure_date to calculate return date automatically. Example: 7 for a week-long trip, 3 for a weekend getaway.
stay_days_rangeobjectFlexible stay duration range. Use when user wants flexibility in trip length (e.g., "5 to 10 days"). Cannot be combined with exact stay_days or return_date. Example: {min: 5, max: 10}
trip_typestringyesREQUIRED: Trip type: "oneway" for one-way flights or "roundtrip" for round-trip flights.
user_intentstringA concise summary of what the user is trying to accomplish, derived from their message or the conversation context that triggered this tool call. This is used to understand the user's intent and cont…
NameTypeReqDescription
availableAirlinesarray
destinationobject
emissionsInfoobject
error_messagestring
flightsarray
hasMoreboolean
priceRangeobject
searchQueryobject
statusstring
totalFlightsnumber

No examples provided.

flight_search ~2,379

Live flight tool with two modes. EACH CALL HITS LIVE PRICING — not for loose or flexible date queries (use flight_calendar for those). MODE 1 — search: route + exact single dates + optional filters (most common first-call case) - Use when the user has committed to ONE specific route AND a specific departure date. For roundtrip, also provide a return_date; for one-way, OMIT return_date entirely (do NOT set it equal to departure_date — that books a same-day return). - Supports filters on the same call: direct_only, cabin_class, max_price, include_carriers, exclude_carriers, origin_type, destination_type. - **Trip-context dates count as exact.** If the cart already has a HOTEL, the hotel's check-in/check-out ARE the precise departure/return dates — even if the user doesn't restate them in their message. Use those as departure_date and return_date and call this tool (not flight_calendar). Forward the trip_id on the call. - Examples: ✓ "Paris to NYC, June 17 to June 26" → { search: { origin: "PAR", destination: "NYC", departure_date: "2026-06-17", return_date: "2026-06-26" } } ✓ "Paris to Rome June 19 to 27, direct only, business class" → { search: { origin: "PAR", destination: "ROM", departure_date: "2026-06-19", return_date: "2026-06-27", direct_only: true, cabin_class: "business" } } ✓ "JFK → CDG August 5 to 12, Air France only, under $800" → { search: { origin: "JFK", origin_type: "airport", destination: "CDG", destination_type: "airport", departure_date: "2026-08-05", return_date: "2026-08-12", include_carriers: ["AF"], max_price: 800 } } ✓ "Paris to LA June 3, one way" → { search: { origin: "PAR", destination: "LAX", departure_date: "2026-06-03" } } ✓ Cart has hotel in Madrid May 8 → May 10; user says "add a flight from Paris, directs only" → { search: { origin: "PAR", destination: "MAD", departure_date: "2026-05-08", return_date: "2026-05-10", direct_only: true }, trip_id: "trip_xxx" } - Only ONE departure_date and at most ONE return_date. No arrays, n…

NameTypeReqDescription
currencystringISO 4217 currency code for displaying prices (e.g. "EUR", "USD", "GBP", "JPY"). ALWAYS set this — omitting it falls back to USD which is rarely what users actually want. Infer from the strongest sign…
localestringUser's BCP 47 locale inferred from the conversation (e.g. "fr-FR", "en-US", "ja-JP"). Used for formatting dates, numbers, and selecting currency.
price_checkobjectGet confirmed live fares for a specific flight offer. Returns fare brands with trip_item_token for booking. ALWAYS forward any filters that were on the upstream flight_calendar / find_destination cal…
searchobjectLive search for a single precise route + date(s) with optional filters (direct_only, cabin_class, max_price, include_carriers, exclude_carriers). Use only when the user has committed to ONE specific…
traveler_countsobjectTraveler counts. Defaults to 1 adult.
trip_idstringExisting trip_id to associate this search with. Forward whenever the user is mid-trip-build (you have seen a trip_id in a recent trip(...) tool result and the user has NOT pivoted to a different trip…
user_intentstringA concise summary of what the user is trying to accomplish, derived from their message or the conversation context that triggered this tool call. This is used to understand the user's intent and cont…
NameTypeReqDescription
error_codestring
error_messagestring
flightsarray
hasMoreboolean
hintstring
priceRangeobject
quoted_offer
searchQueryobject
statusstring
totalFlightsnumber

No examples provided.

hotel_details ~528

Rich metadata (gallery, facilities, policies, per-room details) for a single hotel — called by the hotel widget on fullscreen open. **Cost: 1 credit per call.**

NameTypeReqDescription
checkinstringCheck-in date (YYYY-MM-DD). Accepted for future cache-key alignment; currently unused by the BFF.
checkoutstringCheck-out date (YYYY-MM-DD). Accepted for future cache-key alignment; currently unused by the BFF.
hotel_idstringyesHotel ID (from a prior hotel_search offer).
user_intentstringA concise summary of what the user is trying to accomplish, derived from their message or the conversation context that triggered this tool call. This is used to understand the user's intent and cont…
NameTypeReqDescription
errorstring
statusstring

No examples provided.

hotel_search ~2,908

Search live hotel inventory and rates worldwide. REQUIRED: - destination: object — two distinct modes. Mode A (rate lookup): { hotel_name (+ optional country_code, city_name) } or { hotel_ids }. Mode B (hotel search): { query }, { city_name + country_code }, { latitude + longitude (+ radius_km) }, or { place_id }. - checkin, checkout: YYYY-MM-DD - occupancy: either occupancies[] (one entry per room) OR shorthand { adults, children?, rooms? } TWO MODES — pick deliberately: MODE A (rate lookup — the user named a specific hotel): - { hotel_name }: free-text hotel name ("Hotel Calimala", "The St. Regis Rome", "Hôtel Costes"). Server fuzzy-matches against a 1.74M-hotel catalog. ALWAYS pair with country_code AND city_name when known — lookup precision drops sharply on common names without scope. Returns 422 HOTEL_NAME_LOW_CONFIDENCE if no candidate scores ≥ 0.7; see "ERROR HANDLING" below. - { hotel_ids }: re-shop a known set (from a prior search result). In Mode A: filters are ignored (user named the property), and the response includes nearby_alternatives — up to 5 hotels within ~2km of the matched property in the same response shape so the user can compare. MODE B (hotel search — the user is exploring a destination): - { query }: unambiguous cities or well-known POIs only ("Paris", "Times Square"). Provider AI search returns 0 for islands ("Menorca", "Santorini", "Mykonos"), regions ("Tuscany", "Provence", "Bavaria"), countries, archipelagos. Do NOT use { query } for those. - { city_name + country_code }: when the user named a city, even if ambiguous. Best when the destination has a primary city ("Mahón, ES" for Menorca; "Florence, IT" for Tuscany). - { latitude + longitude + radius_km }: when the destination is an area, island, or region with no obvious primary city. radius_km up to 50. - { place_id }: when you already have an upstream Place ID. If the user names something non-city (an island, region, archipelago, neighborhood), DO NOT pass it as { query } — pick…

NameTypeReqDescription
adultsintegerShorthand: total adults across all rooms. Use ONLY when there is no ambiguity (1 or 2 adults = single room). For 3+ adults, or odd splits, ask the user how they want to split rooms and pass occupanci…
checkinstringyesCheck-in date (YYYY-MM-DD).
checkoutstringyesCheck-out date (YYYY-MM-DD).
childrenarrayShorthand: ages of all children across all rooms. If children are present, prefer occupancies[] so the caller controls which room each child goes in (ages affect pricing and some providers reject inv…
currencystringISO 4217 currency code (e.g. "EUR", "USD", "GBP", "JPY"). ALWAYS set this — omitting it falls back to USD which is rarely what users actually want. Infer from the strongest signal available: (1) the…
destinationobjectyesDestination — provide exactly one shape. Two distinct modes: MODE A (rate lookup — you know which hotel): • { hotel_ids } to re-shop a known set. • { hotel_name, country_code?, city_name? } when…
filtersobjectOptional filter overrides applied on top of the tenant default filter set.
guest_nationalitystringGuest nationality (ISO 3166-1 alpha-2, uppercase, e.g. "FR"). Affects rate availability + tax handling at search time. Separate from traveler nationality used for booking documents.
occupanciesarrayOne entry per room (structured). PREFERRED whenever the party is larger than 2 adults or has children — it removes ambiguity about how guests are split across rooms. Example: [{ "adults": 2 }, { "adu…
roomsintegerShorthand: number of rooms (BFF auto-distributes adults + children). Use when the user named a room count but not the per-room split.
trip_idstringExisting trip_id to associate this search with. Unified (cart-widget) tool only — the DevPlatform variant accepts the field for schema consistency but ignores it (no widget surface). Forward whenever…
user_intentstringA concise summary of what the user is trying to accomplish, derived from their message or the conversation context that triggered this tool call. This is used to understand the user's intent and cont…
NameTypeReqDescription
errorstring
error_messagestring
hasMoreboolean
hintstring
hotelsarray
searchQuery
statusstring
totalHotelsnumber
trip_idstring

No examples provided.

trip ~2,391

Unified tool for managing a trip (shopping cart). Supports flights and hotels in the same cart. Actions are determined by which objects you provide. SCHEMA: { trip_id?: string, // Existing trip ID (omit to create new) offer_id?: string, // (Legacy) Offer ID — now auto-encoded into trip_item_token by flight_search add_item?: { ... }, // Add a flight or hotel to the trip remove_item?: { ... }, // Remove an item from the trip upsert_travelers?: { ... }, // Set travelers (replaces all) idempotency_key?: string // Prevent duplicate processing } ACTIONS: 1. ADD ITEM (add_item object): - Flight: trip_item_token from flight_search (offer__* format, contains encoded offer_id) - Hotel: offer_id from hotel_search (htl_* format, use directly as trip_item_token) { "add_item": { "trip_item_token": "offer__1:0-2-0", // Flight token from flight_search // OR: "htl_abc123..." // Hotel token from hotel_search "traveler_ids": ["traveler_1", "traveler_2"] // Optional: associate travelers } } 2. REMOVE ITEM (remove_item object): { "trip_id": "trip_xxx", "remove_item": { "item_id": "item_123" // From trip.trip_items[].id } } 3. UPSERT TRAVELERS (upsert_travelers object): { "trip_id": "trip_xxx", "upsert_travelers": { "travelers": [ { "traveler_id": "saved_1", "is_lead": true }, // Pre-saved traveler { "identity": { ... } } // Or inline details ], "contact": { // Optional trip contact "email": "[email protected]", "phone": "+1-555-123-4567" } } } TRAVELER ENTRY OPTIONS: • { traveler_id: "id" } - Use pre-saved traveler • { traveler_id: "id", is_lead: true } - Pre-saved as lead • { identity: {...}, passport?: {...} } - Inline details WORKFLOW: 1. flight_calendar → Returns flights with offer_token 2. flight_search → Returns fare options with trip_item_token (offer_id encoded inside…

NameTypeReqDescription
add_itemobjectAdd a flight or hotel to the trip. Use trip_item_token from flight_search (offer__* format) or offer_id from hotel_search (htl_* format).
idempotency_keystringIdempotency key to prevent duplicate processing
offer_idstringDeprecated: offer_id is now encoded into trip_item_token by flight_search. Only needed for legacy tokens without encoded offer_id.
payment_typestringPayment flow type: "checkout" for Stripe Checkout (default), "intent" for Payment Intent.
remove_itemobjectRemove an item from the trip by its ID.
schedule_quotebooleanSchedule a fresh quote on the current cart state. Triggers async re-pricing on the BFF — the response returns immediately with the new quoted_cart_id; poll trip(get) until status === "held" (quote co…
select_ancillariesobjectSelect ancillaries (bags, seats, meals) for a quoted trip item. Uses full-replacement semantics — send all desired selections.
trip_idstringID of an existing trip. If not provided, a new trip will be created.
upsert_travelersobjectSet travelers on the trip. Replaces all existing travelers (idempotent operation).
user_intentstringA concise summary of what the user is trying to accomplish, derived from their message or the conversation context that triggered this tool call. This is used to understand the user's intent and cont…
NameTypeReqDescription
actions_performedarray
error_codestring
error_messagestring
hintstring
recommended_productsarray
saved_travelersarray
statusstring
trip
trip_item_idstring

No examples provided.