AI-agents en ontwikkelaars

Hotel Mondschein stelt zijn gegevens open voor AI-assistenten: huizen, kamers, aanbiedingen, gebieden, weer en contact. Alle wegen gebruiken dezelfde tools met dezelfde namen en parameters. Een login of API-sleutel is niet nodig.

Snelstart

  1. In de browser (WebMCP): elke pagina van mondschein.com meldt alle tools aan via document.modelContext, nog voor de pagina helemaal geladen is. Een browseragent roept ze rechtstreeks aan in plaats van de pagina uit te lezen.
  2. MCP-server: https://mondschein.com/mcp (Streamable HTTP, zonder sessie, JSON-antwoorden). Daar staan alle tools behalve open_page, dat alleen in een browsertabblad zin heeft.
  3. REST: dezelfde tools als POST /api/agent/{tool} met JSON. Beschrijving: /openapi.json, interactief: /openapi.html.

Wat de tools niet doen

Tools

De beschrijvingen zijn in het Engels, zoals de modellen ze zien. Elke tool neemt de parameter language (de, nl, en) en geeft links in die taal terug.

NaamDoelToegangBeschikbaar via
hotel_infoAdres, coördinaten en kaartlinks per huis zoals in het Google-profiel, telefoon, e-mail, inchecken en uitchecken, restaurants, openingsurenlezenWebMCP, MCP, REST
list_housesDe drie huizen met korte omschrijving en linklezenWebMCP, MCP, REST
list_roomsKamertypes per huis met grootte, personen, uitrusting en linklezenWebMCP, MCP, REST
get_roomAlle gegevens van één kamertype, met foto's en FAQlezenWebMCP, MCP, REST
list_offersAanbiedingen en arrangementen met wat inbegrepen is, seizoen en linklezenWebMCP, MCP, REST
list_areasDe gebiedspagina's rond StubenlezenWebMCP, MCP, REST
get_areaEén gebiedspagina met aanreis, plaatsen in de buurt, FAQ en routelinklezenWebMCP, MCP, REST
get_faqVeelgestelde vragen, eventueel met een zoektermlezenWebMCP, MCP, REST
get_lift_statusLive status van de liften en pistes van Ski ArlberglezenWebMCP, MCP, REST
get_weatherActueel weer en sneeuwhoogte in StubenlezenWebMCP, MCP, REST
check_availabilityKamers en vanafprijzen voor reisdata (tot de koppeling met het boekingssysteem met de vlag mock)lezenWebMCP, MCP, REST
request_offerVrijblijvende aanvraag aan het reserveringsteam, alleen na uitdrukkelijke bevestiging van de gastversturen, met bevestigingWebMCP, MCP, REST
open_pageOpent een pagina van mondschein.com in het browsertabbladlezenWebMCP

hotel_info

Facts about Hotel Mondschein in Stuben am Arlberg (Austria): name, address, coordinates and map links of each house exactly as in its Google Business Profile, phone, e-mail, WhatsApp, check-in and check-out times, restaurants and opening hours, current season, and company stays (period, days, how to request). Use this for contact, address, directions or "when can I check in" questions. For rooms use list_rooms, for prices and dates check_availability.

Parameters

  • house "hotel" | "chalet" | "motel" | "all", default "all": One house (hotel = Ski Hotel Mondschein, chalet = Mondschein Chalet, motel = Arlberg Motel) or all.
  • language "de" | "nl" | "en", default "de": Language of texts and links: de, nl, en. Default de.

REST: POST /api/agent/hotel_info

list_houses

Lists the three houses of Mondschein in Stuben: Ski Hotel Mondschein (4 stars, since 1739), Mondschein Chalet (private spa suites, open all year) and Arlberg Motel. Returns id, name, short description, number of room types and the page URL. Use list_rooms with the house id next.

Parameters

  • language "de" | "nl" | "en", default "de": Language of texts and links: de, nl, en. Default de.

REST: POST /api/agent/list_houses

list_rooms

