{"ok":true,"site":{"host":"highwater-six.vercel.app","url":"https://highwater-six.vercel.app/","type":"live","desc":"A live map of who needs help and who can give it during a flood. Coordinators drag pins and set urgency; the dispatch agent logs, matches and broadcasts through WebMCP tools on the same board.","tools":[{"name":"get_situation","kind":"answer","impl":"imperative","description":"Read the whole board: stats, every request (who, need, people, urgency 1-5, status, matched volunteer, location) sorted open-and-urgent first, every volunteer offer (what they can do, capacity, status, assignments), and recent events. Call this before making changes.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"add_request","kind":"act","impl":"imperative","description":"Log a new request for help from a resident. Give an address or street (e.g. 'Erb St', 'King St', 'Union St') so it can be placed on the map, or lat/lng. Urgency 1 (can wait) to 5 (life safety: medical, rising water with people who can't move).","inputSchema":{"type":"object","properties":{"who":{"type":"string","description":"Household or person, e.g. 'the Chen family'."},"need":{"type":"string","enum":["sandbags","evacuation","pump","food","medical","shelter","childcare","other"],"description":"Kind of help."},"address":{"type":"string"},"lat":{"type":"number"},"lng":{"type":"number"},"people":{"type":"integer","minimum":1},"notes":{"type":"string","description":"Key facts: water level, infants, wheelchairs, medical conditions."},"urgency":{"type":"integer","minimum":1,"maximum":5}},"required":["who","need"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"add_offer","kind":"act","impl":"imperative","description":"Register a volunteer or resource: who they are, what kinds of help they can give, where they are, capacity (e.g. '40 sandbags', 'boat, 4 per trip', 'beds for 40').","inputSchema":{"type":"object","properties":{"who":{"type":"string"},"can":{"type":"array","items":{"type":"string","enum":["sandbags","evacuation","pump","food","medical","shelter","childcare","other"],"description":"Kind of help."}},"address":{"type":"string"},"lat":{"type":"number"},"lng":{"type":"number"},"capacity":{"type":"string"},"notes":{"type":"string"}},"required":["who","can"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"find_volunteers_for","kind":"answer","impl":"imperative","description":"List volunteers who can meet a request's need, nearest first, with distance in km and whether they're free or busy. Use before matching.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"request":{"type":"string","description":"Request id or resident name."},"need":{"type":"string","enum":["sandbags","evacuation","pump","food","medical","shelter","childcare","other"],"description":"Kind of help."}},"required":["request"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"match","kind":"act","impl":"imperative","description":"Assign a volunteer to a request. Draws the dispatch line on the map, marks the request matched and the volunteer busy.","inputSchema":{"type":"object","properties":{"request":{"type":"string"},"volunteer":{"type":"string","description":"Offer id or name."}},"required":["request","volunteer"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"unmatch","kind":"act","impl":"imperative","description":"Release a volunteer from a request (e.g. they got stuck) and put the request back in the open queue.","inputSchema":{"type":"object","properties":{"request":{"type":"string"}},"required":["request"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"update_request","kind":"act","impl":"imperative","description":"Change a request's urgency, status (open, matched, done), notes, people count or need.","inputSchema":{"type":"object","properties":{"request":{"type":"string"},"urgency":{"type":"integer","minimum":1,"maximum":5},"status":{"type":"string","enum":["open","matched","done"]},"notes":{"type":"string"},"people":{"type":"integer"},"need":{"type":"string","enum":["sandbags","evacuation","pump","food","medical","shelter","childcare","other"],"description":"Kind of help."}},"required":["request"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"update_volunteer","kind":"act","impl":"imperative","description":"Change a volunteer's status (available, busy, done), capacity or notes.","inputSchema":{"type":"object","properties":{"volunteer":{"type":"string"},"status":{"type":"string","enum":["available","busy","done"]},"capacity":{"type":"string"},"notes":{"type":"string"}},"required":["volunteer"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"broadcast","kind":"transact","impl":"imperative","description":"Send a message to volunteers (or everyone) and post it to the event feed. Use for urgent unmet needs or safety notices.","inputSchema":{"type":"object","properties":{"message":{"type":"string"},"to":{"type":"string","enum":["volunteers","all"]}},"required":["message"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"focus_map","kind":"act","impl":"imperative","description":"Pan the coordinator's map to a request, a volunteer, or coordinates, so they see what you're talking about.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"request":{"type":"string"},"volunteer":{"type":"string"},"lat":{"type":"number"},"lng":{"type":"number"},"zoom":{"type":"integer","minimum":11,"maximum":17}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"get_stats","kind":"answer","impl":"imperative","description":"Quick numbers: open requests, urgent open, matched, done, people waiting, volunteers available/busy.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"}],"favicon":"/favicons/highwater-six.vercel.app.ico","apiSurface":"spec","category":"Travel & Events","toolCount":11}}