Inspiration
Clinical trials run on people-work: phone calls, forms, and re-checking. A day of delay in a trial costs about $40,000 in direct costs (Tufts CSDD, 2024), and much of that delay lives in tasks like these. Coordinators build forms from long protocols, phone candidates one by one, remind patients about visits, and type answers into databases. Then monitors travel to sites to confirm that the database matches the original record.
We also kept thinking about the participants. About one in five Americans over 65 doesn't own a smartphone (Pew), so app-based trial tools leave out the people who may need new treatments most. A phone call reaches almost everyone.
We wanted to give a research coordinator an assistant that builds the study, makes the calls, and keeps a verifiable trail, with a human in charge.
What it does
Clinically Speaking is an AI assistant for clinical trial coordinators, in three parts that follow how a trial runs.
Build. Upload a protocol PDF. In about 15 seconds it produces the study details, a structured data-capture form (CDASH-style fields, units, validation ranges), a visit timeline with windows, and screening and follow-up questionnaires. Researchers can edit or override every step.
Capture. An AI voice agent phones participants for:
- screening calls,
- confirmation and first-visit scheduling,
- scheduled follow-up surveys,
- automatic reminder calls the day before each clinic visit.
Each call becomes a verbatim transcript, and the form fields are filled from it as proposed, reviewable answers. Every answer is saved with the participant's exact quote. A reviewer clicks an answer and the transcript jumps to the moment it was said, so data can be checked remotely instead of by an on-site visit. Nothing is final until a person confirms or corrects it.
Monitor. The agent says it's an AI and asks permission to record. If a participant mentions a symptom or anything concerning, it stops the questionnaire and routes the call to a live escalation queue with the reason and a suggested action.
Recruitment includes an interactive map with live filters over a candidate registry, plus real nearby trials from ClinicalTrials.gov. You can also switch between studies from the header.
How we built it
- App: Next.js 16 with TypeScript and Tailwind, one codebase for the UI and API routes.
- Data: Supabase (Postgres) with Realtime for live transcripts, call status, and the escalation badge.
- AI: Google Gemini for everything that generates or extracts: protocol parsing, form and timeline generation, call scripts, and transcript-to-field extraction. Outputs are validated against typed Zod schemas, so the model can only fill fields that exist.
- Voice: Vapi for outbound phone calls and streaming transcripts.
- Map and data: MapLibre with OpenStreetMap tiles, and the ClinicalTrials.gov API for trial context.
- PDF parsing: unpdf for server-side text extraction.
Challenges we ran into
- The agent sounded robotic. It read the entire official protocol title aloud. We added a short spoken study name.
- We were facing issues getting the raw audio file from Vapi and playing it on our web app, and eventually switched to transcript processing.
Accomplishments that we're proud of
- A working end-to-end flow: protocol PDF → study → candidate ranking → live AI phone call → reviewable data → escalation.
- The review page, with a side-by-side audit trail of the extracted EDC fields linked to the source transcript
- A safety stop that routes any symptom to a human, tested on real calls.
- A UI that anyone can understand quickly
What we learned
- How to work with Vapi and voice agents
- Challenges surrounding clinical trials
- Regulatory protocols related to medical data capture
What's next for Clinically Speaking
- Edit checks and queries: run the form's validation rules on every captured answer and raise a query for the right person, such as an out-of-range value.
- Roles and routing: send safety issues to nurses, reschedules to coordinators, and data questions to data managers.
- A stronger source record: keep the raw call data immutable and hashed, with a full audit trail on every correction.
- Standards export: export SDTM-ready datasets from the CDASH-aligned fields.
- Compliance: HIPAA, 21 CFR Part 11, call-consent capture, and ethics review before any real participants.
- Access: multilingual voice and accessibility testing.
- Integrations: a site's real patient registry, and EDC systems such as REDCap.
- A pilot with a research site.
Built With
- clinicaltrials-gov-api
- gemini
- maplibre
- nextjs
- openstreetmap
- postgresql
- supabase
- tailwindcss
- typescript
- vapi
- zod
Log in or sign up for Devpost to join the conversation.