CareLoop
Integrates with Alexa+ voice assistant to enable voice-based medication management for aging parents, including adding medications, logging doses, checking what's due, logging symptoms, and generating family summaries. Uses Amazon Bedrock for summary generation and Amazon SNS for alerts.
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., "@CareLoopWhat do I need to take now?"
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.
CareLoop 💊🔁
An Alexa+ MCP server that helps aging parents manage their medicines by voice, and keeps distant family in the loop.
Built for the Build, Ship, Shape: Amazon Developer Hackathon. Track: Alexa+. Mini challenge: AWS Builder (Amazon Bedrock, DynamoDB, Lambda, SNS, EventBridge).
The problem
Millions of older adults live far from their children. Missed tablets, double doses and slowly worsening symptoms often go unnoticed until they become emergencies. Apps with small buttons don't work well for many older people, but talking does, and Alexa is already in their homes.
Related MCP server: CareCompanion
What CareLoop does
Person says | Tool | Alexa replies |
"The doctor gave me Metformin 500 for sugar, twice a day after meals. 30 tablets." |
| "Okay. I've added Metformin 500mg at 9 AM and 9 PM. You have 30 left." |
"What do I need to take now?" |
| "Right now, please take: Amlodipine 5mg, Metformin 500mg (after food)." |
"I took my BP tablet." |
| "Got it. Amlodipine for 8 AM is done. Well done!" |
"I took my BP tablet." (again, by mistake) |
| "You've already taken all of today's Amlodipine. Please don't take another dose unless your doctor told you to…" |
"I'm feeling dizzy." |
| Notes it, and spots that it's the 3rd time this week. |
"I have chest pain." |
| "This could be serious. Please call 112 for emergency help right now…" and alerts family by SMS/email. |
(Family) "How is Amma doing today?" |
| A short, calm update written by Amazon Bedrock. |
Also: refill_alert, adherence_report, list_medications, remove_medication.
Design choices that matter for voice
Spoken schedules, not forms. "twice a day after meals", "morning and night" and "8am and 8:30 pm" all become clock times (
careloop/timeparse.py).Loose names. "my BP tablet", "sugar pill" and misspellings resolve to the right medicine through purpose, nicknames and fuzzy matching.
Safety first. A double-dose guard, emergency warning-sign detection, and no medical advice beyond what the tools state.
Every tool returns a
sayfield written to be read aloud, plus structured data for anything else.Bedrock writes, code decides. All facts (adherence, misses, symptoms, refills) are computed deterministically. Bedrock only turns them into a warm message. If Bedrock is unavailable, a template writes the summary so nothing breaks.
Architecture

MCP server: Python MCP SDK 2.x (
MCPServer), Streamable HTTP at/mcp, protocol2026-07-28(later than the required 2025-11-25). Stateless mode, so it scales horizontally.Storage: DynamoDB single-table design (
pk = USER#id,sk = MED#… | DOSE#… | SYMPTOM#…), or SQLite for local development.Amazon Bedrock (Converse API, default
amazon.nova-lite-v1:0) writes family summaries.AWS Lambda + EventBridge send the nightly summary. Amazon SNS delivers it, along with urgent alerts, by email or SMS.
careloop/
server.py MCP tools + Streamable HTTP app (+ optional bearer auth, /health)
core.py care logic: matching, dose slots, safety checks, adherence
timeparse.py spoken schedule -> clock times
store.py DynamoDB and SQLite backends
summary.py Bedrock family summary (+ template fallback)
notify.py SNS family alerts
daily_job.py Lambda handler for the nightly summary
assistant.py Alexa+ stand-in for the web demo (Bedrock agent or phrase router)
demo_data.py a realistic past week for demos
streamlit_app.py web demo (simulated Alexa+ + family view)
infra/template.yaml AWS SAM: DynamoDB, SNS, Lambda, EventBridge schedule
scripts/ demo conversation client, demo data seeder
tests/ pytest suiteWeb demo (simulated Alexa+ experience)
streamlit_app.py is a browser version of the Alexa+ conversation. Every message goes through a real MCP client session to the CareLoop server, and the right-hand panel shows the family's view. A demo clock lets you jump to the evening to see missed doses and the family update.
streamlit run streamlit_app.pySet BEDROCK_MODEL_ID (plus AWS credentials) and the assistant becomes an Amazon Bedrock tool-use agent that reads the MCP tool list and picks tools itself, the same role Alexa+ plays. Without it, a built-in phrase router is used.
Quick start (local, about 2 minutes)
pip install -e ".[dev]"
python -m pytest -q # 8 tests
python -m careloop.server # MCP server on http://localhost:8000/mcpIn a second terminal:
python scripts/demo_conversation.py # plays a full day over real MCP Streamable HTTPOptional demo history (a week with a recurring symptom and missed doses):
CARELOOP_DB=demo.db python scripts/seed_demo_week.py
CARELOOP_DB=demo.db python -m careloop.serverInspect the tools interactively with the MCP Inspector:
npx @modelcontextprotocol/inspector # choose "Streamable HTTP", URL http://localhost:8000/mcpConfiguration
Variable | Purpose | Default |
| DynamoDB table (uses SQLite if unset) | – |
| SQLite path |
|
| Bedrock model for summaries | template only |
| AWS region |
|
| Family alerts topic | log only |
| How the family refers to the person |
|
| Person's time zone |
|
| Local emergency number |
|
| Require | open |
| Enable DNS-rebinding protection for these hosts | off |
| Pin the clock (demos/tests), e.g. | real time |
Deploying and connecting to Alexa+
See docs/DEPLOY.md.
Disclaimer
CareLoop is a reminder and journaling tool, not a medical device. It does not give medical advice. In an emergency, call your local emergency number.
License
MIT, see LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
The adaptive health-messaging engine for apps and agents. Federally-sourced. Not medical advice.
AI life manager: tasks, home, health, wealth, childcare, pets & more — on your own data.
Physician-reviewed medical opinions and prescriptions for AI agents.
Family calendars, tasks, reminders, and pickup coordination for your AI assistant.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables agentic voice assistants to run daily check-ins for someone living alone, capturing wellbeing, medication, and appointments, while keeping family informed via summaries and escalating when needed.MIT
- AlicenseAqualityBmaintenanceEnables eldercare coordination through medication reminders with safety guardrails, daily voice check-ins with symptom escalation, and a family caregiver dashboard.8MIT
- AlicenseNot gradedqualityBmaintenanceEnables older adults to log medication doses by voice, receive double-dose and safety alerts, record mood check-ins, request help, and exchange family messages, while giving caregivers multilingual AI digests, adherence reports, refill forecasts, and proactive notifications.MIT
- AlicenseNot gradedqualityBmaintenanceEnables voice-driven morning check-ins for older adults living alone through Alexa+, capturing sleep, mood and pain, logging medication doses and appointments, and answering medication questions from official FDA labels. Keeps family members informed with household status updates and automatic alerts when a check-in or dose is missed.5 npmMIT