MCP TOOL
Search Rolfs Flyg & Buss trips by destination and get each trip's bookable departures.
You give it a free-text destination (and optionally a date window, market, transport mode and origin airport). It runs the text through the site search, then returns every matching trip together with its real departures for those dates.
https://api.rolfsbuss.se/mcp/calendar| Name | Type | Required | Description |
|---|---|---|---|
destination |
string | yes | Free-text destination or trip name, e.g. "Portugal", "Antalya", "textil". Typo-tolerant. |
market |
enum: sv · no · both |
no | Which market to search. sv = Sweden, no = Norway, both = search both. Default sv. |
start_date |
date YYYY-MM-DD |
no | Earliest departure date. Defaults to tomorrow. |
end_date |
date YYYY-MM-DD |
no | Latest departure date. Defaults to +6 months from the start. |
transport |
enum: airport · bus · any |
no | airport = flight departures only, bus = bus departures only, any = both. Default any. |
airport |
IATA code or all |
no | Origin airport as a 3-letter code, e.g. CPH, ARN, OSL, GOT. Only affects flight departures. |
A summary plus a trips list. Only trips that have at least one departure for the
chosen filters are returned. Each trip carries a full image and
triptype_url, and a departures list.
| Field | Description |
|---|---|
trip_count | Number of trips returned. |
trips_without_departures | How many matches were dropped for having no departures in the window. |
trips[].title | Trip name. |
trips[].triptype_url | Full link to the trip on rolfsbuss.se. |
trips[].image | Full image URL. |
trips[].price_min | From-price. |
trips[].departures[] | Each: tripname, departureID, date, returnDate, price, seatsleft. |
Flights to Portugal from Copenhagen, autumn 2026:
POST https://api.rolfsbuss.se/mcp/calendar
Authorization: Bearer <your-token>
Content-Type: application/json
Accept: application/json, text/event-stream
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "calendar",
"arguments": {
"destination": "Portugal",
"market": "sv",
"transport": "airport",
"airport": "CPH",
"start_date": "2026-09-01",
"end_date": "2026-10-31"
}
}
}
Response (trimmed):
{
"query": "Portugal",
"markets": ["sv"],
"transport": "airport",
"airport": "CPH",
"trip_count": 1,
"trips_without_departures": 0,
"trips": [
{
"market": "sv",
"triptype_id": 2156,
"title": "Textil och kultur i Portugal",
"price_min": 14975,
"image": "https://lvj1vt15bh.execute-api.eu-north-1.amazonaws.com/source/trip-main/flyg-alentejo-textil",
"triptype_url": "https://www.rolfsbuss.se/flyg/alentejo-textil",
"departure_count": 1,
"departures": [
{
"tripname": "Textil och kultur i Portugal 7d",
"departureID": 60386,
"date": "2026-09-27",
"returnDate": "2026-10-03",
"price": 14975,
"seatsleft": 9
}
]
}
]
}
Most agent frameworks (Claude SDK, OpenAI connectors, the MCP SDKs) only need the endpoint URL
and bearer token. Manually, it's plain JSON-RPC 2.0: initialize →
tools/list → tools/call.
Vi använder våra egna cookies och tredje-part cookies så vi kan visa dig webbsidan och förstå bättre hur du använder den, så vi kan förbättra tjänsterna vi erbjuder.