Voor ontwikkelaars

Extralingo is een boekings- en vergelijkingsplatform voor taalscholen in het buitenland. Wij zijn geen school. Deze pagina documenteert de openbare MCP-server waarmee AI-agents kunnen zoeken, vergelijken en studentverzoeken kunnen indienen.

REST API-versies

De agent-REST API is gedocumenteerd op https://www.extralingo.com/api/v1 (OpenAPI-versie 1.0.0). Dezelfde endpoints werken ook onder unversioned /api/* en blijven ondersteund. Breaking changes komen onder een nieuw major-pad (bijvoorbeeld /api/v2) met minstens 6 maanden notice voordat oude paden verdwijnen. MCP blijft op POST /mcp op de site-root.

Verbinding

Endpoint:
https://www.extralingo.com/mcp
Transport:
Streamable HTTP (JSON-RPC 2.0 via POST /mcp)
MCP-protocolversies:
2025-06-18, 2025-03-26
Serverversie:
3.0.1

Authenticatie

Leestools (zoeken, catalogi, prijsquotes, trip laden op id) hebben geen token nodig.

Schrijftools vereisen OAuth 2.1: authorization code met PKCE S256, scopes trips, requests en bookings. Protected resource metadata staat op /.well-known/oauth-protected-resource.

Volledige auth-gids · /.well-known/oauth-protected-resource

Tools

De lijst hieronder komt uit het live MCP-toolregister op deze server.

Tool Beschrijving Toegang
search_language_schools Search and rank language schools. Returns school_id, url, indicative from-price, and reviews. Prices are not a booking quote; call calculate_trip_price before quoting a total. Alleen lezen
search_destinations Search cities, countries, and school names. Use before search_language_schools to resolve place names to slugs. Alleen lezen
get_school_filters Valid filter values for search_language_schools (languages, countries, cities, course types, and other facets). Alleen lezen
get_school School briefing: profile, cancellation policy, reviews, image URLs, bookings_live flag, and optional hero image for chat UI. Requires school_id from search_language_schools. Alleen lezen
list_courses Live course catalogue for a bookings_live school (course ids, weeks, prices). Use returned course ids inside save_trip configuration. Alleen lezen
list_starting_dates Allowed course start dates (typically Mondays) for a school. Use startDate values in list_courses and configuration.startDate. Alleen lezen
list_accommodations Accommodation groups for a school. Use group ids in save_trip configuration (accommodationGroupId). Alleen lezen
get_course_details Details for one course id from list_courses (pricing rows, supplements, metadata). Alleen lezen
get_accommodation_details One group from list_accommodations (group_id): type, room_types, meal/board options, distance, amenities, age and min-stay rules, and week prices for startDate and currency. Use after list_accommodations, before save_trip or calculate_trip_price, or to answer questions about one option. Week prices are indicative; call calculate_trip_price for a checkout total. Alleen lezen
calculate_trip_price Live checkout quote for a configuration. Not a booking. Call before create_booking and before telling the student a final price. Alleen lezen
save_trip Create or update a server-side trip draft. Returns trip_id, url, trip_url, and continue_url (/s/{id}) so the student can restore selections on Extralingo.com. Not a booking. Requires OAuth trips scope (Bearer token). Maakt een verzoek aan / vereist inloggen
get_trip Load a saved trip by trip_id from save_trip. Returns continue_url for website handoff with configuration restored. Alleen lezen
email_trip Email continue_url (/s/{id}) to the verified account inbox. Requires OAuth trips scope. Rate-limited. Not a booking; you can share continue_url without emailing. Maakt een verzoek aan / vereist inloggen
create_booking Submit an unpaid booking for a bookings_live school (same path as the website Book now flow). The school still confirms availability; Extralingo emails the student; down payment is due within 5 days of school confirmation via Extralingo only. Never tell the user they are confirmed or paid. Requires OAuth bookings scope (Bearer token). Optional idempotency_key replays the same payload within 24 hours. Maakt een verzoek aan / vereist inloggen
request_quote Ask the school for a personal quote when bookings_live is false or the student is not ready to book. Requires OAuth requests scope. Optional idempotency_key. Maakt een verzoek aan / vereist inloggen
request_discussion Trip discussion: trip_id or school_id+configuration plus message. ask_school_question: question without a trip. request_quote: personal quote (comments) when not booking. School gets the config; Extralingo emails the verified account and coordinates replies. Returns kind, newBookingId, redirectUrl, message (not a booking). OAuth scope requests. Optional idempotency_key. Maakt een verzoek aan / vereist inloggen
ask_school_question Send a question to the school without a full trip configuration. Requires OAuth requests scope. Optional idempotency_key. Maakt een verzoek aan / vereist inloggen

Zo verbind je

Gebruik streamable HTTP op het endpoint hierboven. Raadpleeg de actuele documentatie van je client voor het exacte configformaat.

  • Claude (Connectors / remote MCP): voeg een custom connector toe met URL https://www.extralingo.com/mcp en doorloop OAuth wanneer schrijftools dat vragen.
  • Cursor: voeg een streamable-http MCP-server toe op https://www.extralingo.com/mcp (zie Cursor-docs voor mcp.json / MCP-instellingen).
  • Generieke clients: POST JSON-RPC initialize, daarna tools/list en tools/call. Stuur Accept: application/json, text/event-stream en hergebruik Mcp-Session-Id uit de initialize-response.

Machineleesbare bronnen

Gelist op

Contact

Vragen over de MCP-server of API-integratie:

De Extralingo Belofte

Bij Extralingo boek je een taalschool met vertrouwen. Kwaliteit hebben wij al voor je gecontroleerd: elke school op Extralingo is geaccrediteerd. Jij kiest alleen nog waar je je thuis voelt, tegen de laagste prijs en de beste voorwaarden. Geen onverwachte kosten achteraf.

9,4

op basis van 3.547 beoordelingen

116

geaccrediteerde scholen

51

bestemmingen

Betrouwbare scholen

  • Alleen geaccrediteerde scholen
  • Echte beoordelingen van studenten
  • Certificaat na afronding

Beste prijzen

  • Laagste prijs, gegarandeerd
  • Nooit een contante borg bij aankomst
  • Geen verborgen kosten

Veilig boeken

  • Betaal veilig, op jouw manier
  • Flexibel wijzigen of annuleren
  • Persoonlijke hulp via WhatsApp