Inspiration
Babyproofing is usually done once, before the baby arrives. But the risks at home change with every new move a baby learns: a dresser that was harmless next to a crawler can tip onto a baby who pulls up on it. At the same time, families furnish nurseries with hand-me-downs, and recalled products keep circulating long after the recall. A literature review prepared for the U.S. Consumer Product Safety Commission (CPSC) cites a 1999 CPSC study in which 69 percent of thrift, consignment and resale stores sold at least one product that was banned, recalled, or did not meet current voluntary safety standards. The same review points out why recall letters miss people: notices go to the address given at purchase, yet 54 percent of households with children move within three years (census figures cited by NHTSA). Source: Recall Effectiveness Research, prepared for the CPSC, July 2003
A voice assistant on the kitchen counter already hears "my sister gave us her old high chair" and "she pulled herself up today." We wanted it to act on those moments.
What it does
Home Ahead is an Alexa+ add-on, shown as a simulated Alexa+ experience on an Echo Show-style screen, backed by a self-hosted MCP server. It keeps a small model of the home (rooms, items, where each came from) and of the child's stage, and it:
- Checks hand-me-downs on the spot. "My sister gave us her old high chair. The label says TB-HC6900." It matches the model number against real CPSC recall notices and says plainly whether to use it, fix it first, or stop using it, with the remedy on a card.
- Re-checks the home when the baby changes. "She pulled herself up on the couch today!" The child moves to the pulling up and cruising stage, the room-by-room plan updates (strap the TV, anchor the dresser, get blind cords out of reach), and every rule cites its government source.
- Gets the supplies, with your OK. It fills a cart from a demo store and orders only after you say yes. Confirming twice never orders twice.
- Speaks up first. When a newly published recall matches something in the home, the screen shows an alert without being asked. "What should I do?" gets an answer about your dresser: whether it is anchored yet, the free remedy, and how to contact the company.
- Remembers across days and weeks: the household, the plan, the order, calendar slots ("Saturday morning"), and remedy requests with a follow-up reminder.
How we built it
- MCP server (TypeScript, MCP SDK v2) over Streamable HTTP, negotiating protocol version 2025-11-25: 9 intent-level tools (one voice turn needs one call), 2 resources (
home://alertsis subscribable and pushesnotifications/resources/updated), session limits, and JSON-RPC errors for malformed requests. Any MCP client can connect to it. - MCP Apps: three views (recall card, safety plan, cart) served as
ui://resources and hosted in sandboxed iframes through the ext-apps AppBridge, each under the Content-Security-Policy it declares. Buttons inside a view call tools back through the host. - Agent: a Strands Agents (TypeScript SDK) agent with an MCP client pointed at our server, running Claude Opus 5.5 through the Anthropic API: adaptive thinking at low effort, prompt caching, and an append-only conversation so Claude's earlier thinking stays valid. A deterministic planner calls the same MCP tools when there is no key, and quietly takes over a turn if the model declines, fails, or has not called a tool within 20 seconds, so a voice turn never hangs.
- Real recall data: a snapshot of 280 CPSC notices ships in the repo for offline runs; online mode refreshes from the CPSC Recalls REST API every 6 hours. Matches are graded confirmed / likely / possible, and Home Ahead asks for the model number instead of raising a false alarm.
- Designed for the device, following the Alexa+ add-on design guide: one title, one or two supporting fields and one clear action per card, text readable across the room, short spoken replies with no IDs, URLs or JSON (tests check every tool's spoken line), and a tool-call inspector for developers.
- Tests: 97 unit, protocol and agent tests (vitest, no network), 7 browser tests (Playwright), and an optional live run where Claude must reach the same tool results as the planner across the demo conversation.
Challenges we ran into
- The Alexa+ add-on developer tools are in preview for select partners, so we built our own device simulator from the Layout and Rendering contract (sandboxed iframe, postMessage bridge,
hostContext). - MCP Apps (ext-apps) needs the v2 MCP SDK while the Strands MCP client takes a v1 transport. We run both and pin their interoperability with an integration test.
- Strands passes only a tool's
contentto the model, so a cart token kept instructuredContentwas invisible: in our first live run Claude apologized that it could not place the order. The server now also returns the data as a second text block, as the MCP spec recommends. - An AppBridge connected after the iframe loaded silently missed
ui/initialize, which looked like a CSS height bug.
All seven are written up with steps, severity, workaround and suggestion in our friction log.
Accomplishments that we're proud of
- The same story works with a live model and fully offline:
npm install && npm run demoneeds no account or key. - Every safety rule cites a government source, and a test checks each recall quote word for word against the CPSC data.
- The proactive alert is real protocol, not a timer in the UI: the server publishes a resource update and the device reacts.
- In the live-model video, every reply is what Claude said during the recording, with the tool calls visible in the inspector.
What we learned
- Intent-level tools that return a short spoken sentence plus structured data for the screen make voice turns fast and keep the model's replies grounded.
- With thinking models, keep the system prompt fixed and put per-turn context (date, new alerts) in the user turn; it keeps the cache warm and the conversation valid.
- A fallback path is a design feature for voice: a slow answer is worse than a simple correct one.
What's next for Home Ahead
- Read the model number from a photo of the label on Echo Show devices with a camera.
- More developmental stages and rules, each added only with a cited source.
- Recall sources beyond CPSC (for example NHTSA for car seats) and a shared household so both parents see the same plan.
- Run it as a real Alexa+ add-on once the add-on tools open up.
Videos
- Demo video (above): recorded with Claude Opus 5.5 through the Strands agent. Every reply is what the model said during the recording, and the waits for the model are real; only the user's lines, the narration and the alerts are fixed. The voice-over for the model's replies was generated after recording, and the silent pause after each reply was trimmed.
- Full scripted demo with the offline planner (includes the crib, the calendar slot and the "we anchored the dresser" turn): https://youtu.be/YZ5wRwIlwLE
Home Ahead is an independent project, not affiliated with or endorsed by Amazon. The Alexa+ screen is a simulation. Safety guidance is general information; always follow the official recall notice.
Built With
- anthropic-api
- claude
- cpsc-recalls-api
- esbuild
- ffmpeg
- kokoro-tts
- mcp-apps
- model-context-protocol
- node.js
- playwright
- strands-agents
- typescript
- vitest
- web-speech-api
Log in or sign up for Devpost to join the conversation.