Inspiration

A disruption rarely affects just one plan. A delayed commute can put a school pickup at risk, while also changing the rest of the evening. We wanted to explore how an assistant could help people see those knock-on effects and make a practical next decision—without taking control away from them.

What Ripple does

Ripple is a voice-friendly recovery-planning demo. Describe a disruption, and Ripple gathers relevant mock-service context, checks which commitments may be affected, and compares recovery options against the user’s deadline, budget, and priority.

In the pickup scenario, the commute is expected at 6:20 PM, after the 6:00 PM deadline. Ripple compares a pre-confirmed backup contact with a simulated ride. The user can prioritize spending less or getting more arrival buffer. For example, the ride costs $18 more but provides 7 additional minutes of buffer. The user can choose either eligible option, review the proposed action, and approve or decline it. Ripple then checks the simulated result.

How we built it

Ripple uses a browser-based interface and a self-hosted Python MCP server over Streamable HTTP, using MCP protocol version 2025-11-25. The browser discovers the server’s tools and calls them to prepare scenario context, compare pickup options, propose a recovery plan, record the user’s decision, and verify the result.

We kept the planner deterministic so the demo’s recommendations and trade-offs are visible and testable. The app also includes other disruption scenarios, an MCP activity log, mock service availability controls, and recovery options when a simulated provider fails.

Challenges and what we learned

A useful recommendation needs to do more than label one option “best.” It should show which constraints an option satisfies and make the trade-off understandable. We added user-selectable priorities and explanations based on the MCP comparison, while keeping the user free to choose another eligible option.

We also learned that a convincing assistant needs a clear boundary between proposing an action and carrying it out. Ripple requires separate approval for each action and verifies the simulated outcome instead of treating a request as proof of success.

Scope

This is a hackathon simulation. Calendar, travel, messaging, delivery, reservation, and transport data are mock data; the app does not connect to a live Alexa+ account, Echo device, or external service. Pickup verification confirms only the simulated action—not that a child was physically collected.

Built With

Share this project:

Updates

Submission history