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

A
Qualität der Beschreibung
88%
Vollständigkeit des Schemas
95%
Qualität der Benennung
90%
Risiko der Vergiftung
100%
Übereinstimmung der Berechtigungen
100%
Einhaltung des Protokolls
100%

Befunde (1)

  • LOWTool 'get_conditions' description lacks action verbin get_conditions

Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.

Kontextkosten

~2,818Tokens (Tool-Definitionen)
~6.8 KBTypische Antwortgröße
Erhebliche Auswirkung auf die Aufmerksamkeit (2.20% von 128k Kontext)

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-http

Was es kann

Tool-Inventar

Tools (4)

🟢 Nur lesen🟡 Schreiben🔴 Löschen⚪ Unbekannt
🟢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

Diesen Server bewerten

Nachweis

Aktuelle Beobachtungen

verifiziertVersion nicht aufgezeichnet4 Tools