KaiCast Ocean Conditions
Ocean conditions by location: water visibility, swell, wind, tide, plus dive and snorkel spot picks.
Sollte ich dies verwenden
Qualität und Sicherheit
Befunde (1)
- LOWin get_conditions
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": {
"ocean-conditions": {
"url": "https://kaicast.com/mcp?ref=mcp-registry"
}
}
}Remote-Endpunkte
https://kaicast.com/mcp?ref=mcp-registrystreamable-httpWas es kann
Tool-Inventar
Tools (4)
🟢get_conditions(spot, lat, lon, from, to)
Facts for ONE covered spot over up to 7 days: 3-hour forecast periods with condition score (0-100) and rating, water visibility (ft), swell height/period/direction, wind, tide state and height, water temperature, plus tide events and data quality. Pass a spot id, or lat+lon to use the nearest covered spot within 30 km. Free.
Eingabe-Schema
{
"type": "object",
"properties": {
"spot": {
"description": "Spot id, e.g. \"electric-beach\". Pass this OR lat+lon.",
"type": "string",
"minLength": 1,
"maxLength": 64
},
"lat": {
"description": "Latitude; snaps to the nearest covered spot within 30 km.",
"type": "number",
"minimum": -90,
"maximum": 90
},
"lon": {
"description": "Longitude; use with lat.",
"type": "number",
"minimum": -180,
"maximum": 180
},
"from": {
"description": "First day, spot-local YYYY-MM-DD. Default: today.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"to": {
"description": "Last day, inclusive. At most 7 days after from. Default: from + 6.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"schema": {
"type": "string"
},
"spot": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"id",
"name"
],
"additionalProperties": {}
},
"periods": {
"type": "array",
"items": {
"type": "object",
"properties": {
"start": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"score": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
}
},
"required": [
"start",
"score"
],
"additionalProperties": {}
}
},
"source": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"url": {
"type": "string"
},
"docs": {
"type": "string"
}
},
"required": [
"name",
"url",
"docs"
],
"additionalProperties": {}
}
},
"required": [
"schema",
"spot",
"periods",
"source"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": {}
}🟢list_coverage(region)
Which regions and spots KaiCast covers, and whether each region supports ranked decisions (spot picks and best-day answers) or facts only. Also lists supported activities and how directly each is modeled. Anywhere not listed is not covered. Free.
Eingabe-Schema
{
"type": "object",
"properties": {
"region": {
"description": "Limit to one region id.",
"type": "string",
"minLength": 1,
"maxLength": 64
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"schema": {
"type": "string"
},
"regions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"decision_support": {
"type": "string"
},
"spot_count": {
"type": "number"
}
},
"required": [
"id",
"name",
"decision_support",
"spot_count"
],
"additionalProperties": {}
}
},
"source": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"url": {
"type": "string"
},
"docs": {
"type": "string"
}
},
"required": [
"name",
"url",
"docs"
],
"additionalProperties": {}
}
},
"required": [
"schema",
"regions",
"source"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": {}
}🟢recommend_spot(region, spot, lat, lon, radius_km, ...)
Ranked top picks (max 5) for an activity in one area on one day — by region id, or lat+lon with a radius. Each pick has the best daylight window, why (from the published conditions), a confidence score with its factors, caveats, and a KaiCast spot card. Returns status "not_covered" / "conditions_only" / "activity_not_modeled" honestly instead of guessing. Activities: snorkel (native model), dive, freedive, spearfish (proxy model; spots in water closed to spearfishing are excluded), surf (not modeled). Free during early access.
Eingabe-Schema
{
"type": "object",
"properties": {
"region": {
"description": "Region id, e.g. \"us-hi-oahu\".",
"type": "string",
"minLength": 1,
"maxLength": 64
},
"spot": {
"description": "Spot id, e.g. \"hanauma-bay\".",
"type": "string",
"minLength": 1,
"maxLength": 64
},
"lat": {
"description": "Latitude, decimal degrees. Use with lon.",
"type": "number",
"minimum": -90,
"maximum": 90
},
"lon": {
"description": "Longitude, decimal degrees. Use with lat.",
"type": "number",
"minimum": -180,
"maximum": 180
},
"radius_km": {
"description": "Search radius around lat/lon in km (default 40, max 100).",
"type": "number",
"exclusiveMinimum": 0,
"maximum": 100
},
"activity": {
"type": "string",
"enum": [
"snorkel",
"dive",
"freedive",
"spearfish",
"surf"
],
"description": "What the user wants to do."
},
"date": {
"description": "Spot-local day to plan for. Default: today, or tomorrow once today's daylight has passed. Up to 6 days ahead.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"limit": {
"description": "How many picks (default 3, max 5).",
"type": "integer",
"minimum": 1,
"maximum": 5
}
},
"required": [
"activity"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"schema": {
"type": "string"
},
"status": {
"type": "string",
"enum": [
"ok",
"no_data",
"not_covered",
"conditions_only",
"activity_not_modeled"
]
},
"message": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"coverage": {
"type": "object",
"properties": {
"status": {
"type": "string"
}
},
"required": [
"status"
],
"additionalProperties": {}
},
"disclaimer": {
"type": "string"
},
"source": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"url": {
"type": "string"
},
"docs": {
"type": "string"
}
},
"required": [
"name",
"url",
"docs"
],
"additionalProperties": {}
},
"picks": {
"type": "array",
"items": {
"type": "object",
"properties": {
"rank": {
"type": "number"
},
"spot": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"id",
"name"
],
"additionalProperties": {}
},
"date": {
"type": "string"
},
"score": {
"type": "number"
},
"rating": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"why": {
"type": "object",
"properties": {
"summary": {
"type": "string"
}
},
"required": [
"summary"
],
"additionalProperties": {}
},
"confidence": {
"type": "object",
"properties": {
"value": {
"type": "number"
},
"label": {
"type": "string"
}
},
"required": [
"value",
"label"
],
"additionalProperties": {}
},
"caveats": {
"type": "array",
"items": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
}
},
"required": [
"code",
"message"
],
"additionalProperties": false
}
},
"card": {
"type": "object",
"properties": {
"spot_id": {
"type": "string"
},
"spot_name": {
"type": "string"
},
"tier": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"tier_label": {
"type": "string"
},
"score": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"date": {
"type": "string"
},
"links": {
"type": "object",
"properties": {
"share": {
"type": "string"
},
"app": {
"type": "string"
},
"forecast": {
"type": "string"
}
},
"required": [
"share",
"app",
"forecast"
],
"additionalProperties": {}
},
"cta": {
"type": "object",
"properties": {
"label": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"label",
"url"
],
"additionalProperties": {}
}
},
"required": [
"spot_id",
"spot_name",
"tier",
"tier_label",
"score",
"date",
"links",
"cta"
],
"additionalProperties": {}
}
},
"required": [
"rank",
"spot",
"date",
"score",
"rating",
"why",
"confidence",
"caveats",
"card"
],
"additionalProperties": {}
}
}
},
"required": [
"schema",
"status",
"coverage",
"disclaimer",
"source",
"picks"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": {}
}🟢best_day(region, spot, lat, lon, radius_km, ...)
Which day in a window (max 7 days) is best for an activity at a destination — a spot, a region, or lat+lon with a radius — and why, versus the runner-up. Returns every day's best score, confidence, caveats and a KaiCast spot card for the winner. Free during early access.
Eingabe-Schema
{
"type": "object",
"properties": {
"region": {
"description": "Region id, e.g. \"us-hi-oahu\".",
"type": "string",
"minLength": 1,
"maxLength": 64
},
"spot": {
"description": "Spot id, e.g. \"hanauma-bay\".",
"type": "string",
"minLength": 1,
"maxLength": 64
},
"lat": {
"description": "Latitude, decimal degrees. Use with lon.",
"type": "number",
"minimum": -90,
"maximum": 90
},
"lon": {
"description": "Longitude, decimal degrees. Use with lat.",
"type": "number",
"minimum": -180,
"maximum": 180
},
"radius_km": {
"description": "Search radius around lat/lon in km (default 40, max 100).",
"type": "number",
"exclusiveMinimum": 0,
"maximum": 100
},
"activity": {
"type": "string",
"enum": [
"snorkel",
"dive",
"freedive",
"spearfish",
"surf"
],
"description": "What the user wants to do."
},
"from": {
"description": "Window start, spot-local. Default: today.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"to": {
"description": "Window end, inclusive, at most 7 days. Default: from + 6.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
}
},
"required": [
"activity"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"schema": {
"type": "string"
},
"status": {
"type": "string",
"enum": [
"ok",
"no_data",
"not_covered",
"conditions_only",
"activity_not_modeled"
]
},
"message": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"coverage": {
"type": "object",
"properties": {
"status": {
"type": "string"
}
},
"required": [
"status"
],
"additionalProperties": {}
},
"disclaimer": {
"type": "string"
},
"source": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"url": {
"type": "string"
},
"docs": {
"type": "string"
}
},
"required": [
"name",
"url",
"docs"
],
"additionalProperties": {}
},
"best": {
"anyOf": [
{
"type": "object",
"properties": {
"rank": {
"type": "number"
},
"spot": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"id",
"name"
],
"additionalProperties": {}
},
"date": {
"type": "string"
},
"score": {
"type": "number"
},
"rating": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"why": {
"type": "object",
"properties": {
"summary": {
"type": "string"
}
},
"required": [
"summary"
],
"additionalProperties": {}
},
"confidence": {
"type": "object",
"properties": {
"value": {
"type": "number"
},
"label": {
"type": "string"
}
},
"required": [
"value",
"label"
],
"additionalProperties": {}
},
"caveats": {
"type": "array",
"items": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
}
},
"required": [
"code",
"message"
],
"additionalProperties": false
}
},
"card": {
"type": "object",
"properties": {
"spot_id": {
"type": "string"
},
"spot_name": {
"type": "string"
},
"tier": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"tier_label": {
"type": "string"
},
"score": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"date": {
"type": "string"
},
"links": {
"type": "object",
"properties": {
"share": {
"type": "string"
},
"app": {
"type": "string"
},
"forecast": {
"type": "string"
}
},
"required": [
"share",
"app",
"forecast"
],
"additionalProperties": {}
},
"cta": {
"type": "object",
"properties": {
"label": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"label",
"url"
],
"additionalProperties": {}
}
},
"required": [
"spot_id",
"spot_name",
"tier",
"tier_label",
"score",
"date",
"links",
"cta"
],
"additionalProperties": {}
},
"date_label": {
"type": "string"
}
},
"required": [
"rank",
"spot",
"date",
"score",
"rating",
"why",
"confidence",
"caveats",
"card",
"date_label"
],
"additionalProperties": {}
},
{
"type": "null"
}
]
},
"days": {
"type": "array",
"items": {
"type": "object",
"properties": {
"date": {
"type": "string"
},
"score": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
}
},
"required": [
"date",
"score"
],
"additionalProperties": {}
}
}
},
"required": [
"schema",
"status",
"coverage",
"disclaimer",
"source"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": {}
}Community
Nachweis