Mediterranean marine, nautical, sailing: forecasts, tides, sea routes, anchorages, POIs for AI.
Provides Mediterranean marine data including forecasts, tides, sea routes, and sailing information.
Captured live from the server via tools/list.
nausika_marine_forecast
Marine + atmospheric forecast at (latitude, longitude in decimal degrees). Returns waves, swell, currents, SST, wind, gusts, pressure, weather_code, visibility, precipitation, temperature, UV. Directions FROM.
Presets: now, today, tactical (default 3d), planning (8d), extended (14d), none. Windows: start_hour/end_hour, start_date/end_date, forecast_hours, forecast_days. Extra via variables[].
Pass include_percentiles=true to also fetch the ECMWF IFS-ENS 50-member ensemble and expose <var>_p10/_p50/_p90 series for atmospheric variables (precipitation, wind, gusts, pressure, temperature, etc.) alongside the deterministic forecast. Use it when forecast uncertainty matters — convective setups, planning/extended horizons, or any time the deterministic precip total looks inconsistent with the precipitation_probability. Waves/swell/currents/SST remain deterministic (no public ensemble). Default false to keep payload small.
Example: latitude=41.39, longitude=9.16, preset="today". Chain nausika_geocode for place→coords.
Parameters (12)
latitudenumberrequired
Latitude in decimal degrees (WGS84, -90 to 90)
longitudenumberrequired
Longitude in decimal degrees (WGS84, -180 to 180)
presetstring
High-level mode. now=current snapshot, today=24h hourly+daily, tactical=3d hourly_3+daily (default), planning=8d daily, extended=14d daily, none=3d hourly_3+daily but with NO core variables (caller supplies full variables list).
forecast_daysinteger
Override preset days (1-16). Forecast endpoint caps at 16, Marine at 8. Defaults to preset.
forecast_hoursinteger
Override with an hourly window. Wins over forecast_days. Defaults to preset.
start_datestring
Window start date YYYY-MM-DD. Used with end_date. Wins over forecast_hours/forecast_days. Defaults to preset.
end_datestring
Window end date YYYY-MM-DD. Used with start_date. Defaults to preset.
start_hourstring
Window start ISO YYYY-MM-DDThh:mm. Used with end_hour. Most specific override (wins over date and hour-count windows). Defaults to preset.
end_hourstring
Window end ISO YYYY-MM-DDThh:mm. Used with start_hour. Defaults to preset.
temporal_resolutionstring
Override hourly granularity. hourly_1=every hour, hourly_3=every 3h, hourly_6=every 6h. Defaults to the preset's resolution.
variablesarray
Extra variables added to the preset core (additive). Each is routed to its endpoint automatically. Required (non-empty) when preset='none'. Examples: swell_wave_height/swell_wave_direction/swell_wave_period for swell breakdown, ocean_current_velocity/ocean_current_direction (FROM-corrected) for currents, cape for thunderstorm risk, uv_index_max for UV.
include_percentilesboolean
When true, ALSO fetch the Open-Meteo ECMWF IFS-ENS ensemble (50 perturbed members) and expose `<var>_p10/_p50/_p90` percentile series alongside the deterministic forecast for atmospheric variables (precipitation, wind, gusts, pressure, temperature, etc.). Reveals forecast uncertainty — useful at planning/extended horizons or for convective setups where the deterministic run can disagree wildly with the ensemble median. Waves/swell/currents/SST stay deterministic (no public ensemble). Adds one extra HTTP call (~200ms latency) and grows the hourly payload ~4×. Default false.
nausika_seasonal_forecast
Fetch 1-7 month ECMWF SEAS5 seasonal forecast for one Mediterranean point. Returns ensemble-mean DAILY + MONTHLY aggregates of wind, SST, temperature, precipitation, cloud cover (extend via variables[]). NO waves — chain nausika_marine_forecast for short-term wind + waves.
Inputs: latitude, longitude, start_date, end_date, variables.
Example: latitude=40.12, longitude=9.01, start_date="2026-08-01", end_date="2026-08-31". Limits: end_date ≤ today+210d, range ≤ 215d.
Parameters (6)
latitudenumberrequired
Latitude in decimal degrees (WGS84, -90 to 90)
longitudenumberrequired
Longitude in decimal degrees (WGS84, -180 to 180)
start_datestringrequired
Window start date (UTC, ISO YYYY-MM-DD). Must be today or future.
end_datestringrequired
Window end date (UTC, ISO YYYY-MM-DD). Must be ≥ start_date and ≤ today + 210 days (SEAS5 horizon).
variablesarray
Additional variables, additive to the core set (wind_speed_10m, wind_direction_10m, sea_surface_temperature, temperature_2m, precipitation, cloud_cover). Each is expanded server-side into the appropriate daily and monthly aggregates. Defaults to core variables only.
include_membersboolean
When true, expose all 50 ECMWF SEAS5 ensemble members (`<var>_memberNN`) in the response. Default (false) collapses them into `_p10/_p50/_p90` percentile series alongside the ensemble mean — ~20× smaller payload, same statistical signal.
nausika_tides
Tide predictions or station discovery at a coordinate (latitude, longitude). Default: predictions from the nearest NOAA station; outside US waters falls back to a global modeled-tide source. Set stations_only=true to discover stations (capped by limit). Tune the window with begin_date (YYYYMMDD) + range_hours, the reference with datum, and output units (metric/english).
Example: latitude=37.77, longitude=-122.42. Chain nausika_geocode for place→coordinates; pair with nausika_marine_forecast.
Parameters (9)
latitudenumberrequired
Latitude in decimal degrees (WGS84, -90 to 90)
longitudenumberrequired
Longitude in decimal degrees (WGS84, -180 to 180)
stations_onlyboolean
If true, return nearby stations without fetching predictions (station discovery mode). Defaults to false.
limitinteger
Max stations to return in stations_only mode (default 5, max 10).
begin_datestring
Start date in YYYYMMDD format (defaults to today UTC).
range_hoursinteger
Duration in hours (default 48, max 744 = ~31 days).
datumstring
Tidal datum reference (default MLLW)
unitsstring
Units: metric (meters) or english (feet)
intervalstring
Interval: 'hilo' for high/low only (default), 'h' for hourly predictions
nausika_search_places
Mediterranean nautical place search by proximity. Returns name, coords, distance_km, ratings, i18n names, wiki/OSM links. Each result is prefixed with an 8-char [xxxxxxxx] short-id usable as place_id in nausika_get_place / nausika_manage_favorite / nausika_manage_rating / nausika_manage_route legs[].pois[].
Inputs: latitude, longitude, radius_km, query, type, types, category, shelter_from, bottom_type, names_lang, min_coverage_score, max_coverage_score, limit, offset.
Example: latitude=44.3, longitude=9.21, radius_km=50, query="marina genova", category="poi". Chain nausika_geocode → nausika_search_places → nausika_get_place(short-id).
Parameters (14)
latitudenumber
Center latitude for proximity search
longitudenumber
Center longitude for proximity search
radius_kmnumber
Search radius in km (default 50, max 200)
querystring
Fuzzy text search on place name
typestring
Filter by place type (ignored if 'types' is provided)
typesarray
Filter by multiple place types (takes precedence over 'type')
categorystring
Filter by category
shelter_fromstring
Compass direction to filter shelter (e.g. 'NW')
bottom_typestring
Bottom type filter (e.g. 'sand')
names_langstring
ISO 639-1 lang code. When set, response `name` is replaced with attributes.i18n.names[lang] if present; canonical OSM name kept as `name_canonical`.
min_coverage_scoreinteger
Minimum coverage score 0-100 — filter places by data completeness
max_coverage_scoreinteger
Maximum coverage score 0-100 — filter to low-coverage places that need enrichment
limitinteger
Max results, default 30, max 100
offsetinteger
Offset for pagination
nausika_get_place
Fetch full detail for a single place given its 'id'. Accepts either a full UUID or the 8-char [xxxxxxxx] short-id shown by nausika_search_places. Returns canonical attributes (name/coords/category/type), localized i18n names+descriptions, wiki image URLs, ratings aggregates, plus extras only this tool provides: the raw OpenStreetMap tags of the primary OSM feature, and direct links to OSM, Wikidata, and Wikipedia.
Use this after nausika_search_places returns a result you want to drill into. For proximity / text search, use nausika_search_places.
Parameters (1)
idstringrequired
Place id — full UUID or 8+ char hex prefix (the [xxxxxxxx] shown by nausika_search_places).
nausika_sea_route
Maritime routing via pgRouting Dijkstra on the MARNET sea-lane graph (Mediterranean only; errors out elsewhere), 6 kn sailing-yacht default, snaps land coordinates to the nearest marina/anchorage/port.
Returns distance, ETA, waypoint count, GeoJSON.
Examples:
- Genova → Bastia: origin_lat=44.4, origin_lon=8.93, dest_lat=42.7, dest_lon=9.45
- Distance-only: same coords with include_waypoints=false
Tip: chain nausika_geocode → here → nausika_calculator.
Parameters (9)
origin_latnumberrequired
Origin latitude
origin_lonnumberrequired
Origin longitude
dest_latnumberrequired
Destination latitude
dest_lonnumberrequired
Destination longitude
speed_knotsnumber
Vessel speed in knots for ETA calculation (default 6 kn, typical sailing yacht)
unitsstring
Distance units (default: nauticalmiles)
include_waypointsboolean
Set to false for distance-only mode (no waypoints or GeoJSON)
optimizationstring
Waypoint smoothing level. 'fast' (default): light smoothing, milliseconds. 'precise': highest-quality smoothing, slower (up to a few seconds). 'off': raw waypoints, unsmoothed.
snap_to_waterboolean
If origin or destination falls on land (e.g. a city centroid from nausika_geocode like Lisbon → 38.71, -9.14), automatically snap to the nearest known marine place (marina, anchorage, port) within a nearby distance. Set to false to disable and force a hard error on land coordinates. Default true.
nausika_calculator
Evaluate a math expression and return the numeric result. Useful for fuel, range/autonomy, unit conversions, and ad-hoc arithmetic.
Supported (exhaustive): +, -, *, /, ^, %, parentheses, sqrt(), abs(), ceil(), floor(), round(), sin(), cos(), tan(), log(), exp(), min(), max(), PI, E. Anything else (atan2, pow, log10, hypot, if, factorial, comparisons) is rejected.
Examples: "(120 / 6) * 8.5" (fuel for 120 nm at 8.5 L/h, 6 kn); "45 * 1.852" (nm to km).
Parameters (2)
expressionstringrequired
Math expression to evaluate
precisioninteger
Decimal places in the result (default 4)
nausika_geocode
Resolve a place 'query' to coordinates (forward) or find nearest places to 'latitude'+'longitude' (reverse). Mediterranean-focused curated DB; forward falls back to OSM/Nominatim globally. Each result carries a 'source' discriminator ('local' for the curated marine DB, 'osm' for the global fallback). Returns name, type, coords, source, plus similarity (forward) or distance_m (reverse).
Example forward: query="Portofino". Example reverse: latitude=44.3, longitude=9.21, radius_m=50000.
Chain into nausika_marine_forecast, nausika_tides, nausika_search_places, or nausika_sea_route using the returned coords.
Parameters (5)
querystring
Place name to search, forward geocoding
latitudenumber
Latitude for reverse geocoding
longitudenumber
Longitude for reverse geocoding
radius_minteger
Search radius for reverse geocoding in meters, default 50000
limitinteger
Max results, default 3, max 10
nausika_describe_place_schema
Returns the expected attributes for a given place 'type' (the only input parameter: marina, port, bay, fuel_station, city, island, etc.). Useful to understand what fields are available on places of that type.
Parameters (1)
typestringrequired
Place type to describe. See nausika_describe_place_schema response 'Valid place types' for the full enum.
nausika_is_water
Check whether a coordinate (latitude, longitude in decimal degrees) is on water or land, and how far it is from the coast. Returns:
- is_water: boolean (true if over sea, false if over land)
- distance_to_coast_m: meters to the nearest coastline boundary; meaningful on either side (sea → distance to shore, inland → distance to sea, e.g. Rome ≈ 25 km).
- source: detection source
Useful to verify waypoints in route planning, or to gauge how coastal/inland a point is.
Parameters (2)
latitudenumberrequired
Latitude in decimal degrees (-90 to 90)
longitudenumberrequired
Longitude in decimal degrees (-180 to 180)
nausika_convert_coordinates
Convert nautical coordinates between decimal degrees, DMS, and DM.
Inputs: latitude, longitude — each accepts decimal (44.4), DMS ("44°24'00\"N"), or DM ("44°24.0'N"). Returns all three formats plus input_format (detected per-axis).
Examples: latitude="44°24'N", longitude="9°02'E" → 44.4, 9.03; latitude="41°01'44.04\"N", longitude="009°32'42.00\"E" → 41.0289, 9.545.
Boat name (required for create, identifies boat for update/delete)
typestring
Boat type
loa_mnumber
Length overall in meters
beam_mnumber
Maximum beam in meters
draft_mnumber
Draft in meters
displacement_kginteger
Displacement in kg
engine_typestring
Engine type
engine_hpinteger
Engine power in HP
fuel_capacity_linteger
Fuel tank capacity in liters
motor_consumption_l_per_hnumber
Average motor fuel consumption at cruising RPM, in litres per hour
water_capacity_linteger
Water tank capacity in liters
cruising_speed_ktsnumber
Cruising speed in knots
max_speed_ktsnumber
Maximum speed in knots
safety_equipmentstring
Safety equipment description
certificationsstring
Certifications
nausika_get_boat_profile
Get your saved boat profile(s). Omit name for the default boat, or use name="*" to list all boats.
Tip: use boat speed/consumption with nausika_sea_route and nausika_calculator for trip planning.
Parameters (1)
namestring
Boat name. Omit to get the default boat, or use '*' to list all.
nausika_manage_favorite
Add or remove a place from your favorites list.
Examples:
- Add: action="add", place_id="a1b2c3d4", note="Great anchorage for overnight"
- Remove: action="remove", place_id="a1b2c3d4"
place_id accepts the 8-char [xxxxxxxx] shown by nausika_search_places, or a full UUID. Find places first with nausika_search_places, then bookmark by place_id.
Parameters (3)
actionstringrequired
Add or remove a favorite
place_idstringrequired
Place id — full UUID or 8+ char hex prefix from nausika_search_places ([xxxxxxxx])
notestring
Personal note (only for add)
nausika_get_favorites
List your favorite places with details and personal notes. Ordered by most recently added.
Inputs: limit, offset.
Tip: use place coordinates with nausika_sea_route or nausika_marine_forecast for trip planning.
Parameters (2)
limitinteger
Max results (default 20)
offsetinteger
Offset for pagination
nausika_manage_rating
Rate a place (1-5 stars) with an optional private comment. One rating per user per place.
Examples:
- Rate: action="upsert", place_id="a1b2c3d4", score=4, comment="Clean facilities"
- Delete: action="delete", place_id="a1b2c3d4"
place_id accepts the 8-char [xxxxxxxx] shown by nausika_search_places, or a full UUID. Find places first with nausika_search_places, then rate by place_id.
Parameters (4)
actionstringrequired
Create/update or delete your rating
place_idstringrequired
Place id — full UUID or 8+ char hex prefix from nausika_search_places ([xxxxxxxx])
scoreinteger
Rating 1-5 (required for upsert)
commentstring
Private comment (only visible to you)
nausika_get_ratings
View ratings for a place (aggregate + your own) or list all your ratings.
Inputs: place_id, my_only, limit, offset.
Examples:
- Place ratings: place_id="a1b2c3d4" (8-char short-id or full UUID)
- My ratings: my_only=true
Tip: ratings are visible in nausika_search_places results to help other sailors.
Parameters (4)
place_idstring
Get ratings for a specific place — full UUID or 8+ char hex prefix from nausika_search_places
my_onlyboolean
List only your own ratings
limitinteger
Max results
offsetinteger
Offset for pagination
nausika_manage_route
Save a sailing route or multi-day itinerary; legs may link to places.
Typical flow: compute legs with nausika_sea_route, then save here.
Examples:
- Single: action="upsert", name="Genova → Bastia", route_type="single", legs=[{...}]
- Itinerary: action="upsert", name="Corsica Trip", route_type="itinerary", legs=[{leg_order:1,...,pois:[{place_id:"a1b2c3d4",role:"overnight"}]}]
- Delete: action="delete", id="a1b2c3d4"
id and leg pois[].place_id accept either the 8-char [xxxxxxxx] short-id (from nausika_get_routes / nausika_search_places) or a full UUID.
Parameters (6)
actionstringrequired
Create/update or delete
idstring
Route id for update/delete — full UUID or 8+ char hex prefix from nausika_get_routes
namestring
Route name
descriptionstring
Route description
route_typestring
single leg or multi-leg itinerary
legsarray
Route legs, replaces all existing on update
nausika_get_routes
Look up your saved sailing-route library: direct fetch by id, or paginated search by name fragment via query, with limit and offset for pagination.
Examples:
- List all (defaults limit=20, offset=0): (no params)
- Detail by id: id="a1b2c3d4" (8-char short-id or full UUID)
- Search: query="Corsica", limit=10, offset=0
- Only itineraries: route_type="itinerary"
Tip: feed leg coordinates into nausika_marine_forecast or nausika_tides to check conditions along the route.
Parameters (5)
idstring
Fetch single route — full UUID or 8+ char hex prefix from nausika_get_routes