An AI-native EHR is a records system built so an AI agent can read the chart and act in it directly, through defined tools, with a doctor approving each step. A traditional EHR with an AI scribe bolted on lets that scribe listen to a visit and draft a note. An AI-native EHR extends the same kind of agent access across scheduling, billing, messaging, and follow-up, all through structured actions a doctor reviews before they take effect.
At Eureka, the EHR itself is the agent substrate. Our own MCP server, described in full here, is how any agent, ours or a doctor's own, reaches the record.
The scribe test
Run any "AI-native EHR" claim through one test: does the AI only write text into the chart, or can it act elsewhere in the practice?
A scribe is a dictation tool. It listens to a visit and produces a draft note for the doctor to edit and sign. That's useful, but a scribe stops at the note. It can't look at tomorrow's schedule, send a patient a message, submit a refill, or check whether an invoice cleared.
An AI-native EHR gives an agent that same reach across the rest of the practice: reading appointments and intake forms, drafting patient messages, scheduling visits, proposing refills, and running recall outreach a doctor has configured. When the suggestion comes from Eureka's built-in assistant, it sits as a one-click proposal until the doctor approves it, separate from whatever ends up written in the note; recall outreach and reminders run on their own once set up, since nothing clinical rides on them. A vendor's AI that stops at the note is a scribe. One that can act across scheduling, billing, and messaging is AI-native. Our overview of AI agents for private practice walks through what that looks like day to day.
How do you check an AI-native claim?
"AI-native" has no certification behind it, so the claim is only as good as what a vendor can show you. Five things are worth asking about before you believe it.
| Checklist item | What to ask the vendor |
|---|---|
| Agent API or MCP server | Is there a documented way for an outside agent to read and write data, or only a manual export and a chat window? |
| Read/write separation | Can an agent be registered as read-only, so it physically cannot write anything back? |
| Approval loops | Does a write require a human click, or can the agent execute on its own? |
| Audit trail | Is there a record of what was proposed, what was approved, and when? |
| Structured actions vs. free text | Does the agent call a typed function with fixed parameters, or does it type into the UI like a person would? |
Vendors differ widely on these. athenahealth announced a patient-facing MCP server in March 2026, still in pilot. Elation Health has had Claude embedded in chart summarization since January 2026. Healthie shipped an MCP server called Dev Assist, documented for developers building against its API. SimplePractice has no public API for individual practitioners, no webhooks, and no MCP server: its AI features are a scribe add-on and a beta feature called Care Aide. A fuller comparison is in EHR MCP servers.
How does Eureka implement each item?
Each line of that checklist maps to something specific in our own product, already running in production.
| Checklist item | Eureka's implementation |
|---|---|
| Agent API or MCP server | A first-party MCP server runs at https://api.eureka.md/mcp. It's streamable HTTP with stateless JSON responses, no SSE, no session state, so it works with any MCP client that speaks that transport. Setup is covered in our MCP docs. |
| Read/write separation | About 37 tools span roughly 20 domains: patient, appointment, billing, note, order, message, and others. Each domain ships a read tool and a separate *_action write tool, so a client can register only the read tools and get a genuinely read-only agent. We do this ourselves: our internal message-drafting agent runs on a locked read-only subset, because patient-authored text drives it and that's a prompt-injection boundary worth having. |
| Approval loops | When Eureka's built-in assistant suggests a reschedule, cancellation, or refill, it arrives in the practice's Slack channel as a one-click proposal; the doctor approves or declines. An agent a doctor connects with their own key acts with the doctor's authority, under the client's own tool-approval settings. Reminders and recall outreach run autonomously once configured, because those are administrative, not clinical, decisions. |
| Audit trail | Every proposal and approval sits as a timestamped message in the practice Slack channel, so there's a record of what was suggested and who signed off. On the API side, keys are stored hashed and tracked by last use, so an unused or compromised key can be found and revoked. |
| Structured actions vs. free text | Writes go through typed action tools with fixed parameters, an appointment_action call rather than a model typing into a scheduling screen. Reads use URI-templated resources such as patient://{id} or note://{id}, so what comes back has a defined shape too. |
The same server also works for doctors who want to point Claude directly at their own chart instead of going through our Slack assistant; see Claude for doctors for what that setup involves.
What AI-native doesn't mean
It doesn't mean autopilot medicine. Nothing in an agent substrate should write a diagnosis, choose a medication, or finalize a note without a doctor reviewing it first. The doctor signs every note. What our built-in assistant contributes is a proposal in Slack; acting on it stays a doctor's decision, made with a click.
It doesn't mean reckless defaults, either. Some capabilities are deliberately excluded or made conservative. Prescribing is not exposed through the agent's order tools at all; e-Rx happens only in the app. Scheduling a new appointment through an agent leaves the visit unpaid rather than touching the patient's card, and never messages the patient unless explicitly asked to.
Some things do run without a doctor's click. Reminders and recall outreach execute on their own once a doctor configures them, because they're routine and low-stakes. When our built-in assistant suggests a schedule change or a refill, that still stops for a human click first. Clinicians in Reddit's psychiatry and therapist communities consistently want the administrative work automated and clinical judgment left to them.
If you want to see what that looks like running in an actual practice, start at eureka.md/signup.