Surf Booking MCP server
Which servers in the official MCP registry are Surf Booking's own, whether they answer, and what they offer. A program checked each of these, nobody copied them from a product page.
read 2026-10-20
- Registry nameeu.surfbooking/surfbookingverified in the MCP registry
The registry name sits under surfbooking.eu. The registry only lets a publisher use that namespace after proving control of the domain through DNS or HTTP.
- Stateanswerschecked 2026-10-20
- Tools10
- Server calls itselfsurfbooking
- Server version0.2.0
- Protocol version2025-06-18
On 2026-10-20 the server answered initialize and tools/list without a sign-in. First answer in 191 ms.
- Its tools do Check beach forecasts before paying for a lesson, but not Manage a surf school's calendar, lessons, staff and payments.
- Checked on 1 of the 7 days it takes to judge reliability.
Once connected
- For "Check beach forecasts before paying for a lesson", the likely first call is surf_forecast.
Said by rules from the measurements above. The likely first call is a model's pick from the tool list; read its description before relying on it.
- INITE MCP scoreafter a weeka score needs 7 daily checks: 1 so far
- What an agent can do with it1 of 2 use cases
- Answeredmeasuring1 of the 7 daily checks it takes to print a share
- Median first answer312 ms
- Space in an agent's context≈ 2,421 tokensthe definitions of all its tools (10), which an agent carries on every turn
- Tool definitionsA · 100 of 100
- Typed results0 of 10 toolsdeclared outputSchema: results come typed, read once
- Every tool passes all six checks.
What an agent can do with it
- not sure · Book a surf lesson by beach and level
- cannot · Manage a surf school's calendar, lessons, staff and payments
- can do · Check beach forecasts before paying for a lesson
Each of the product's use cases, put to Jev against this server's tool list: can an agent do it with these tools?
Worth a look
None of the five warning signs in these definitions.
A program checks the server once a day: initialize and tools/list, no model. Tokens are the definitions' length at about four characters a token. The grade averages six checks of every tool's name, description, schema and annotations; it says how well the tools are described, not whether they work. The score weighs what was measured and nothing else: answering (30%), doing the product's job (25%), definitions (20%), context (10%) and use (15%). A part that was not measured is left out, and a hidden instruction caps the score at 40. The state of vendors' MCP servers: method and numbers →
search_lessonsSearch 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…
lesson_detailsGet full details of a specific bookable lesson by its id (date, time, level, price, duration, spots left, what's included). Use the id returned by search_lessons. Read-only. Great for 'tell me more about that lesson' or 'o que está…
get_booking_linkGet the secure SurfBooking link a user opens to BOOK and PAY for a lesson (Stripe). 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…
surf_forecastGet 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…
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. Pure EU/Portugal sizing calculation — read-only, books or charges nothing. Useful before picking a lesson…
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); list_zones names them), with how many certified schools each has and whether…
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. Pair with surf_forecast (per-spot level-aware score + best day) and search_lessons…
recommend_spotsRecommend 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…
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 level. Returns real upcoming lessons with date, time, spot…
best_surf_todayReturn 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…
How to connect
Add the server to your MCP client config. Claude Desktop, Cursor and most other clients read this shape:
{
"mcpServers": {
"surfbooking": {
"type": "http",
"url": "https://www.surfbooking.eu/api/mcp"
}
}
}Add it
Claude Code, in a terminal
claude mcp add --transport http surfbooking https://www.surfbooking.eu/api/mcpclaude.ai, ChatGPT and other clients: add https://www.surfbooking.eu/api/mcp as a custom connector in the settings.
OpenAPI spec
25 paths, read 2026-10-20. Open the spec ↗
Each line is something a program found when it went looking: the registry entry, the server's own answer, a spec that parses. A missing line means we did not find it, not that it does not exist.