01How Kartha solves it
A platform you deploy in your own cloud account — AWS, GCP, or Azure — that sits between your application and the EMR. Concretely:
- A small FHIR MCP serverGo, stateless. Four generic tools against any FHIR R4 resource; providers for EPIC, Cerner, OpenEMR, MEDITECH, and GCP Healthcare.
- Two-layer auth, and a routing gateYour app signs a short-lived token per request — every access attributable to a real person. Kartha handles the vendor OAuth. Which EMR a call reaches is signed configuration — no caller input, and no LLM output, can redirect it.
- Guardrails the agent can't route aroundOne enforcement layer on every call: read-only by default, searches bound to the session's patient, time ranges enforced, writes double-locked — drafts only. Bounded action, with the human sign-off built in.
- Token economicsA deterministic summarizer — rules, not an LLM — cuts 65–90% of FHIR's JSON overhead, keeping content and record IDs. Measured on every answer.
- Notes search that stays homeNotes are embedded and searched inside your own infrastructure. Nothing touches ours.
- A TypeScript SDK and runnable agentsSessions, streaming, a versioned API, ten packaged agents, ~fifty clinical workflows as plain markdown a clinician can review — context, never code.
- Batch workflowsThe same agents, run headless across a whole patient cohort as durable jobs in your cloud — registries, quality measures, panel work. The cohort comes from reviewed config, never a model. Agents earn trust where errors are recoverable — the write-lock keeps them there.
- A console that shows its workEvery answer ships its tool trace, guardrail corrections, cost, and token count.
One real agent turn in the console — a cardiovascular-risk assessment against a synthetic patient. All demo data is synthetic; there is no PHI anywhere on this page.
02Every claim, on screen
The Clinical Agent Console ships with the SDK's accelerators. One real agent turn — a clinical-decision-support agent running the cardiovascular-risk skill against a synthetic patient — carries all of it:
- The guardrailed tool trace17 tool calls, 12 FHIR reads — every request, raw response, and guardrail badge sits inspectable under the answer.
- The token meter~69% less chart context than full-chart stuffing, with the turn's exact cost and per-turn breakdown. Measured, not claimed.
- Typed result cardsSkills end in structured cards — risk scores, factor tables, guideline-based recommendations — not walls of prose.
- BYOC, visiblyThe console runs against your MCP server in your cloud. The badge isn't decoration — PHI never leaves your boundary.
All data shown is synthetic — one of the 40 fixture patients that ship with the SDK's offline demo, the same demo you can run with zero credentials before ever touching a real EMR sandbox.
03Three ways in. One secure core.
- Bring your own agentConnect Claude Desktop or your own agent loop straight to the server over stdio or HTTP. Raw FHIR tools, summarizer, notes search — with full two-layer auth and tenancy already underneath.
- Kartha Agent SDKYour UI, your models, your cloud — with the GuardrailExecutor on every call, KMS-signed per-user JWTs, SMART PKCE, skills, sessions, and a versioned /v1 API.
- Kartha Agent AcceleratorsTen running agents, the 50-skill clinical catalog, and the Explorer console. Customize by editing content, not code — and prototype offline against 40 synthetic patients with zero credentials.
- Kartha Clinical AI WorkflowsRun your clinical AI across a whole patient cohort in batch, headless — fan any read-only agent or skill over a panel as durable, throttled jobs (SQS · Lambda · DynamoDB · S3) in your own cloud. The cohort is deterministic code in a reviewed workflow YAML — never a model choice — and every run is read-only, idempotent, and write-once, rolled up into an honest report.
One more property worth naming: the same agent YAML + SKILL.md runs on Anthropic's hosted Claude Managed Agents or on Kartha's self-hosted, PHI-clean runtime. No lock-in, either direction.
04Start with the open source — or become a Kartha design partner
If you're evaluating this, don't start with a sales call. Install LangCare — it's MIT-licensed and it's the same core Kartha runs on. Point Claude Desktop or your own agent at a FHIR sandbox and see what governed EMR access feels like. The SDK also ships an offline demo with forty synthetic patients, so you can run a full agent turn with zero credentials before ever touching a real EMR sandbox.
This is what a governed turn looks like from the wire — the guardrail corrections are part of the output, not a diagram:
A real turn against the offline fixture: the patient-scope and time-window corrections, the −69% context cut, and the cost are all measured, not asserted.
If that experiment goes the way it usually goes, you'll hit the wall I described above — and that's the right time to talk to us. We're looking for design partners right now: a small number of teams we work alongside to build their first agent on the Kartha Clinical Context Platform, with their first EMR tenant live in their own cloud.
05How design partnership works
- 01 / ScopePick one EMR tenant and one workflow — a scribe context feed, a chart-review agent, a discharge checklist.
- 02 / DeployKartha stands up in your AWS or GCP account — your EPIC keys, your boundary. Days, not months.
- 03 / ShipYour agent runs on guardrailed clinical context, with receipts a cloud security team can read.
We're onboarding a small number of clinical-AI builders in 2026 — funded startups and clinician-founders alike. You bring a real workload; we get your first EMR tenant live in your cloud. Email me or book 30 minutes →