Tool tree
Compare and book train, bus, flight, ferry across Europe, the US, Japan, and beyond. One search, 2,000+ travel providers. Find the best prices & fastest routes
resolve_positionsAction
STEP 1 — Always call this first. Converts free-text city names into position IDs. Pass the returned suggestion.fromId and suggestion.toId as fromId/toId to the results tool.
View tool JSON
{
"name": "resolve_positions",
"kind": "act",
"impl": "imperative",
"description": "STEP 1 — Always call this first. Converts free-text city names into position IDs. Pass the returned suggestion.fromId and suggestion.toId as fromId/toId to the results tool.",
"inputSchema": {
"type": "object",
"required": [
"fromTerm",
"toTerm"
],
"properties": {
"fromTerm": {
"type": "string",
"description": "Origin city or station name, e.g. 'berlin'."
},
"toTerm": {
"type": "string",
"description": "Destination city or station name, e.g. 'munich'."
},
"preferCountryCode": {
"type": "string",
"minLength": 2,
"maxLength": 2,
"description": "Optional 2-letter country code to prefer (e.g. 'DE')."
},
"locale": {
"type": "string",
"description": "Locale, default 'en'."
}
}
}
}resultsAction
STEP 2 — Call after resolve_positions. Searches travel connections for a specific date. Requires fromId and toId (integers from resolve_positions suggestion). Returns schedules with departure/arrival times, prices, carriers, and booking links.
View tool JSON
{
"name": "results",
"kind": "act",
"impl": "imperative",
"description": "STEP 2 — Call after resolve_positions. Searches travel connections for a specific date. Requires fromId and toId (integers from resolve_positions suggestion). Returns schedules with departure/arrival times, prices, carriers, and booking links.",
"inputSchema": {
"type": "object",
"required": [
"fromId",
"toId",
"outboundDate"
],
"properties": {
"fromId": {
"type": [
"string",
"integer"
],
"description": "Origin positionId from resolve_positions suggestion.fromId"
},
"toId": {
"type": [
"string",
"integer"
],
"description": "Destination positionId from resolve_positions suggestion.toId"
},
"outboundDate": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Departure date YYYY-MM-DD"
},
"inboundDate": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Return date YYYY-MM-DD (for round trips)"
},
"travelModes": {
"type": "array",
"items": {
"type": "string",
"enum": [
"train",
"bus",
"flight",
"ferry"
]
},
"description": "Filter by mode: 'bus', 'train', 'flight', 'ferry'"
},
"outboundTime": {
"type": "string",
"pattern": "^\\d{2}:\\d{2}$",
"description": "Earliest departure time HH:MM"
},
"adults": {
"type": "integer",
"minimum": 0,
"maximum": 50,
"description": "Number of adults"
},
"children": {
"type": "integer",
"minimum": 0,
"maximum": 50,
"description": "Number of children"
},
"locale": {
"type": "string"
},
"currency": {
"type": "string"
}
}
}
}