✨ Inspiration
While working at Kaiser Permanente and volunteering at Vanderbilt Medical and Williamson County Hospital, I saw a big problem: many people from underrepresented communities aren’t included in clinical trials.
- African American women are 6% of breast cancer trial participants, but have high death rates.
- African American men are twice as likely to get prostate cancer as Asian men, but are only 9% of trial participants.
When trials aren’t diverse, treatments may not work for everyone. We built ClinicalConnect to help change that.
🚀 What It Does
ClinicalConnect is a web app that helps match patients to clinical trials using AI.
- 📝 Patients enter their health info.
- 🔍 Our system finds matching trials using trial data from clinicaltrials.gov.
- ✅ We show why someone qualifies or not, in simple language.
- 🩺 Doctors can also use it to find trials for their patients.
🏗️ How It Works (Tech Architecture)
We used a multi-agent system with Google’s full AI toolchain:
🔁 Agent Flow
- Orchestrator Agent – Coordinates the workflow.
- Trial Fetch Agent – Pulls trial data from clinicaltrials.gov using Google MCP.
- Matching Agent – Uses Google Vertex AI to check if a patient is eligible.
- Explanation Agent – Uses Vertex AI to explain results clearly.
🧠 Tools Used
- Google ADK + A2A – For building and connecting the agents.
- MCP – To fetch and work with trial data.
- Vertex AI – To run our AI models.
- Google document AI - For entity extraction on clinical notes
- Weights & Biases Weave – To track and show how agents work step by step.
💪 Challenges
- Clinical trial rules are hard to understand.
- Matching trial needs with patient data was tricky.
- Making everything fast and easy to use took a lot of work.
- How to build connected agents using Google ADK, A2A, MCP, and Vertex.
- How to use Weave for logging and observability.
Built With
- google-a2a
- googleadk
- googledocumentai
- mcp
- vertex
- weave

Log in or sign up for Devpost to join the conversation.