Lists the room types, optionally for one house: id, name, house, size in m², guests, main features, whether it is bookable in summer, and the room page URL. Use get_room for all details of one room and check_availability for prices on dates.

Parameters

  • house "hotel" | "chalet" | "motel": Only this house: hotel, chalet or motel. Leave out for all houses.
  • language "de" | "nl" | "en", default "de": Language of texts and links: de, nl, en. Default de.

REST: POST /api/agent/list_rooms

get_room

All published details of one room type: description, size, guests, all features, facts, photos with alt text, FAQ and the room page URL. Use the room_id from list_rooms. For prices on dates use check_availability.

Parameters

  • room_id (verplicht) string: Room id from list_rooms, e.g. comfort-double.
  • language "de" | "nl" | "en", default "de": Language of texts and links: de, nl, en. Default de.

REST: POST /api/agent/get_room

list_offers

Lists the current offers and packages (for example ski packages or summer escapes): id, title, short text, what is included, season, house and the offer page URL. Prices depend on dates: use check_availability or send the guest to the offer page.

Parameters

  • season "winter" | "summer" | "all", default "all": Only winter or summer offers, or all.
  • language "de" | "nl" | "en", default "de": Language of texts and links: de, nl, en. Default de.

REST: POST /api/agent/list_offers

list_areas

Lists the area guides around Stuben am Arlberg (ski resorts such as Lech, Zürs and St. Anton, valleys, and arrival from cities such as Zürich or München): slug, name, title and page URL. Use get_area for travel times, routes and FAQ of one area.

Parameters

  • language "de" | "nl" | "en", default "de": Language of texts and links: de, nl, en. Default de.

REST: POST /api/agent/list_areas

get_area

Details of one area guide: introduction, section headings, nearby places, FAQ (distances, travel times, what to do), a Google Maps route link to the Ski Hotel and the page URL. Use the slug from list_areas.

Parameters

  • slug (verplicht) string: Area slug from list_areas, e.g. lech or zuerich.
  • language "de" | "nl" | "en", default "de": Language of texts and links: de, nl, en. Default de.

REST: POST /api/agent/get_area

get_faq

Questions and answers from the FAQ page (check-in and check-out, which house is open in summer, distance to the slopes, half board, dogs, parking, extra beds, cancellation, arrival). Optionally filter with a search term. Returns the matching questions with answers and the FAQ page URL.

Parameters

  • query string: Optional search term, e.g. "Parken" or "hond". Leave out for all questions.
  • language "de" | "nl" | "en", default "de": Language of texts and links: de, nl, en. Default de.

REST: POST /api/agent/get_faq

get_lift_status

Live status of the lifts and slopes of Ski Arlberg around Stuben: lifts open of total, slopes open of total, each lift with its status, and when the data was fetched. Use it for "are the lifts open" questions. Returns UNAVAILABLE when the live source is not available; then point to the Arlberg live page.

Parameters

  • language "de" | "nl" | "en", default "de": Language of texts and links: de, nl, en. Default de.

REST: POST /api/agent/get_lift_status

get_weather

Current weather in Stuben am Arlberg (1409 m) at the Ski Hotel: temperature, snowfall, snow depth, weather code with a short label and, when available, the coming days. Source: Open-Meteo, refreshed about every 15 minutes.

Parameters

  • language "de" | "nl" | "en", default "de": Language of texts and links: de, nl, en. Default de.

REST: POST /api/agent/get_weather

check_availability

Rooms that can be requested for the given dates and number of guests, with the from-price per night in EUR and the booking page URL. Check the flag "source": while it is "mock" the prices are placeholders until the live booking system is connected; do not present them as binding prices, send the guest to booking_url instead. Never books anything: the guest books on the booking page or sends a request with request_offer.

Parameters

  • arrival (verplicht) string: Arrival date, YYYY-MM-DD.
  • departure (verplicht) string: Departure date, YYYY-MM-DD, after the arrival.
  • adults integer, default 2: Number of adults, 1 to 10.
  • children integer, default 0: Number of children, 0 to 8.
  • house "hotel" | "chalet" | "motel": Only this house. Leave out for all houses.
  • room_id string: Only this room type (id from list_rooms).
  • language "de" | "nl" | "en", default "de": Language of texts and links: de, nl, en. Default de.

