Find trips in plain words
find_tripsThe quickest way to search: describe the trip in plain words and get bookable trips back in one call.
travelType, one of:
ski: ski and snowboard holidays
golf: golf holidays
surf: surf camps and holidays
diving: diving holidays
hiking: hiking and walking holidays
charter: package holidays: sun and beach trips with flight and hotel
cycling: cycling holidays
football: football trips: a match ticket with travel and hotel
carrental: car rental
f1: Formula 1 race trips
running: running races abroad, marathons, running camps and trail tours
americanfootball: NFL game trips
yoga: yoga retreats
triathlon: triathlon races and training camps
cruise: cruises
coach: coach (bus) tours
holidayhome: holiday homes and cottages
roundtrip: round trips and guided tours through several places
citybreak: city breaks
dance: dance holidays
wellness: wellness, spa and retreat stays
safari: safaris
culture: culture trips: art, music, opera, history and theatre
sportsevent: trips to sports events other than football, F1 and NFL
camping: camping holidays: tents, mobile homes and campsite cabins
hunting: hunting trips
culinary: food and wine trips
fishing: fishing trips
language: language courses abroad
racket: padel and tennis trips
motorcycle: motorcycle tours
riding: horse riding holidays
birding: birdwatching trips
sailing: sailing holidays
concert: coach trips to concerts
umrah: Umrah and Hajj packages
adventure: adventure trips: canoe, kayak, rafting, dog sled, snowmobile and multi-activity weeks
places: destinations, ski areas, regions or countries in plain words, in English or the traveller's language ("Ischgl", "Österreich", "Costa del Sol"). Leave it out for anywhere. When: startFrom/startTo (the window the trip starts in) or months. Party: adults and children, since prices depend on them. Optional: durationDays, maxPricePerPerson, sort (best, cheapest, soonest), limit.
Response: { understood, ...{ total, accommodationCount, offset, results: [{ name, country, destination, stars, guestRating, tripsAvailable, trips: [{ start, end, durationDays, adults, children, price, pricePerPerson, currency, priceConfirmedHoursAgo, priceBeforeDiscount, transport, meals, unit, seller, bookingUrl }] }] } }
understood says how the request was read: the places searched, placesNotFound and placesAmbiguous. When a place was not found or is ambiguous, tell the user instead of presenting other trips as theirs.
price is the whole party's price; pricePerPerson divides it. Quote them as given, in currency — never convert or round them into a different claim.
priceConfirmedHoursAgo is how many hours ago the seller's own site last showed this price. Under 24: present the price as current. Older: say when it was last confirmed ("3 days ago") and that it may have changed since, the more likely the older it is. null: the age is unknown, so say the price may have changed. The seller's site, through bookingUrl, always shows the price that applies.
trips holds the first few dates in sort order; tripsAvailable says how many more exist. Page with offset (it counts accommodations).
seller is the travel agency that sells the trip. bookingUrl opens that trip on the seller's site — give it to the user as the way to book. It is null when the seller can only be compared, not booked, through Kompare.
start/end are the trip's own first and last day. When nothing matches, the response holds alternatives (counts with one filter removed) to suggest what to relax. When no place matched at all, it holds a message and nothing was searched.
For a filter this tool lacks (meal plan, stars, transport, ski pass, distance to the lift, ...) use search_listings.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"travelType": "<travelType>"
},
"name": "find_trips"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | best = Kompare’s ranking, cheapest = lowest price per person, soonest = earliest start. Kompare’s ranking weighs the price against similar trips, hotel stars, guest ratings, how well the trip fits the party and what the travel agency pays Kompare, in commission and per click. Agencies with a paid agreement (commission or payment per click) always rank above those without. | best |
| limit | No | ||
| adults | No | ||
| market | No | dk | |
| months | No | Months the trip may start in, YYYY-MM. Use instead of startFrom/startTo for "in February". | |
| offset | No | ||
| places | No | Where, in plain words, in English or the traveller's language: a destination, ski area, region or country ("Ischgl", "Österreich", "Costa del Sol"). Leave out for anywhere. | |
| startTo | No | Latest day the trip may start, YYYY-MM-DD. | |
| children | No | ||
| startFrom | No | Earliest day the trip may start, YYYY-MM-DD. | |
| travelType | Yes | The kind of trip. See the tool description. | |
| durationDays | No | Trip lengths in days that fit, e.g. [7, 8] for a week. | |
| maxPricePerPerson | No | Highest price per person, in the market's currency (DKK in dk, EUR in de). |