Where Boats Anchor
Where boats stayed the night, and in what wind, at anchorages worldwide, with tonight's forecast.
Sollte ich dies verwenden
Qualität und Sicherheit
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"anchorages": {
"url": "https://whereboatsanchor.com/mcp"
}
}
}Remote-Endpunkte
https://whereboatsanchor.com/mcpstreamable-httpWas es kann
Tool-Inventar
Tools (4)
🟢find_anchorages(lat, lon, radius_nm, wind_from, wind_kn, ...)
Lists the places near a position where boats stopped, overnight or by day, with where boats stayed in tonight's forecast there or in a given wind. For tonight, call it without wind_from and wind_kn: the answer then carries tonight's forecast at the position and each place's nights in each of tonight's winds, as the site's Tonight does. Give a wind only to ask about that wind. Each place comes with how far and which way it lies from the position (e.g. 0.5 NM SW), its nights, where it is, its page and its place on the map. With a wind, each place gets its nights in that wind, split by strength, with the gusts on those nights (kt), and the list is sorted by those nights. A wind is counted as the site counts it: its compass point at 10 or 20 kt or more, as the forecast's band (e.g. wind_kn 15 counts E 10 kt or more). wind_from alone counts the direction at any strength. Under 3 kt (wind_kn in whole knots) the wind has no settled direction, so every night counts. A night counts once, in the wind it blew from most. Tonight is counted as the site's Tonight counts it: tonight's forecast times that are night there, each counted in its compass point at 10 or 20 kt or more, as its band (every night under 3 kt), and each place's fewest nights in any one of them. Where a place faces open water and tonight's swell there is 0.5 m or more, a time's nights are those that also had that swell, as on the site. Places with a night in every one of tonight's winds come first, by those fewest nights, then the rest. Without a forecast, by distance. Positions are WGS84 decimal degrees.
Eingabe-Schema
{
"type": "object",
"properties": {
"lat": {
"type": "number",
"minimum": -90,
"maximum": 90,
"description": "Latitude of the centre, WGS84 decimal degrees."
},
"lon": {
"type": "number",
"minimum": -180,
"maximum": 180,
"description": "Longitude of the centre, WGS84 decimal degrees."
},
"radius_nm": {
"default": 15,
"description": "Radius of the circle in nautical miles, 15 when left out, at most 50.",
"type": "number",
"exclusiveMinimum": 0,
"maximum": 50
},
"wind_from": {
"description": "Direction the wind blows from: degrees true (0 to 360) or a point of the 16-point compass (N, NNE, NE ... NNW).",
"anyOf": [
{
"type": "number"
},
{
"type": "string",
"maxLength": 8
}
]
},
"wind_kn": {
"description": "Mean wind speed in knots (kt). Needs wind_from. Under 3 kt as whole knots the direction counts for nothing, as on the site: every night counts.",
"type": "number",
"minimum": 0,
"maximum": 150
},
"limit": {
"default": 10,
"description": "Most places to list, 10 when left out, at most 25.",
"type": "integer",
"minimum": 1,
"maximum": 25
}
},
"required": [
"lat",
"lon"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"center": {
"type": "object",
"properties": {
"lat": {
"type": "number"
},
"lon": {
"type": "number"
}
},
"required": [
"lat",
"lon"
],
"additionalProperties": false
},
"radius_nm": {
"type": "number"
},
"wind": {
"anyOf": [
{
"type": "object",
"properties": {
"from": {
"anyOf": [
{
"type": "string",
"enum": [
"N",
"NE",
"E",
"SE",
"S",
"SW",
"W",
"NW"
]
},
{
"type": "null"
}
],
"description": "Null when the wind asked is under 3 kt: no settled direction, so every night counts, as on the site."
},
"min_kt": {
"type": "number"
}
},
"required": [
"from",
"min_kt"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"tonight": {
"anyOf": [
{
"type": "object",
"properties": {
"windows": {
"type": "array",
"items": {
"type": "object",
"properties": {
"time": {
"type": "string",
"description": "The forecast time on the clock at the position, ISO with its offset."
},
"from": {
"type": "string",
"enum": [
"N",
"NE",
"E",
"SE",
"S",
"SW",
"W",
"NW"
],
"description": "The forecast wind's compass point."
},
"mean_kt": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991,
"description": "The forecast mean wind, whole kt."
},
"counted_in": {
"type": "object",
"properties": {
"from": {
"anyOf": [
{
"type": "string",
"enum": [
"N",
"NE",
"E",
"SE",
"S",
"SW",
"W",
"NW"
]
},
{
"type": "null"
}
],
"description": "Null when the wind asked is under 3 kt: no settled direction, so every night counts, as on the site."
},
"min_kt": {
"type": "number"
}
},
"required": [
"from",
"min_kt"
],
"additionalProperties": false,
"description": "The wind its nights are counted in: its compass point at 10 or 20 kt or more, as its band; no point under 3 kt."
}
},
"required": [
"time",
"from",
"mean_kt",
"counted_in"
],
"additionalProperties": false
},
"description": "Tonight's 3-hour forecast times that are night at the position, in time order."
},
"missing": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991,
"description": "Tonight's forecast times without a wind."
},
"credit": {
"type": "object",
"properties": {
"text": {
"type": "string",
"const": "Weather data by Open-Meteo.com"
},
"url": {
"type": "string",
"const": "https://open-meteo.com/"
}
},
"required": [
"text",
"url"
],
"additionalProperties": false,
"description": "The forecast's credit. Show its text, linked to its url, wherever this forecast is shown."
}
},
"required": [
"windows",
"missing",
"credit"
],
"additionalProperties": false
},
{
"type": "null"
}
],
"description": "Tonight's forecast at the position, null when it isn't available."
},
"places": {
"type": "array",
"items": {
"type": "object",
"properties": {
"bay_id": {
"type": "string"
},
"name": {
"type": [
"string",
"null"
]
},
"where": {
"type": "object",
"properties": {
"country": {
"type": [
"string",
"null"
]
},
"region": {
"type": [
"string",
"null"
]
},
"county": {
"type": [
"string",
"null"
]
},
"area": {
"type": [
"string",
"null"
]
}
},
"required": [
"country",
"region",
"county",
"area"
],
"additionalProperties": false
},
"lat": {
"type": "number"
},
"lon": {
"type": "number"
},
"distance": {
"type": "string",
"description": "How far and which way from the position, as the site writes it (e.g. 0.5 NM SW)."
},
"nights": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991,
"description": "Nights boats stayed here: the site's number."
},
"matching": {
"anyOf": [
{
"type": "object",
"properties": {
"wind": {
"type": "object",
"properties": {
"from": {
"anyOf": [
{
"type": "string",
"enum": [
"N",
"NE",
"E",
"SE",
"S",
"SW",
"W",
"NW"
]
},
{
"type": "null"
}
],
"description": "Null when the wind asked is under 3 kt: no settled direction, so every night counts, as on the site."
},
"min_kt": {
"type": "number"
}
},
"required": [
"from",
"min_kt"
],
"additionalProperties": false
},
"nights": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991,
"description": "Nights boats stayed here in this wind: the site's number."
},
"nights_by_strength": {
"type": "object",
"properties": {
"under_10_kt": {
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
{
"type": "null"
}
],
"description": "Null unless the wind is counted at any strength."
},
"from_10_to_20_kt": {
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
{
"type": "null"
}
],
"description": "Null when the wind is counted at 20 kt or more."
},
"from_20_kt": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"under_10_kt",
"from_10_to_20_kt",
"from_20_kt"
],
"additionalProperties": false,
"description": "The nights split by the night's strongest wind from this direction, as the site's wedge for the direction. Adds up to nights."
},
"gusts_kt": {
"anyOf": [
{
"type": "object",
"properties": {
"min": {
"type": "number"
},
"max": {
"type": "number"
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
},
{
"type": "null"
}
],
"description": "Lowest and highest gust of the counted nights, kt."
}
},
"required": [
"wind",
"nights",
"nights_by_strength",
"gusts_kt"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"tonight": {
"anyOf": [
{
"type": "object",
"properties": {
"nights": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991,
"description": "The fewest nights in any one of tonight's winds."
},
"weakest": {
"anyOf": [
{
"type": "object",
"properties": {
"from": {
"anyOf": [
{
"type": "string",
"enum": [
"N",
"NE",
"E",
"SE",
"S",
"SW",
"W",
"NW"
]
},
{
"type": "null"
}
],
"description": "Null when the wind asked is under 3 kt: no settled direction, so every night counts, as on the site."
},
"min_kt": {
"type": "number"
}
},
"required": [
"from",
"min_kt"
],
"additionalProperties": false
},
{
"type": "null"
}
],
"description": "The wind those nights are counted in."
},
"weakest_swell": {
"anyOf": [
{
"type": "object",
"properties": {
"from": {
"type": "string",
"enum": [
"N",
"NE",
"E",
"SE",
"S",
"SW",
"W",
"NW"
]
},
"min_m": {
"type": "number"
}
},
"required": [
"from",
"min_m"
],
"additionalProperties": false
},
{
"type": "null"
}
],
"description": "The forecast swell those nights are counted with, as on the site: its compass point and the height it is counted from, m (0.5, 1.25 or 2.5 m or more). Null: the wind alone (a sheltered place, or tonight's swell there under 0.5 m)."
},
"every_window": {
"type": "boolean",
"description": "Whether boats stayed here on some night in each of tonight's winds."
}
},
"required": [
"nights",
"weakest",
"weakest_swell",
"every_window"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"url": {
"type": "string"
},
"map_url": {
"type": "string",
"description": "The site's map opened on this place."
}
},
"required": [
"bay_id",
"name",
"where",
"lat",
"lon",
"distance",
"nights",
"matching",
"tonight",
"url",
"map_url"
],
"additionalProperties": false
}
},
"places_in_radius": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"note": {
"type": [
"string",
"null"
]
},
"source": {
"type": "object",
"properties": {
"about": {
"type": "string",
"description": "The page that explains how the figures are known."
}
},
"required": [
"about"
],
"additionalProperties": false
}
},
"required": [
"center",
"radius_nm",
"wind",
"tonight",
"places",
"places_in_radius",
"note",
"source"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_bay_evidence(bay_id, name, near)
What boats did at one place, as its page on the site shows it. Its nights. Its nights by the eight compass points the wind blew from, split under 10, 10 to 20 and 20 kt or more, with the different boats and the windiest night of each. Its boats by length and type (cells under 3 boats null), its day stops by wind, its nights by swell direction where its page shows them, and the places nearby with how far and which way. It carries tonight's forecast at the place: the night's strongest forecast wind and the place's nights in that wind, as its page's Tonight shows it. Give bay_id, or name with near (WGS84 decimal degrees) to rank places of one name. Several places of one name come back as candidates.
Eingabe-Schema
{
"type": "object",
"properties": {
"bay_id": {
"description": "The place's id, as find_anchorages and list results give it (the page address's last part, e.g. cane-garden-bay).",
"type": "string",
"minLength": 1,
"maxLength": 200
},
"name": {
"description": "The place's name, when bay_id isn't known. Several places of one name are listed as candidates, never guessed.",
"type": "string",
"minLength": 1,
"maxLength": 200
},
"near": {
"description": "A position to rank places of the same name by nearness, WGS84 decimal degrees.",
"type": "object",
"properties": {
"lat": {
"type": "number",
"minimum": -90,
"maximum": 90
},
"lon": {
"type": "number",
"minimum": -180,
"maximum": 180
}
},
"required": [
"lat",
"lon"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"bay": {
"anyOf": [
{
"type": "object",
"properties": {
"bay_id": {
"type": "string"
},
"name": {
"type": [
"string",
"null"
]
},
"where": {
"type": "object",
"properties": {
"country": {
"type": [
"string",
"null"
]
},
"region": {
"type": [
"string",
"null"
]
},
"county": {
"type": [
"string",
"null"
]
},
"area": {
"type": [
"string",
"null"
]
}
},
"required": [
"country",
"region",
"county",
"area"
],
"additionalProperties": false
},
"kind": {
"type": [
"string",
"null"
]
},
"lat": {
"type": "number"
},
"lon": {
"type": "number"
},
"url": {
"type": "string"
},
"map_url": {
"type": "string",
"description": "The site's map opened on this place."
},
"nights": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991,
"description": "Nights boats stayed here: the site's number."
},
"line": {
"description": "The line under the place's name on the site.",
"type": [
"string",
"null"
]
},
"by_direction": {
"type": "array",
"items": {
"type": "object",
"properties": {
"from": {
"type": "string",
"enum": [
"N",
"NE",
"E",
"SE",
"S",
"SW",
"W",
"NW"
]
},
"nights": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"nights_by_strength": {
"anyOf": [
{
"type": "object",
"properties": {
"under_10_kt": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"from_10_to_20_kt": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"from_20_kt": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"under_10_kt",
"from_10_to_20_kt",
"from_20_kt"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"boats": {
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
{
"type": "null"
}
],
"description": "Different boats, overnight or by day, null under 3."
},
"windiest_night": {
"anyOf": [
{
"type": "object",
"properties": {
"date": {
"type": "string"
},
"kt": {
"type": "number"
},
"gust_kt": {
"type": [
"number",
"null"
]
}
},
"required": [
"date",
"kt",
"gust_kt"
],
"additionalProperties": false
},
{
"type": "null"
}
]
}
},
"required": [
"from",
"nights",
"nights_by_strength",
"boats",
"windiest_night"
],
"additionalProperties": false
}
},
"boats_by_size_and_type": {
"anyOf": [
{
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
{
"type": "null"
}
]
}
}
},
{
"type": "null"
}
]
},
"boats_not_given": {
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
{
"type": "null"
}
]
},
"day_stops": {
"anyOf": [
{
"type": "array",
"items": {
"type": "object",
"properties": {
"from": {
"type": "string",
"enum": [
"N",
"NE",
"E",
"SE",
"S",
"SW",
"W",
"NW"
]
},
"days": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"days_by_strength": {
"anyOf": [
{
"type": "object",
"properties": {
"under_10_kt": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"from_10_to_20_kt": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"from_20_kt": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"under_10_kt",
"from_10_to_20_kt",
"from_20_kt"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"windiest": {
"anyOf": [
{
"type": "object",
"properties": {
"kt": {
"type": "number"
},
"gust_kt": {
"type": [
"number",
"null"
]
}
},
"required": [
"kt",
"gust_kt"
],
"additionalProperties": false
},
{
"type": "null"
}
]
}
},
"required": [
"from",
"days",
"days_by_strength",
"windiest"
],
"additionalProperties": false
}
},
{
"type": "null"
}
]
},
"swell_by_direction": {
"anyOf": [
{
"type": "array",
"items": {
"type": "object",
"properties": {
"from": {
"type": "string",
"enum": [
"N",
"NE",
"E",
"SE",
"S",
"SW",
"W",
"NW"
]
},
"by_height": {
"type": "array",
"items": {
"type": "object",
"properties": {
"min_m": {
"type": "number"
},
"nights": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"period_s": {
"anyOf": [
{
"type": "object",
"properties": {
"min": {
"type": "number"
},
"max": {
"type": "number"
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
},
{
"type": "null"
}
]
}
},
"required": [
"min_m",
"nights",
"period_s"
],
"additionalProperties": false
}
}
},
"required": [
"from",
"by_height"
],
"additionalProperties": false
}
},
{
"type": "null"
}
]
},
"nearby": {
"type": "array",
"items": {
"type": "object",
"properties": {
"bay_id": {
"type": "string"
},
"name": {
"type": [
"string",
"null"
]
},
"distance": {
"type": "string",
"description": "How far and which way, as the site writes it (e.g. 0.5 NM SW)."
},
"nights": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"url": {
"type": "string"
},
"map_url": {
"type": "string",
"description": "The site's map opened on this place."
}
},
"required": [
"bay_id",
"name",
"distance",
"nights",
"url",
"map_url"
],
"additionalProperties": false
}
}
},
"required": [
"bay_id",
"name",
"where",
"kind",
"lat",
"lon",
"url",
"map_url",
"nights",
"line",
"by_direction",
"boats_by_size_and_type",
"boats_not_given",
"day_stops",
"swell_by_direction",
"nearby"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"tonight": {
"anyOf": [
{
"type": "object",
"properties": {
"time": {
"type": "string",
"description": "The night's strongest forecast time on the clock at the place, ISO with its offset."
},
"from": {
"type": "string",
"enum": [
"N",
"NE",
"E",
"SE",
"S",
"SW",
"W",
"NW"
],
"description": "The forecast wind's compass point."
},
"mean_kt": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991,
"description": "The forecast mean wind, whole kt."
},
"gust_kt": {
"anyOf": [
{
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
{
"type": "null"
}
],
"description": "The forecast gust, whole kt."
},
"counted_in": {
"type": "object",
"properties": {
"from": {
"anyOf": [
{
"type": "string",
"enum": [
"N",
"NE",
"E",
"SE",
"S",
"SW",
"W",
"NW"
]
},
{
"type": "null"
}
],
"description": "Null when the wind asked is under 3 kt: no settled direction, so every night counts, as on the site."
},
"min_kt": {
"type": "number"
}
},
"required": [
"from",
"min_kt"
],
"additionalProperties": false,
"description": "The wind its nights are counted in: its compass point at 10 or 20 kt or more, as its band; no point under 3 kt."
},
"nights": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991,
"description": "Nights boats stayed here in that wind."
},
"gusts_kt": {
"anyOf": [
{
"type": "object",
"properties": {
"min": {
"type": "number"
},
"max": {
"type": "number"
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
},
{
"type": "null"
}
],
"description": "Lowest and highest gust of those nights, kt."
},
"counted_with_swell": {
"anyOf": [
{
"type": "object",
"properties": {
"from": {
"type": "string",
"enum": [
"N",
"NE",
"E",
"SE",
"S",
"SW",
"W",
"NW"
]
},
"min_m": {
"type": "number"
}
},
"required": [
"from",
"min_m"
],
"additionalProperties": false
},
{
"type": "null"
}
],
"description": "The forecast swell those nights are counted with, as on the site: its compass point and the height it is counted from, m (0.5, 1.25 or 2.5 m or more). Null: the wind alone (a sheltered place, or the swell there under 0.5 m)."
},
"credit": {
"type": "object",
"properties": {
"text": {
"type": "string",
"const": "Weather data by Open-Meteo.com"
},
"url": {
"type": "string",
"const": "https://open-meteo.com/"
}
},
"required": [
"text",
"url"
],
"additionalProperties": false,
"description": "The forecast's credit. Show its text, linked to its url, wherever this forecast is shown."
}
},
"required": [
"time",
"from",
"mean_kt",
"gust_kt",
"counted_in",
"nights",
"gusts_kt",
"counted_with_swell",
"credit"
],
"additionalProperties": false
},
{
"type": "null"
}
],
"description": "Tonight at this place, null when the forecast isn't available or for candidates."
},
"candidates": {
"type": "array",
"items": {
"type": "object",
"properties": {
"bay_id": {
"type": "string"
},
"name": {
"type": "string"
},
"where": {
"type": [
"string",
"null"
]
},
"distance": {
"type": [
"string",
"null"
]
},
"url": {
"type": "string"
},
"map_url": {
"type": "string",
"description": "The site's map opened on this place."
}
},
"required": [
"bay_id",
"name",
"where",
"distance",
"url",
"map_url"
],
"additionalProperties": false
}
},
"note": {
"type": [
"string",
"null"
]
},
"source": {
"type": "object",
"properties": {
"about": {
"type": "string",
"description": "The page that explains how the figures are known."
}
},
"required": [
"about"
],
"additionalProperties": false
}
},
"required": [
"bay",
"tonight",
"candidates",
"note",
"source"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_climatology(bay_id, month)
Wind through the year at a place, as its page shows it: for each month, the nights whose strongest hour reached 20 kt and 30 kt, each year's fewest and most of them, the commonest directions of the nights of 20 kt or more, and the strongest gust, over ten years, for the area round the place. The first call for an area can answer preparing, then ready a few minutes later.
Eingabe-Schema
{
"type": "object",
"properties": {
"bay_id": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "The place's id, as find_anchorages gives it."
},
"month": {
"description": "One month, 1 (January) to 12 (December). Every month when left out.",
"type": "integer",
"minimum": 1,
"maximum": 12
}
},
"required": [
"bay_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"bay_id": {
"type": "string"
},
"name": {
"type": [
"string",
"null"
]
},
"status": {
"type": "string",
"enum": [
"ready",
"preparing",
"off"
]
},
"years": {
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
{
"type": "null"
}
],
"description": "How many years the wind through the year covers."
},
"source": {
"type": "object",
"properties": {
"about": {
"type": "string",
"description": "The page that explains how the figures are known."
}
},
"required": [
"about"
],
"additionalProperties": false
},
"months": {
"type": "array",
"items": {
"type": "object",
"properties": {
"month": {
"type": "integer",
"minimum": 1,
"maximum": 12
},
"nights_20_kt_or_more": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"nights_30_kt_or_more": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"each_year_20_kt_or_more": {
"anyOf": [
{
"type": "object",
"properties": {
"min": {
"type": "number"
},
"max": {
"type": "number"
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
},
{
"type": "null"
}
],
"description": "Each year's fewest and most nights of 20 kt or more in this month."
},
"each_year_30_kt_or_more": {
"anyOf": [
{
"type": "object",
"properties": {
"min": {
"type": "number"
},
"max": {
"type": "number"
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
},
{
"type": "null"
}
],
"description": "Each year's fewest and most nights of 30 kt or more in this month."
},
"mostly_from": {
"type": "array",
"items": {
"type": "string",
"enum": [
"N",
"NE",
"E",
"SE",
"S",
"SW",
"W",
"NW"
]
},
"description": "The commonest directions of the nights of 20 kt or more, at most two."
},
"strongest_gust": {
"anyOf": [
{
"type": "object",
"properties": {
"kt": {
"type": "number"
},
"night": {
"type": "string"
}
},
"required": [
"kt",
"night"
],
"additionalProperties": false
},
{
"type": "null"
}
]
}
},
"required": [
"month",
"nights_20_kt_or_more",
"nights_30_kt_or_more",
"each_year_20_kt_or_more",
"each_year_30_kt_or_more",
"mostly_from",
"strongest_gust"
],
"additionalProperties": false
}
},
"note": {
"type": [
"string",
"null"
]
}
},
"required": [
"bay_id",
"name",
"status",
"years",
"source",
"months",
"note"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢list_regions(country)
The site's directory of places where boats stayed the night. Without a country: each country with its number of places. With a country (directory slug or ISO code): its regions and cruising areas with their number of places. Each with the address of its directory page.
Eingabe-Schema
{
"type": "object",
"properties": {
"country": {
"description": "A country's directory slug (new-zealand) or ISO 3166 two-letter code (NZ). Every country when left out.",
"type": "string",
"minLength": 1,
"maxLength": 200
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"countries": {
"type": "array",
"items": {
"type": "object",
"properties": {
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"places": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"url": {
"type": "string"
}
},
"required": [
"slug",
"name",
"places",
"url"
],
"additionalProperties": false
}
},
"country": {
"anyOf": [
{
"type": "object",
"properties": {
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"places": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"url": {
"type": "string"
}
},
"required": [
"slug",
"name",
"places",
"url"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"regions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"places": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"url": {
"type": "string"
}
},
"required": [
"slug",
"name",
"places",
"url"
],
"additionalProperties": false
}
},
"areas": {
"type": "array",
"items": {
"type": "object",
"properties": {
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"places": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"url": {
"type": "string"
}
},
"required": [
"slug",
"name",
"places",
"url"
],
"additionalProperties": false
}
},
"note": {
"type": [
"string",
"null"
]
},
"source": {
"type": "object",
"properties": {
"about": {
"type": "string",
"description": "The page that explains how the figures are known."
}
},
"required": [
"about"
],
"additionalProperties": false
}
},
"required": [
"countries",
"country",
"regions",
"areas",
"note",
"source"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}Community
Nachweis