Find best activity window
find_best_activity_windowRanks 3-hour windows for a beach day or surf session by scoring consecutive qualifying hours, returning sorted candidates and skipped hours with reasons.
Instructions
Slides a fixed 3-hour block across the requested window at hourly stride and names the most suitable stretch, scoring each block by the mean of its hours with the same rules as rate_activity_conditions. A candidate counts only when all three consecutive hours carry every required Factor; a gap disqualifies rather than bridges, and disqualified hours are reported under skippedHours instead of being ranked. Returns every evaluated candidate sorted by score, the hours that could not be evaluated and why, and best: null with a reason when no 3-hour stretch qualifies.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"latitude": "<latitude>",
"longitude": "<longitude>",
"date": "<date>",
"activity": "<activity>"
},
"name": "find_best_activity_window"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| date | Yes | Day to evaluate, in the beach's local calendar. Today through today+6. | |
| window | No | Local time window to evaluate, e.g. {"start":"09:00","end":"13:00"}. Omitted → 07:00–19:00. | |
| activity | Yes | What the person plans to do. | |
| latitude | Yes | Beach latitude in decimal degrees (WGS84). | |
| longitude | Yes | Beach longitude in decimal degrees (WGS84). | |
| skillLevel | No | Surfer experience. Required when activity is "surfing"; ignored for beach_day. |