Hearth MCP server
Provides the tools an Alexa+ voice assistant can call over MCP, letting the older person record medicines, mood, messages and emergencies by talking, and letting a family member retrieve a caregiver summary.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Hearth MCP serverI took my morning pills"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Hearth
Voice check-ins for the people we look after.
Hearth helps a family keep an eye on an older person who lives on their own, without calling every day and without the older person having to learn anything new. They just talk: "I took my morning pills." "I feel a bit lonely." "I fell." A voice assistant turns that into a few calm actions, and the family member sees a short, honest summary on their phone.
Built for the Alexa+ track of the Build, Ship, Shape: Amazon Developer Hackathon.
What is in the box
Piece | What it is |
Hearth MCP server | A real, self-hosted MCP server over Streamable HTTP at |
Voice-assistant simulator | A web page that plays the part of the assistant: you talk (or type), it picks tools and calls the MCP server over MCP, then speaks the answer. A panel shows every tool call as it happens. |
Caregiver dashboard | A phone-sized view of what the family member would see: a one-line headline, anything that needs attention, today's doses, mood, a 7-day chart and messages. It reads its data through the same MCP tools. |
Rose talks ──► voice assistant ──MCP (Streamable HTTP)──► Hearth MCP server ──► SQLite
(living room) (simulated here; /mcp 11 tools │
Alexa+ in real life) │
▼
Priya's phone ◄──── get_caregiver_summary ◄──┘Related MCP server: Hearth v2
Run it
You need Python 3.10 or newer and an internet connection for the first start.
Windows: double-click
start.batMac / Linux: run
./start.sh
The first start sets itself up (about a minute). Your browser opens at http://127.0.0.1:8765/. Use Chrome for the microphone; any browser works if you type instead.
Prefer the command line?
python -m venv .venv && source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -r requirements.txt
python -m hearth.serverSettings (all optional, environment variables): HEARTH_PORT (8765), HEARTH_TZ (Asia/Kolkata),
HEARTH_EMERGENCY_NUMBER (shown in safety messages, for example 112 or 911), HEARTH_DB.
Try it
Use the Demo time menu (top right) to jump to 8:20 AM, then tap the lamp and say, or tap a phrase:
"Good morning" starts the daily check-in.
"I took my morning pills" makes two real tool calls and updates the phone.
"I took my vitamin D" is refused politely, because it is not time yet.
"I feel a bit lonely" is logged, and the assistant offers to tell Priya. Say "yes".
"Can I take two metformin?" is not answered. It points to a pharmacist or doctor and offers to tell Priya.
"I fell" alerts Priya at once and tells Rose to call the local emergency number.
Switch the demo time to 1:10 PM to see the morning doses shown as not confirmed on the phone.
The tools
Tool | What it does |
| Greeting, today's medicine summary, and whether to ask how they feel |
| Every dose today: taken, due, upcoming or not confirmed |
| What is due now or next, plus earlier doses nobody has confirmed |
| Records a dose (tolerates rough spelling; refuses doses that are not due) |
| Records a 1 to 5 mood with the person's own words; flags worrying words |
| Sends a short message to the caregiver |
| Urgent alert; also returns an instruction to call local emergency services |
| Headline, flags, today's doses, mood, messages and a daily history |
| Setup |
Designed to be safe
Elder care is not a place to be clever, so a few rules are built in and covered by tests:
No medical advice. Questions about doubling, skipping or forgetting a dose are never answered. The assistant points to a pharmacist or doctor and offers to tell the caregiver.
"Not confirmed", never "missed". Hearth cannot know whether a pill was taken, only whether someone said so.
It will not log a dose that is not due, so a mistaken "I took it" cannot hide a real gap.
Emergencies come first. Falls, chest pain, trouble breathing, fainting and sudden confusion alert the caregiver immediately. Hearth always says it cannot call emergency services and tells the person to do so.
Nothing is sent to the caregiver without the person's say-so, except emergencies.
Honest limitations
The assistant in this repo is a simulator that uses simple language patterns, not a language model. It exists so the project runs anywhere, free, with predictable results. The MCP server does not depend on it. We have not tested against a real Alexa+ device or the Alexa+ Preview.
It is a single-household demo with no login. Do not put real health data in it, and do not expose it to the internet as it is.
The data you see is made-up demo data (a person named Rose and her daughter Priya).
Dates and times use
HEARTH_TZ. The Demo time menu fakes the clock for demos only.The page was checked by running its script against the live server in a simulated browser; it has not been checked visually on every device.
Tests
pip install pytest
python -m pytest -q30 tests cover the care logic, and also start the real server and check, over real MCP, that the negotiated protocol
version is 2025-11-25 or later (the SDK negotiates 2026-07-28), that tools list and run, and that the safety
rules above hold.
Project layout
hearth/core.py care logic and storage (no MCP code, easy to test)
hearth/server.py MCP server (Streamable HTTP) + demo web routes
hearth/assistant.py voice-assistant simulator; calls the server over MCP
hearth/static/ the demo page
tests/ unit and end-to-end testsLicense
MIT. See LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
Hosted MCP server for the Healthie EHR & telehealth API: patients, appointments, charting, tasks.
Hosted MCP server for Cliniko — patients, appointments, availability, and invoices for AI agents.
Remote MCP server exposing SMI Aware tools, resources, and skills over Streamable HTTP.
AI Reasoning Cache & Consensus Layer with 11 MCP tools via Streamable HTTP.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables LLMs and MCP clients to interact with patient records, encounters, and practice information through tools for clinical, scheduling, messaging, and administrative workflows.MIT
- AlicenseNot gradedqualityCmaintenanceEnables an older adult to talk with Alexa+ about medicines and daily routine while a caregiver sees a calm, consent-gated dashboard and push alerts only when a genuine pattern (e.g. an unusually late first activity) appears. Includes elicitation-based consent, emergency bypass, resumable SSE streams, and an inline MCP App view.MIT
- AlicenseNot gradedqualityCmaintenanceEnables proactive aging-in-place caregiving over Streamable HTTP MCP by screening speech for early cognitive drift, blocking dangerous medication combinations, de-escalating home-safety anomalies, and dispatching caregiver digests through interactive ui:// MCP App cards. It also exposes caregiving prompts and an Agent Skill manifest as a resource for any MCP client.MIT
- AlicenseNot gradedqualityBmaintenanceExposes standardized MCP tools over SSE and JSON-RPC that let an Alexa+ agent retrieve patient vitals and medication adherence, control Ring doorbells and smart deadbolts, dispatch emergency escalations with SBAR triage notes, and log immutable care events to a cloud ledger. This enables proactive, autonomous health monitoring and emergency response on an Echo Show for elderly people living alone.MIT