Inspiration

In a Lagos house the living room is the operating system. Mama is in the kitchen. Baba is on the veranda and nobody has heard from him since morning tea. Tunde is still on Victoria Island. Sade is at lesson. The light bill is due. DSTV decides whether match night happens. The family WhatsApp group is already a mess of voice notes, receipts, and “has anyone spoken to Daddy?”

None of that belongs in a dashboard. Elders do not open apps. The people who pay the bills are not in the room. The screen that is in the room is the television.

Hearth started from that gap: a household steward that lives on Alexa+ in the living room, keeps one shared picture of the house, and talks like a person who actually lives there.

What it does

Hearth is a household operating layer for multi-generational homes. On Alexa+ you speak. On the Fire TV-style family board you see.

Ask it:

  • “Has Baba checked in today?”
  • “What’s left on the light bill?”
  • “Mark DSTV as paid by Tunde”
  • “Put tonight’s match on”
  • “Tell Mama I’m on my way”

It answers in warm, specific Nigerian English, then updates the board: presence, elder check-ins, naira amounts, who paid, whether the qualifier is on. One house. One state. Voice and the 10-foot screen stay in sync.

Under the overlay is a self-hosted MCP server (spec 2025-11-25, Streamable HTTP) with real tools and resources ; not a mocked skill.

Tools

  • get_household_status
  • get_people
  • get_bills
  • record_checkin
  • set_presence
  • pay_bill
  • set_tonight
  • add_note
  • add_reminder

Resources

  • hearth://household
  • hearth://people
  • hearth://bills
  • hearth://tonight

The demo house is the Adeyemis in Surulere: Tunde still at work, Mama with jollof on, Baba 13 hours past check-in, Sade at lesson, Ikeja Electric ₦42,800 unpaid, DSTV Compact hanging over Super Eagles at 8pm.

How we built it

One isomorphic tools layer. The Alexa+ overlay, the family board, and the MCP endpoint all call the same executeTool functions. If voice and MCP ever disagreed, the product would be a lie.

  • Alexa+ agent. Short system prompt, tool calling, two-round cap. Calm voice, naira, no invented people or bills. After a mutation it confirms what changed on the board.
  • MCP server. JSON-RPC 2.0 over Streamable HTTP: initialize, tools/list, tools/call, resources/list, resources/read. Protocol version 2025-11-25. Discoverable at /api/mcp.
  • Family board. 10-foot TV layout: hero for the thing that needs a human (usually Baba), people tiles, bills in naira, tonight. D-pad spatial navigation, large type, high-contrast focus rings.
  • Local intent fallback. If the model is slow or down, the same tools still check Baba in, pay DSTV, or put the match on. The board never waits on a spinner to be useful.
  • Stack. TanStack Start, Zustand, TypeScript end to end.

The design rule: the living room, not a dashboard. Glanceable from the sofa. One action per tile.

Challenges we ran into

MCP is the product, not a wrapper. Stage 1 for Alexa+ is a real self-hosted server. That meant spec-correct JSON-RPC, session headers, tools and resources, and a public endpoint a developer portal can actually call — not a UI that pretends to be Alexa.

10-foot UX vs a phone. What looks fine on a laptop wraps on a TV and vanishes from the sofa. Naira amounts wrapping, the Ask Hearth dock covering Tonight, and tiny focus states all had to be designed for D-pad distance, not a mouse.

Voice that must mutate state. A pretty transcript is a demo. A check-in that clears the hero, or a paid DSTV that unlocks match night, is the product. That forced one tools layer and a fallback so the house still moves when the model does not.

Latency. Household questions feel broken if they hang. We capped tool rounds, timed out the agent, and let local intent finish the utterance so Alexa+ still sounds present.

Accomplishments that we're proud of

  • A working MCP server Alexa+ can actually talk to, with tools and household resources.
  • Voice and the board sharing one household state. Say “Baba checked in” and the hero changes.
  • A 10-foot living-room UI that reads from across the room, not a dashboard squeezed onto a TV.
  • A Lagos-specific house (naira, NEPA, DSTV, Super Eagles, Surulere) that judges can demo in under two minutes.
  • An agent that stays useful offline: local intent still runs the same tools.

## What we learned

The Amazon Alexa+ bet is MCP, not a custom NLU stack. If the tools are honest, the living-room experience is a client. If the tools are fake, nothing else matters.

Elders will not learn an app. The interface that wins in a multi-generational house is voice plus the screen already on the wall.

“Household OS” is a state machine: people, bills, tonight, reminders. Keep that small and every utterance has somewhere true to land.

Warm Nigerian English is a product requirement. Stiff assistant-speak does not belong in this living room.

What's next for Hearth

  • Host the MCP server on AWS and run the steward on Amazon Bedrock and AgentCore, which is the path the Alexa+ track is built for.
  • A real Alexa+ skill in the developer portal, pointed at the same tools. No second brain.
  • Elder check-in as a one-tap living-room action, then optional Ring presence later. Not a camera product pretending to be a house.
  • Shared bills that can talk to a real payment rail, still confirmed on the board before anyone is charged.
  • More than one house. The Adeyemis are the demo. The steward should fit any multi-generational home that already gathers around a TV.

Built With

Share this project:

Updates

Submission history