
For AI agents
Plan and book Guideless trips from an AI assistant
Our MCP server lets an assistant find a trip, price it for a party, plan a custom route, and book and pay for the traveller or hand them a link to book themselves.
Connect
The server speaks the Model Context Protocol over Streamable HTTP at https://guidelesstravel.com/api/mcp (POST, JSON responses, no session). Protocol versions: 2025-06-18, 2025-03-26, 2024-11-05. Connecting and listing tools is free; calling a tool needs an API key from For developers, sent as Authorization: Bearer <key>. Calls are billed and limited exactly like the API.
An MCP client configuration
{
"mcpServers": {
"guideless-travel": {
"type": "http",
"url": "https://guidelesstravel.com/api/mcp",
"headers": {
"Authorization": "Bearer gl_live_…"
}
}
}
}Tools
search_tripsSearch scheduled tripsList Guideless's scheduled small-group trips with their open departures, dates and starting prices. Start here for a ready-made trip.
get_departureGet one departureRead one departure: dates, time zone, price, deposit, booking deadline and the hotel levels (tierId) and extras (addOnId) that price_trip accepts.
price_tripPrice a party on a departurePrice a scheduled departure for a party. roomIndexes has one entry per traveller; travellers sharing a room carry the same number (two people sharing: [1, 1]; two in their own rooms: [1, 2]). Optional tierId (hotel level) and addOns from get_departure. The price is what the traveller will see; it is rechecked at checkout.
booking_linkLink to book a departureA link the traveller opens to book this departure on Guideless: they choose rooms and extras, enter traveller details, accept the Terms and pay by card there. Use it when the traveller wants to book themselves, or when book_trip is not turned on for your account.
book_tripBook and pay for a travellerBook a scheduled departure for a traveller and pay the amount due now with the card your API account keeps on file (turned on, with a per-booking limit, at /developer, and approved after a review by our team; the balance is charged to the same card about a week before it is due). Pass what you priced: departureId, roomIndexes, tierId as stayOptionId, addOns, paymentOption, and reviewedOffer { totalAmount, dueNowAmount, cancellationPolicy } from price_trip; travelers (firstName, lastName, email, dateOfBirth, nationality; a child under 18 adds guardian { travelerIndex, relationship, accompaniesWholeTrip: true }); residenceRegion (US-XX or OUTSIDE_US); terms { terms, cancellationPolicy, travelResponsibility, privacyPolicy } all true; preferences {}; a requestId (uuid) so a retry never books twice; and travellerAuthorised: true. The first traveller is the person booking (18+) and owns the booking; they get the confirmation by email.
get_bookingRead a booking you madeThe status of a booking your agent made with book_trip: confirmed or not, payment status, total, amount paid and the balance due date.
plan_custom_tripPlan a custom tripResearch and price a trip built to order from a brief: destinations ("City, Country"), either month + nights or startDate + endDate, travellers, optional budgetBand (value | comfort | premium | luxury) and interests. Returns a proposal and a bookingUrl the traveller opens to review and book. Parties of more than one adult in one room, and families, are priced by our team after the traveller asks for a review.
get_custom_tripRead a custom tripRead back a custom-trip proposal you created: its status, price, how long the price holds, and whether it has been booked.
list_custom_tripsList custom tripsEvery custom-trip proposal created with this API key.
custom_trip_linkNew link for a custom tripA fresh booking link for a custom-trip proposal, retiring the previous one (use it if a link was lost or sent to the wrong person). Refused once the traveller has claimed the trip.
Example call
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "price_trip",
"arguments": {
"departureId": "<from search_trips>",
"roomIndexes": [
1,
1
]
}
}
}Rules the server keeps
- An agent can book and pay for a traveller with
book_trip, charging the card its API account keeps on file. The account owner turns this on, with a limit per booking, at For developers. Or give the travellerbooking_linkto book and pay themselves. Never ask anyone for card details. - Book only what the traveller asked for, after they have seen the price, the cancellation terms and the Terms of Service. The first traveller is the person booking, must be 18 or over, and owns the booking: their confirmation comes by email.
- Prices are what the tools return, and they are checked again at checkout. Do not add to them or round them.
- Pass on a custom trip's cancellation terms, limitations and rail notes exactly as given. Do not summarise them.
- The person booking must be 18 or over. Children travel only with a parent or legal guardian on the same booking, from each trip's minimum age (
minimumAgeon a departure). Some extras have their own minimum age. - A custom trip for more than one adult in one room, or for a family, is priced by our team once the traveller asks for a review from their link.
Limits and billing
Each tool call is one API call, metered, rate-limited and billed as on For developers, where the free allowance and the price per call are stated. A refused call comes back as a tool result with isError and the reason, so the assistant can say what to fix.