Care Relay
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., "@Care Relaylog that Mom had dinner and her evening 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.
Care Relay
A shared care log for families, for Alexa+. Care Relay is a self-hosted MCP server (MCP spec 2025-11-25, Streamable HTTP) with an MCP Apps card, plus a simulated Alexa+ web console to try it.
When several people look after one person at home, they need to know what was already done. Care Relay answers "Did anyone give Mom her evening pills?", refuses to log the same dose twice, keeps notes for the next shift, and builds a hand-off when someone leaves.
Alexa+ track, simulated-experience path. This repo does not run on an Alexa+ device. The MCP server is real and works with any MCP client; the Alexa+ side is a simulated web console in
simulator/(rule-based planner, no LLM).Care Relay only records what the family logs. It does not give medical or dosing advice.
Run it
Requires Node.js 20+.
npm install
npm start # MCP: http://127.0.0.1:3333/mcp console: http://127.0.0.1:3333/
node bin/demo-seed.js # optional: sample plan and a day of entries, sent as real MCP tool calls
npm test # 11 tests (unit + end-to-end over Streamable HTTP)Environment variables:
Variable | Default | Purpose |
|
| Listen address |
|
| Where the shared state is saved |
| (real time) | Demo only: start the clock at a fixed local time, e.g. |
| unset | Set to |
Demo video setup: CARE_RELAY_CLOCK=2026-10-20T19:44:00 npm start, then node bin/demo-seed.js http://127.0.0.1:3333/mcp 2026-10-20.
Use it from any MCP client
Point a client that supports Streamable HTTP at http://127.0.0.1:3333/mcp. The server is stateless per request (no session id); all state lives in the data file, so it survives restarts and new sessions.
Related MCP server: Handover
What the server exposes
Kind | Name | What it does |
Tool |
| Replace the daily plan (name, kind, times, slot window, instruction) |
Tool |
| Log a dose, meal, water, symptom, note or appointment. Matches planned items to a time slot. A second entry for the same slot returns |
Tool |
| Every planned slot today: |
Tool |
| Everything since the last hand-off: open/overdue items, flagged notes, what was done, what is next. Records the hand-off. Has a UI card. |
Tool (app-only) |
| Called by the card's "Mark done" button. |
Resource |
| MCP Apps view, |
Resource |
| Current plan and family members (JSON) |
Prompt |
| "I'm starting my shift" -> hand-off for that person |
All tools declare outputSchema and return structuredContent.
The simulated Alexa+ console
simulator/ is a small host that shows the experience end to end:
simulator/agent.jsis a real MCP client (@modelcontextprotocol/sdk,StreamableHTTPClientTransport) that advertises theio.modelcontextprotocol/uiextension. A rule-based planner turns one request into a chain of tool calls (for example "I'm heading out, hand off to Jun" ->shift_handoff; "Mom had dinner and her evening pills" -> twolog_carecalls). It stops the chain and asks the user whenlog_carereturnspossible_duplicate. No LLM key is needed, so the demo is reproducible.simulator/web/is the screen: speaker picker, text or browser speech input, reply, MCP traffic log, and an MCP Apps host bridge that renders the card in a sandboxed iframe (ui/initialize,ui/notifications/tool-input,ui/notifications/tool-result,ui/notifications/size-changed, andtools/callfrom the view).In the demo the speaker is chosen in the console. A real Alexa+ deployment would get the person from the device.
Project layout
server/store.js state, slot matching, duplicate guard, hand-off (pure logic + JSON persistence)
server/mcp.js MCP tools, resources, prompt
server/http.js Streamable HTTP endpoint /mcp + console routes
ui/card.html MCP Apps view (status and hand-off card)
simulator/ simulated Alexa+ agent and web console
bin/start.js entry point
bin/demo-seed.js sample plan and entries via MCP
test/ node:test suitesLimits
Simulated Alexa+ host and rule-based planner; not deployed to an Alexa+ device.
No authentication yet. Run it on localhost or behind HTTPS with auth before sharing.
One household per data file. Times use the server's local time zone.
License
MIT. See LICENSE.
How it was built
Built during the hackathon (started 2026-10-18) with the help of an AI coding agent (Claude).
This server cannot be deployed
Maintenance
Related MCP Connectors
Authenticated MCP for a user's care circle: read CareEvents, list loved ones, inspect workspace.
Hosted MCP server for the Healthie EHR & telehealth API: patients, appointments, charting, tasks.
Track and share care records for babies and plants: feedings, diapers, sleep, and watering.
Read and add to your own health record, kept in your own cloud, and get a health plan from it.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables local-first personal health management with encrypted storage and scoped MCP tools for tracking vitals, medications, activities, emotions, sleep, encounters, and more.Apache 2.0
- AlicenseNot gradedqualityCmaintenanceEnables an agent to log doses, observations, and tasks on a per-person shift-change board, run a deterministic readiness check that cites public drug-label sources, seal a hash-chained handover brief, and replay the audit chain through nine MCP JSON-RPC tools with idempotent mutations.2 npmMIT
- AlicenseNot gradedqualityCmaintenanceEnables families to coordinate caregiving through a self-hosted MCP server, tracking medication doses, daily check-ins, appointments, handoff notes, and family alerts via Alexa+ or any MCP host.15 npmMIT
- 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