Surf Booking
by surfbooking.eu · remote · no sign-in to list tools · v0.2.0 · published by eu.surfbooking
Surf lessons from verified schools and the sea beach by beach, for your level and hour. Read-only.
10 tools: 2 change things and 8 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone0Claude Code: ask
- Changes things2Claude Code: ask: see these tools
- Only reads8Claude Code: allow: see these tools
No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http surfbooking https://www.surfbooking.eu/api/mcpTools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
10 tools
Changes things 2Claude Code: ask
recommend_spotsRecommend the top surf beaches in SurfBooking zones right now.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Recommend the top surf beaches in SurfBooking zones right now. Pass `level` for a LEVEL-AWARE ranking — the best spots for a beginner / advanced surfer at this moment, weighted by how well each spot's live wave fits that level. Without `level`, ranks by the live SurfBooking Index (conditions + activity). Best for 'where's good to surf now?' / 'best beach for a beginner today?'. Optionally filter by zone. It ranks beaches for right now, not the best day ahead, and returns no lessons. This returns BEACHES, not lessons.
Annotations the server declares
- title: Recommended spots
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
size_equipmentRecommend surf gear sizes (wetsuit, board, leash, and boots if a shoe size is given) from a person's weight, height and surf level.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Recommend surf gear sizes (wetsuit, board, leash, and boots if a shoe size is given) from a person's weight, height and surf level. Pure EU/Portugal sizing calculation — read-only, books or charges nothing. Useful before picking a lesson so the right gear is ready. Great for 'what wetsuit size do I need' or 'que prancha para 80 kg e 1,80 m'.
Annotations the server declares
- title: Gear sizes
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
Only reads 8Claude Code: allow
best_surf_todayReturn the top surf spots in SurfBooking zones right now, ranked by current live conditions.No findings
Why it is in this group
- The description's first verb is "return": a word for reading.
Description, as the server wrote it Return the top surf spots in SurfBooking zones right now, ranked by current live conditions. Scores every active SurfBooking spot (wave height, swell period, wind, coast facing) and returns the best ones with wave height, wind, surf score, level suitability, and a link to each beach's page with its lessons. Great for 'what's the best surf spot today?', 'onde está o surf melhor agora?', or 'melhores condições de surf em Portugal'. Conditions are cached from the live forecast and updated every 15 minutes. Read-only, SurfBooking zones only: Portugal (27 zones), South Africa (4 zones), Spain (2 zones), Italy (2 zones). The ranking is by live conditions only, not weighted to one surfer level.
Annotations the server declares
- title: Best surf today
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
find_lessons_by_conditionsFind bookable surf lessons at SurfBooking beaches where current sea conditions match the given criteria: minimum wave height, minimum surf score, wind quality, and/or a specific le…No findings
Why it is in this group
- The name "find_lessons_by_conditions" says "find": a word for reading.
Description, as the server wrote it Find bookable surf lessons at SurfBooking beaches where current sea conditions match the given criteria: minimum wave height, minimum surf score, wind quality, and/or a specific level. Returns real upcoming lessons with date, time, spot, price and a booking link — only from spots where the sea ACTUALLY meets your threshold right now. Great for 'find beginner lessons when the sea is at least 1m', 'show lessons on days with light wind', or 'surf quando o mar tiver pelo menos 1.5m'. The scoring algorithm is proprietary and runs server-side. Read-only, SurfBooking zones with schools only: Portugal (14 zones with schools), Spain (1 zone with schools). Books or charges nothing. It always returns lessons, never a plain ranking of beaches.
Annotations the server declares
- title: Lessons for the conditions
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
get_booking_linkGet the secure SurfBooking link a user opens to BOOK and PAY for a lesson.No findings
Why it is in this group
- The name "get_booking_link" says "get": a word for reading.
Description, as the server wrote it Get the secure SurfBooking link a user opens to BOOK and PAY for a lesson. NEVER books or charges — only returns the URL; the human completes the purchase. Great for 'send me the payment link' or 'manda-me o link para pagar essa aula'.
Annotations the server declares
- title: Booking link
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
lesson_detailsGet full details of a specific bookable lesson by its id (date, time, level, price, duration, spots left, what's included).No findings
Why it is in this group
- The description's first verb is "get": a word for reading.
Description, as the server wrote it Get full details of a specific bookable lesson by its id (date, time, level, price, duration, spots left, what's included). Takes a lesson id from a lesson search result. Read-only. Great for 'tell me more about that lesson' or 'o que está incluído nessa aula'.
Annotations the server declares
- title: Lesson details
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
list_spotsList surf beaches (spots), optionally filtered to one zone/region, with bottom type and a short description so you can pick beginner-friendly beaches.No findings
Why it is in this group
- The name "list_spots" says "list": a word for reading.
Description, as the server wrote it List surf beaches (spots), optionally filtered to one zone/region, with bottom type and a short description so you can pick beginner-friendly beaches. Returns beaches, not forecasts or lessons. Great for 'which beaches are in Ericeira' or 'praias boas para iniciantes no Algarve'.
Annotations the server declares
- title: Surf spots
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
list_zonesList the surf zones/regions covered by SurfBooking (SurfBooking zones only: Portugal (27 zones), South Africa (4 zones), Spain (2 zones), Italy (2 zones)), with how many certified …No findings
Why it is in this group
- The name "list_zones" says "list": a word for reading.
Description, as the server wrote it List the surf zones/regions covered by SurfBooking (SurfBooking zones only: Portugal (27 zones), South Africa (4 zones), Spain (2 zones), Italy (2 zones)), with how many certified schools each has and whether lessons are bookable. Answers an open 'where can I learn to surf?' / 'best region for beginners?' question. This is about REGIONS and school coverage, never live sea conditions or per-level rankings.
Annotations the server declares
- title: Surf zones
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
search_lessonsSearch bookable surf lessons on SurfBooking by free-text query (zone, beach, level, activity), with optional structured filters (level, maxPrice, date range).No findings
Why it is in this group
- The name "search_lessons" says "search": a word for reading.
Description, as the server wrote it Search bookable surf lessons on SurfBooking by free-text query (zone, beach, level, activity), with optional structured filters (level, maxPrice, date range). Returns upcoming lessons with date, time, spot, level, school, price and a booking link, and says how many matched. All times are local Europe/Lisbon. SurfBooking zones with schools only: Portugal (14 zones with schools), Spain (1 zone with schools). Read-only — does not book or charge anything. It returns lessons, not a ranking of where the surf is good right now. Great for 'aulas de surf na Ericeira', 'beginner lessons this weekend' or 'surf lesson under 40 euros'. This is the general search by place, level, date and price; it does not filter by what the sea is doing, and it does not search hotels.
Annotations the server declares
- title: Search surf lessons
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
surf_forecastGet the SurfBooking forecast for a surf spot by name (e.g.No findings
Why it is in this group
- The description's first verb is "get": a word for reading.
Description, as the server wrote it Get the SurfBooking forecast for a surf spot by name (e.g. 'Carcavelos', 'Ericeira', 'Matosinhos', 'Peniche'). Returns the current 0–10 surf score with label, the level-relevant wave height, period and wind, PLUS a multi-day outlook (the best daylight window per day for the next ~week) so you can answer 'which day this week should I book a lesson?'. The score is level-aware and scored per spot (proprietary). Read-only, SurfBooking zones only: Portugal (27 zones), South Africa (4 zones), Spain (2 zones), Italy (2 zones), times Europe/Lisbon. Books or charges nothing.
Annotations the server declares
- title: Surf forecast
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 0.2.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http surfbooking https://www.surfbooking.eu/api/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__surfbooking__search_lessons",
"mcp__surfbooking__lesson_details",
"mcp__surfbooking__get_booking_link",
"mcp__surfbooking__surf_forecast",
"mcp__surfbooking__list_zones",
"mcp__surfbooking__list_spots",
"mcp__surfbooking__find_lessons_by_conditions",
"mcp__surfbooking__best_surf_today"
],
"ask": [
"mcp__surfbooking__size_equipment",
"mcp__surfbooking__recommend_spots"
],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as surfbooking. Review it before you use it.