Emergency clinicians lose a large part of every shift to typing EHR notes. AI scribes can help, but a clinician cannot trust a note if they cannot see where each line came from. MediScribe Live has two voice modes that share one patient chart: Bedside Voice Triage (AssemblyAI Voice Agent API). A full-duplex voice agent talks with the patient, handles barge-in, and calls tools while it talks: record_patient_intake, check_drug_interaction and flag_critical_vital. The chart, the ESI acuity score and the alerts update live. The panel shows the real response latency, measured in the browser from the end-of-speech event to the first agent audio. Ambient Scribe (AssemblyAI Realtime STT). Universal-3.5 Pro with domain: medical-v1 and speaker labels transcribes the consultation and separates Doctor and Patient. Source-linked SOAP note (AssemblyAI LLM Gateway). The server numbers every transcript turn. Each SOAP item cites the turns it came from, and the server checks each citation against the real turn text. Wrong citations are fixed or dropped. Items with no source are flagged "NO SOURCE - VERIFY". Nothing is invented: topics not discussed say "Not discussed during encounter", allergies never default to NKDA, and a diagnosis appears only if the clinician said it. Clinician sign-off and FHIR. The note stays a DRAFT until a named clinician signs and acknowledges any unsourced items. Export is an HL7 FHIR R4 Bundle whose Composition moves from preliminary to final with an attester. Security: the API key stays on the server. The browser gets short-lived tokens and connects straight to AssemblyAI over WebSockets. Stack: Next.js 14, React, TypeScript, Tailwind, Web Audio API, AssemblyAI Voice Agent API, Streaming STT v3, LLM Gateway. Deployed on Vercel. Note: this is a hackathon prototype, not a medical device. The drug-interaction list is a small demo set.
Category tags: