Inspiration
Millions of older people live alone, and the families who look after them from a distance worry every day. The usual answer is a camera in the kitchen. It works, but it feels like surveillance to the person being watched, and it gives the caregiver a feed to stare at instead of an answer. We wanted the opposite: a companion that tells you the normal day happened, and stays quiet unless it didn't.
What it does
Allswell reads home-activity events (motion, person, doorbell, delivery), learns the person's normal daily rhythm room by room, and checks today against it.
- Quiet by default. On a normal day the answer is simply "All's well".
- Speaks up only on anomalies, with the real time and room: no morning routine by late morning, a doorbell at 3 AM, a delivery left unretrieved, a restless night.
- Ask it on Alexa+. "How was Mum's day?" or "Anything I should know?" When something is off, Allswell offers to check in, and a plain "Yes" does it.
- Never shows video. Ask for the camera and it declines, then tells you what it can say instead.
- A family dashboard with a day-rhythm chart: each room's usual window against today's events.
- Amazon Bedrock writes the daily summary in calm, plain language from the engine's facts.
How it uses Alexa+
Allswell takes both Alexa+ paths:
- A self-hosted MCP server built with the official MCP Python SDK (
mcp==1.30.0), implementing spec 2025-11-25 over Streamable HTTP. It exposes four tools:get_day_status,get_rhythm_timeline,get_anomaliesandcheck_in. Read-only tools carryreadOnlyHintannotations, and the server instructs the assistant to answer only from tool results. - A simulated Alexa+ experience (
/ask), clearly labelled as a simulation, with voice in and out through the browser's Web Speech API. It answers by calling the MCP server through the official MCP client at runtime, and keeps conversation state per session: who you're asking about and any offer waiting for an answer.
The README's "Where the Alexa+ tech runs" table points to the exact files and functions where MCP is served and called.
How we built it
- home-rhythm, a dependency-free Python engine (no ML) that learns each room's typical first and last activity and applies four explainable rules. We published it separately as an MIT-licensed library with 17 tests and CI on Python 3.9 to 3.14.
- A FastAPI app that serves the dashboard, the Alexa+ simulation and the MCP server from one process. All three call the same four functions, so every surface gives the same answer.
- Amazon Bedrock through
boto3InvokeModel(Claude Sonnet 4.5 via the US cross-region inference profile), with a template fallback, caching per day-state, and background warm-up so no screen waits on the model. - A plain HTML, CSS and JavaScript frontend, and a deterministic scenario simulator for the demo.
Challenges we ran into
We started on the Ring track. Getting a Ring API test token needs a Ring account with a US-located device and an active Ring Protection plan, which we couldn't get from India, so we moved to Alexa+ and kept the product. Choosing an MCP SDK release that speaks spec 2025-11-25 took some digging, because the newest release defaults to 2026-07-28. Bedrock model access took a few minutes to settle after it was enabled, which our template fallback absorbed.
Accomplishments that we're proud of
- One set of care tools powers an MCP server, a voice-first Alexa+ experience and a dashboard.
- Privacy is structural: no tool can return media, and the product needs no camera at all.
- The rhythm engine is reusable open source with tests, not glue code.
What we learned
Caregivers don't want more data; they want a calm, specific answer. Small, explainable rules for the decision plus a language model for the wording gave us that, and MCP made the same capability available to any assistant.
What's next
- Live events from a camera-free sensor kit (motion sensors, door and fridge sensors, a smart plug on the kettle), roughly ₹7,000 to ₹12,000 one-time, with the person's consent first.
- Connecting the MCP server to a real Alexa+ device, and proactive announcements when the rhythm breaks.
- Weekday and weekend rhythms, and more than one household.
Try it
Run ./run.sh (macOS/Linux) or run.ps1 (Windows), then open http://127.0.0.1:8000/ask. No keys are needed; the home events in the demo are simulated.
- App: https://github.com/Ali-2123-Lawful/allswell
- Open-source engine: https://github.com/Ali-2123-Lawful/home-rhythm
Built With
- amazon-bedrock
- boto3
- claude
- css3
- fastapi
- github-actions
- html5
- javascript
- mcp
- model-context-protocol
- python
- web-speech-api
Log in or sign up for Devpost to join the conversation.