Care Relay
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
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: KinSync
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).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
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 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.52 npmMIT
- AlicenseNot gradedqualityCmaintenanceEnables families to coordinate care handoffs by having AI propose transfers while humans approve and recipients accept, preventing silent transfer of responsibility. It enforces authorization, audit trails, and an MCP Apps dashboard for explicit handoff decisions.MIT
- AlicenseNot gradedqualityBmaintenanceEnables a voice assistant to run daily check-ins with family-written questions, record hedged answers honestly rather than as confirmed, reschedule follow-ups until a set time, and email a caregiver when a loop stays open. Includes a status summary, pausable check-ins, and a rendered result card for clients that support MCP Apps.MIT
- AlicenseNot gradedqualityBmaintenanceEnables families to care for an aging parent by voice, handling medication check-ins, appointments, daily summaries, missed-dose escalation, and parent-controlled sharing. Writes are tiered and confirmed by the user through MCP elicitation, and each session exposes only the tools of the caller's role.5 npmMIT