EMR documentation
The half of EMR documentation that scribes do not touch
Search for how to automate EMR documentation and every guide points at ambient AI scribes: software that listens to the visit and drafts a note. That solves the talking. It does not solve the typing. Someone still has to put registration, insurance, problem lists, codes, and flowsheet values into Epic or Cerner, field by field, screen by screen. That is the part this page is about.
Direct answer (verified June 17, 2026)
Automating EMR documentation has two layers. An ambient AI scribe turns the visit conversation into a draft note. A desktop automation agent enters the structured data, demographics, insurance, codes, orders, and flowsheet fields, into the EMR itself. Most products only do the first layer; industry write-ups admit scribes do not deeply integrate with the EHR or automate downstream tasks like coding. Mediar does the second layer by driving Epic, Cerner, and other EMRs through the same accessibility APIs screen readers use, so it works even when the EMR exposes no API.
Where the data has to land
A note is text. An EMR record is dozens of discrete, structured fields spread across check-in, insurance verification, the chart, and billing. The work of documentation is moving information from wherever it lives, a scribe note, an intake form, a faxed referral, a PDF, into those fields correctly. Picture it as one pipeline with many sources feeding the same EMR.
From sources to EMR fields
A scribe alone leaves the keyboard work on the desk
The narrative review literature and vendor comparisons are honest about this: ambient scribes reduce the burden of writing the note, but the note still has to be reconciled into the chart and the downstream tasks still happen by hand. Adding an entry agent closes that gap.
Scribe only vs scribe plus entry agent
The note gets written. Everything that turns the note into a complete record is still manual.
- Staff re-key demographics and insurance into the EMR
- Codes and orders entered by hand, screen by screen
- Note often pasted, not mapped to structured fields
- Billing, referrals, and quality reporting untouched
How an agent types into an EMR that has no API
This is the part no scribe guide explains, because it is the hard part. Most large EMRs do not give you a clean API for the screens staff actually use, and a huge share of Epic deployments run inside Citrix, where the usual automation tricks fall apart. The Citrix ICA protocol transports pixels and keystrokes but not the Windows UI Automation tree, so the remote Epic window arrives as one opaque rectangle. Selectors and DOM bindings have nothing to bind to. Here is the sequence Mediar runs instead.
Find the EMR window
Detects whether Epic or Cerner is running natively or inside Citrix by recognizing wfica32.exe, CDViewer, and the Citrix Workspace window classes, then switches modes automatically.
Read the fields
On a native window it queries the real Windows UI Automation tree. Inside Citrix, where the ICA boundary hides that tree, it builds a pseudo accessibility tree from on-device segmentation so workflows written as role:Button name:'Sign Order' still resolve.
Keep PHI on the endpoint
Vision and OCR run locally with self-hosted models (Qwen2-VL, OmniParser), so screenshots of patient data never leave the machine. The agent acts under the clinician's own session and its existing access controls.
Type like a clinician
Epic was built for hotkey-driven work, so the agent prefers keyboard input over mouse coordinates wherever possible. That is dramatically more reliable than clicking pixel positions.
Verify every field
Each action takes a before-and-after screenshot and perceptually diffs them to confirm the field changed the way it should have. If not, retry once, then escalate rather than corrupt the chart.
Self-heal on the next update
Stable screens cache their layout and are only re-read when the visual hash changes, so a template tweak or a moved field does not break the workflow the way a brittle selector would.
The same engine is open source as the Terminator SDK (Rust with TypeScript bindings, MIT licensed) at github.com/mediar-ai/terminator, and there is a deeper write-up of the Citrix case in automating Epic inside Citrix.
What the entry layer is worth
These come from real Mediar healthcare deployments, where patient registration and clinical data entry across Epic, Cerner, eClinicalWorks, Veridigm, and Greenway moved off staff keyboards.
One health system also moved patient-satisfaction scores from the 68th to the 84th percentile on HCAHPS after registration errors and wait times dropped. The point is not the headline number; it is that the savings come from a specific, nameable workflow, the data entry the scribe never touched, not from a vague productivity promise. For the broader picture see the healthcare automation overview.
Bring one EMR workflow your staff still re-keys
Show us a registration, intake, or charting flow on Epic or Cerner and we will demo a watch-once agent driving it on a call.
Automating EMR documentation, answered
Frequently asked questions
What does it actually mean to automate EMR documentation?
It splits into two layers. The first is capturing the encounter and turning it into a draft note, which ambient AI scribes do from the audio of the visit. The second is entering structured data into the EMR itself: patient demographics, insurance, problem lists, codes, orders, and flowsheet fields, often across several screens. The first layer is well covered by scribe products. The second is the part that is still hand-keyed in most clinics, and it is what Mediar automates.
Is Mediar an AI scribe?
No. A scribe listens to the conversation and produces text. Mediar takes structured data, whether it came from a scribe's note, an intake form, a fax, or a PDF, and enters it into the EMR by driving the application the way a person would. The two are complementary: a scribe can hand off its output and Mediar puts it where it belongs in Epic or Cerner.
Does it work with Epic and Cerner, even when they run inside Citrix?
Yes. On a native Windows session Mediar reads the EMR through the Windows UI Automation tree, the same interface screen readers use. Inside Citrix the ICA protocol ships pixels but not that tree, so Mediar detects the Citrix session (wfica32.exe, CDViewer) and builds a pseudo accessibility tree with on-device segmentation, then drives Epic Hyperspace or Hyperdrive keyboard-first using Epic's own hotkeys. It also runs on Cerner, eClinicalWorks, Veridigm, Greenway, and Meditech.
Is patient data safe? What about HIPAA?
Vision and OCR can run fully on-device with self-hosted models (Qwen2-VL, OmniParser), so screenshots of PHI never leave the endpoint. The agent acts under the clinician's existing session, inheriting the same access controls and audit trails the EMR already enforces, and every action is logged. Mediar is SOC 2 Type II certified and HIPAA compliant, and can deploy on-prem or inside your security perimeter.
Do we need our EMR vendor to expose an API or build an integration?
No. That is the whole point of the accessibility-API approach. Mediar reads what the application already exposes to assistive technology and types into it directly, so it works on screens that have no public API at all. There is nothing to wait on from the vendor and no interface contract to maintain.
What happens when the EMR gets an update and the screen changes?
Mediar caches the layout of stable screens and only re-reads a screen when its visual hash changes, so a template tweak or a moved field does not silently break the workflow. Each field write is confirmed with a before-and-after screenshot diff; if the screen did not change the way it should have, the agent retries once and then escalates rather than charging ahead.
How is this different from running UiPath or Power Automate in a clinic?
Traditional RPA binds to selectors or pixel coordinates, which break constantly on EMR screens and especially fail inside Citrix where there is no DOM and no UIA tree to bind to. Mediar learns a workflow by watching it once, then executes through accessibility APIs with a verify-after-act loop, so it self-heals instead of needing a developer every time a label moves. It also bills at runtime ($0.75 per minute) with no per-seat licensing.
What does it cost?
Runtime is billed at $0.75 per minute of workflow execution, with no per-seat licensing. There is a $10,000 turn-key program fee that converts to credits with a bonus, so it functions as prepaid usage. For a clinic re-keying patient intake all day, the math is usually dominated by the staff hours it gives back.
Keep reading
Automating Epic inside Citrix
The ICA boundary hides the accessibility tree. Here is how agents drive Hyperspace and Hyperdrive anyway.
Healthcare automation overview
Patient registration, insurance verification, and EHR data entry across Epic, Cerner, and more.
Why legacy desktop apps have no API
The structural reason the apps your team lives in never got a clean integration surface.
Comments (••)
Leave a comment to see what others are saying.Public and anonymous. No signup.