windext
windext is a free MCP server for wind-sports forecasting that supports spot lookup, multi-model wind forecasts, ride-window planning, tides, and community spot knowledge.
Find spots by name, with geocoding fallback.
Get spot cards: orientation, wind-sector quality, hazards, rules, tide notes, and nearby spots.
Get multi-model hourly forecasts: AROME, ICON, ECMWF, GFS, UKMO, plus KNMI/DMI in Europe, with consensus, spread, agreement, gust factor, and onshore/offshore diagnosis.
Find rideable windows: contiguous daytime periods inside a knot range, excluding offshore/forbidden directions by default.
Check tides: high/low water times and heights for coastal spots.
List weather models: which models are read at a location and why.
Submit or correct spot cards: contribute community spot data with wind sectors, rules, hazards, and tide calibration.
Use the
session_checkprompt for a rider-style “should I go?” assessment.Serve the iOS app via
/v1/verdict,/v1/spots, andPOST /v1/report.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@windext Should I kite at Ouistreham tomorrow? The beach faces north."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
windext
Multi-model wind forecasts for wind sports (kitesurf, windsurf, wingfoil, sailing), served to Claude over the Model Context Protocol.
One call reads AROME, ICON, ECMWF, GFS, UKMO (plus KNMI and DMI in Europe) for a spot and compiles them into a compact hourly table with model consensus, spread, agreement, gust factor and onshore/offshore relation, followed by a plain-language diagnosis of why the wind is gusty or steady.
Free for everyone: data from Open-Meteo (no key, CC BY 4.0), hosted on Cloudflare Workers free tier.
Use it
Claude Desktop / claude.ai / mobile: Settings → Connectors → Add custom connector → https://wind.oooooooo.dev/mcp
Claude Code:
claude mcp add --transport http windext https://wind.oooooooo.dev/mcpLocal (no server at all):
claude mcp add windext npx windext-mcpThen just talk about wind: "Should I go to Ouistreham tomorrow? The beach faces north."
Related MCP server: OhMyWind
Tools
Tool | What it does |
| Place name → coordinates |
| Hourly multi-model table + gust diagnosis. Give |
| Contiguous daytime windows inside your knot range, offshore excluded by default |
| Which models are read at a location and why |
Prompt session_check asks the full "should I go?" question the way an experienced rider would.
iOS app
ios/ holds the SwiftUI app and its widget (XcodeGen project). One question at onboarding (sport, weight, gear, level, stored on the phone only), then for each followed spot: a windext score out of 10 and a plain-language verdict for today and tomorrow. The small widget shows the score; the medium one the verdict and the window. An evening notification after a "go" day asks how it was, in one tap, which feeds the model scoring.
cd ios && xcodegen generate
xcodebuild -scheme Windext -destination 'platform=iOS Simulator,name=iPhone 17 Pro' buildThe app talks to GET /v1/verdict, GET /v1/spots and POST /v1/report. Verdict sentences are pre-written in 7 languages (src/core/verdict-i18n.ts) and computed by rules (src/core/verdict.ts); no language model runs on the server.
Develop
npm install
npm test # unit tests (vitest)
npx tsx scripts/sweep.ts # worldwide health sweep, 40 spots
npx tsx scripts/verdict-sweep.ts # ~2,900 real verdicts in 7 languages
npx tsx bench/run.ts r2 # blind A/B bench, Claude with vs without windext
npm run dev:worker # local Worker on :8787
npm run deploy # Cloudflare Workers, route wind.oooooooo.devLicences
Code: MIT (see LICENSE).
Spot database (
/spots.json, community cards): CC BY-SA 4.0. Credit windext and share improvements under the same licence.Seed spots: © OpenStreetMap contributors, ODbL.
Weather data: © Open-Meteo, CC BY 4.0.
Privacy
No accounts, no cookies, no personal data. Full policy: https://wind.oooooooo.dev/privacy
Available Tools
7 toolsfind_spotFind a spotARead-onlyIdempotent
Look a spot up by name in the windext spot database (community-built, with beach orientation and wind-direction knowledge), then fall back to geocoding. Always call this first.
Inputs: query (required).
list_modelsList weather modelsBRead-onlyIdempotent
Which weather models windext reads by default at a location, and their resolution/coverage notes.
Inputs: lat (required), lon (required).
ride_windowsRideable windowsBRead-onlyIdempotent
Contiguous daytime windows where the model-consensus wind sits inside the rider's range, excluding offshore wind and the spot's forbidden sectors unless allowed.
Inputs: lat, lon, days, max_kn, +4 more.
spot_forecastMulti-model wind forecast for a spotBRead-onlyIdempotent
Hourly wind forecast from several weather models at once (AROME, ICON, ECMWF, GFS, UKMO, plus KNMI/DMI in Europe), compiled into one compact table with model consensus, spread, agreement, gust factor and shore relation, followed by a diagnosis of why the wind is gusty or steady. Pass spot_id when known.
Inputs: lat, lon, days, sport, +6 more.
spot_infoSpot cardCRead-onlyIdempotent
Full card of a known spot, or the spots known within a radius of a point.
Inputs: lat, lon, spot_id, radius_km.
submit_spotSubmit or correct a spot cardAIdempotent
Add a spot to the open windext database, or correct an existing one. Only call after the user has confirmed the facts. Cards are stored with status "community" until a moderator verifies them; a correction to a verified spot is queued for review. Licence CC BY-SA, no personal data.
Inputs: lat (required), lon (required), name (required), kind, +14 more.
tidesTide timesARead-onlyIdempotent
High and low water times and heights (vs mean sea level) for a coastal spot, from the Open-Meteo marine model. Approximate (+/- 20 min), free, worldwide; not for navigation. Empty for lakes.
Inputs: lat, lon, days, spot_id, +1 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 7 tools
Each tool targets a distinct capability (search, spot details, submission, forecast, riding windows, tides, model metadata), and the descriptions give clear sequencing cues like 'always call this first.' The main soft spot is find_spot vs spot_info, which both surface spot data, but the descriptions adequately separate search-by-name from a full card/radius lookup.
Names are readable snake_case but mix conventions: verb_noun forms (find_spot, submit_spot, list_models) sit alongside noun-noun forms (spot_info, spot_forecast) and bare nouns (tides, ride_windows). A single consistent pattern like get_spot, get_forecast would be cleaner, though the domain theme keeps it understandable.
Seven tools is well-scoped for a wind-forecast/spot database server. Each tool covers a distinct piece of the domain (discovery, detail, contribution, forecast, derived windows, tides, model info) with no filler.
The core lifecycle is covered: find spots, view details, submit/correct spots, get forecasts, derive ride windows, check tides, and inspect models. Minor gaps exist (no saved/favorite spots, user preferences for rider range, or alerts), but agents can work around these.
Maintenance
Related MCP Connectors
Wind, swell and tide conditions per foil spot; sessions and coaching for signed-in users.
7 day surf forecasts (wave, wind, period) for any coordinate or named surf spot.
Marine and outdoor weather: multi-model forecasts, official bulletins, tides, anchorages.
Scores 45 NWP & AI weather models (ECMWF, GFS, ICON, meteoblue, MOSAIC) against 8,927 stations.
Related MCP Servers
- AlicenseAqualityDmaintenanceMCP server for wind forecasts, live measurements, wave forecasts, and tides, enabling kite and surf spot checks via AI assistants.57 npmMIT
- AlicenseNot gradedqualityAmaintenanceEnables any MCP-compatible assistant to plan sailing passages using wind and sea forecasts, with boat-specific polars, per-leg ETAs, complexity scores, and deep links to interactive plans. Works globally, with higher-resolution models over France, and supports multi-day departure window comparisons.11AGPL 3.0
- FlicenseNot gradedqualityDmaintenanceProvides current weather, forecasts, trend predictions, and personalized recommendations for any location using the Open-Meteo API.-
- AlicenseNot gradedqualityBmaintenanceEnables querying and comparing operational numerical weather models, including global and regional, deterministic and ensemble, physics-based and AI forecasts, with a unified API.66 npmMIT