Indonesia sits on the Ring of Fire. Official disaster data exists — but nobody opens a data portal at 6 a.m. Siaga turns BMKG's official feeds into a voice assistant that reasons for you.
Siaga is a self-hosted MCP server (spec 2025-11-25, Streamable HTTP) for the Alexa+ track. It fuses live BMKG TEWS earthquake feeds (3 feeds merged and deduplicated, including official tsunami-potential signal) with Open-Meteo weather, and provides 11 tools: ping, get_current_weather, get_forecast, get_recent_earthquakes, get_weather_warnings, save_location / list_locations / delete_location (persistent SQLite locations), check_trip_safety (cross-source explained 0–100 safety verdict), plan_outdoor_window, and get_morning_briefing (multi-location briefing over saved places). It also exposes resources siaga://earthquakes/latest and siaga://locations/saved, and prompts quake_near_me, morning_briefing, trip_check.
Honest-data policy: Siaga never invents data and never presents a mock as live. The BMKG forecast and warning APIs returned HTTP 403 and the BMKG CAP host disconnects — Siaga says so verbatim in its warnings field, serves weather via Open-Meteo labelled as such in every result, marks derived alerts 'NOT an official BMKG warning', and keeps a tested CAP 1.2 parser ready for when the host answers.
Demo: a self-built web simulator talks to the real server over real MCP (official MCP Python client bridge), plus an MCP Inspector segment proving the live handshake negotiating protocolVersion 2025-11-25, all 11 tools listed, and a live tools/call. No Amazon Developer account, Alexa device, or paid service is required to run it: PYTHONPATH=src python -m siaga serves MCP at http://127.0.0.1:8000/mcp, and the simulator at http://127.0.0.1:8900. Tests: 14 offline tests pass.
Log in or sign up for Devpost to join the conversation.