REST: POST /api/agent/check_availability

request_offer

Sends a non-binding request for an offer to the reservation team of Hotel Mondschein, the same way as the request form on the website. Also for company stays (employees of a company, 1 April to 1 December, Sunday to Friday, rates on request): then put the company name in name and the number of employees in employees. It does not book and nothing is paid. Only call this after the guest has seen the exact content, explicitly agreed to send it (confirm: true) and agreed to the privacy policy (privacy_consent: true). Without both it returns CONFIRMATION_REQUIRED and sends nothing. If online requests cannot be delivered it returns NOT_DELIVERED with the phone and e-mail of the hotel: nothing was sent, so give the guest those instead. The team answers by e-mail.

Parameters

  • name (verplicht) string: Full name of the guest.
  • email (verplicht) email: E-mail address for the answer.
  • phone string: Optional phone number.
  • house "all" | "hotel" | "chalet" | "motel", default "all": Requested house, or all if the guest has no preference.
  • arrival string: Optional arrival date, YYYY-MM-DD.
  • departure string: Optional departure date, YYYY-MM-DD.
  • guests integer: Optional number of guests.
  • employees integer: Only for a company stay: the number of employees who would stay.
  • message (verplicht) string: The request in the words of the guest.
  • privacy_consent boolean, default false: true only if the guest agreed to the privacy policy (its URL is the link in the CONFIRMATION_REQUIRED answer).
  • confirm boolean, default false: true only if the guest explicitly confirmed sending this request.
  • language "de" | "nl" | "en", default "de": Language of texts and links: de, nl, en. Default de.

REST: POST /api/agent/request_offer

open_page

Opens a page of mondschein.com in this browser tab: either a known page by name (home, hotel, chalet, motel, buchen, kontakt, anreise, faq, angebote, firmen for company stays, arlbergLive, gebiete and more) or an internal path or URL from another tool result. Only pages on this site. Use it after the guest chose a room, offer or area.

Parameters

  • page "home" | "hotel" | "chalet" | "motel" | "kontakt" | "danke" | "gebiete" | "arlbergLive" | "buchen" | "reservieren" | "bestaetigung" | "verwalten" | "impressum" | "datenschutz" | "karriere" | "firmen" | "anreise" | "faq" | "geschichte" | "skiArlberg" | "wellness" | "chefsTable" | "fondue" | "angebote" | "neuigkeiten": A known page by name.
  • path string: An internal path such as /nl/comfort-double/ or a full URL on this site.
  • language "de" | "nl" | "en", default "de": Language of texts and links: de, nl, en. Default de.

Inloggen

De website heeft geen gastenaccount, dus geen enkele tool vraagt een login, token of API-sleutel. Vraag een gast nooit naar een wachtwoord.

Voorbeelden

curl -s https://mondschein.com/mcp \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
curl -s https://mondschein.com/mcp \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"list_rooms","arguments":{"house":"chalet","language":"nl"}}}'
curl -s https://mondschein.com/api/agent/check_availability \
  -H 'Content-Type: application/json' \
  -d '{"arrival":"2027-01-10","departure":"2027-01-14","adults":2,"language":"nl"}'

Antwoorden en fouten

Elke tool antwoordt met JSON. Succes heeft ok: true. Fouten geven geen uitzondering maar komen terug als { ok: false, code, message, link, contact }, met een van deze codes: VALIDATION, CONFIRMATION_REQUIRED, FORBIDDEN, NOT_FOUND, UNKNOWN_TOOL, RATE_LIMITED, UNAVAILABLE, NOT_DELIVERED. Via REST volgt de HTTP-status de code (400, 403, 404, 413, 429, 503).

Grenzen

Hooguit ongeveer 120 verzoeken per minuut. request_offer is beperkt tot enkele verzoeken per tien minuten en wordt daarnaast op bots gecontroleerd.

Meer