-
-
App- Chat tab where the user can text or voice chat with Allie powered by Gemini and Elevenlabs API
-
App - Track tab for tracling symptoms manually inaddition to the automatic tracking chat/allie does
-
App - Report is to understand patients progress and trends so they can talk to their care team/show them their symptoms frequency over time
Inspiration
Multiple Sclerosis affects nearly 3 million people worldwide. Someone close to me lives with MS, and I've seen firsthand how exhausting it is—not just the symptoms, but the constant mental load of tracking how you feel, spotting patterns, and explaining it all to doctors.
Most symptom trackers feel like homework. Checkboxes, scales, forms. When you're already battling fatigue or brain fog, adding more effort just to document it becomes another burden.
I wanted to build something that works with MS patients, not against them. A companion that listens naturally and helps people become more self-aware of their patterns—without the friction.
What it does
MS Ally is a voice-first AI companion with four core features:
🎤 Voice-Enabled Chat Patients talk naturally about how they feel. The AI responds with empathy and speaks back via ElevenLabs—critical for those with motor difficulties or fatigue that makes reading hard.
🔍 Grounded Search via MCP
- Ask about the MS community → searches Reddit for real patient experiences
- Ask clinical questions → searches Google for medical resources
- Responses are grounded in real information, not hallucinations
📝 Symptom Tracker Log mood, fatigue levels, symptoms, medications, period status, and notes—all in one place.
📊 Analytics Dashboard
- Average mood and fatigue scores over time
- Top symptoms ranked by frequency
- Medication history
- Full log history with 7/14/30/90 day filtering
The goal: turn scattered daily symptoms into visible patterns that empower better self-care and more productive doctor conversations.
How we built it
Frontend: React + TypeScript + Tailwind CSS, deployed on Google Cloud Run
Backend: FastAPI (Python) handling secure API calls to:
- Google Gemini for conversational AI
- ElevenLabs for text-to-speech voice output
MCP Server: Model Context Protocol server on Cloud Run providing:
- Reddit search tool (MS community experiences)
- Google search tool (clinical information)
- BigQuery integration for symptom logging and analytics
Database: BigQuery storing symptom logs, enabling analytics queries
Infrastructure: Three Cloud Run services with service-to-service authentication
Challenges we ran into
Cloud Run service-to-service auth: Getting frontend → backend → MCP server IAM permissions working correctly took significant debugging. Each service needed proper invoker roles.
Voice latency: Balancing ElevenLabs response quality with conversational flow speed required tuning.
Making the AI concise: Early versions were too verbose. Tuning the system prompt to be warm but brief took iteration—patients don't need walls of text when they're tired.
MCP integration: Wiring up the Model Context Protocol tools for Reddit and Google search while keeping responses grounded and relevant.
Accomplishments that I am proud of
- Built a complete voice-enabled app solo that meets the ElevenLabs challenge requirements
- Created something I'd actually want to use for someone I care about
- Successfully deployed a multi-service architecture on Google Cloud (frontend, backend, MCP server)
- Integrated MCP tools for grounded search—responses come from real community data and real sources
- Built a full analytics dashboard that turns raw logs into actionable insights
What I learned
- ElevenLabs API integration for natural voice synthesis
- Model Context Protocol (MCP) for building grounded AI tools
- Google Cloud Run deployment and service-to-service authentication
- Prompt engineering for empathetic, concise healthcare conversations
- Building accessible voice interfaces for users with motor/fatigue challenges
- BigQuery for health analytics and reporting
What's next for forMS Ally- Allie, AI powered ally empowering MS patients
Near-term:
- Intent classification to better understand what users need
- Conversation history with embeddings for pattern recognition
- Trend visualization charts showing symptom patterns over time
- Doctor visit report generation (PDF export)
Long-term:
- Medication reminders with voice confirmations
- Integration with wearables for passive tracking
- Expand beyond MS to other chronic conditions
- Community features connecting patients with similar symptom profiles
The vision: make self-awareness effortless for anyone managing a chronic illness.
Built With
- elevenlabs
- fastapi
- fastmcp
- gemini
- google-ai-studio
- google-bigquery-python
- google-genai
- python
- typescript
Log in or sign up for Devpost to join the conversation.