CDS Hooks moved from spec to default expectation faster than most US health-IT teams predicted. By 2026, payers, decision-support vendors, and clinical-network apps all assume an EMR can answer a CDS Hooks discovery call and return a card at the right point in the clinical workflow. The FHIR server underneath has to make that easy, not difficult.
This list tracks the FHIR servers that handle CDS Hooks integration without forcing your team to write the glue layer from scratch. For more FHIR implementation patterns, the rest of the hub covers the related topics.
For the architectural context first, the complete guide to FHIR servers for US health-system EMRs in 2026 frames how CDS Hooks fits into the broader EMR stack.
Six FHIR Servers That Carry CDS Hooks Well in 2026
Order tracks how often each shows up in active CDS Hooks production deployments in the United States.
- Cerner Millennium FHIR API. The first widely deployed CDS Hooks platform in US hospital settings. Strong card-rendering integration into the native EMR.
- Epic FHIR API. CDS Hooks support extended across the patient-view, order-select, and order-sign hooks, embedded into the most common US inpatient and large-outpatient deployments.
- HAPI FHIR with the open-source CDS Hooks plug-in. The flexible base for teams building their own decision-support integration on open-source infrastructure.
- Aidbox. Commercial FHIR server with a built-in CDS Hooks service registry and request handler, common in US health-tech startups shipping decision-support apps.
- Smile Digital Health. HAPI-based commercial product with managed CDS Hooks infrastructure for teams that want decision-support integration without owning the operational layer.
- Medplum. TypeScript-first FHIR server with a clean CDS Hooks integration pattern, popular in US digital-health startups building lightweight decision-support flows.
What "Built for CDS Hooks" Actually Means
Three behaviors separate a CDS-Hooks-ready FHIR server from one that bolted the spec on:
- Native discovery endpoint that lists active hooks without custom code.
- Synchronous request handling fast enough to fit inside the clinician-facing latency budget, typically under 500ms.
- A clean way to inject card payloads back into the EMR's clinical UI, not just return JSON to a void.
The six above all clear those bars in production. Several other servers technically support CDS Hooks but fail one of the three at scale.
Which Server for Which CDS Hooks Pattern
US hospital deployments that want CDS Hooks as part of the native EMR usually inherit the Cerner or Epic implementation. Greenfield US decision-support startups tend to pick Medplum or Aidbox for the speed of integration. Mid-size US health systems building their own decision-support layer go to HAPI or Smile, depending on whether they want to own the operational story.
For population-scale decision support, Top 4 FHIR servers for population health analytics in 2026 is a better next step. For vendors building ONC-certified products that include CDS Hooks, Top 5 FHIR server stacks for ONC-certified EHR vendors in 2026 covers the certification-aware shortlist.
How to Run a CDS Hooks Pilot
Pick one decision-support service worth integrating, ideally one your clinicians have already asked for. Wire it through the candidate FHIR server's CDS Hooks layer end to end, including the card rendering in the EMR UI. Measure the response time the clinician actually sees, not the synthetic time at the FHIR server. Re-run the test on a Friday afternoon when load is real.
The candidate that returns the right card in the right place within the latency budget is the one to short-list. The one that needs custom Lambda glue or backend caching to clear the bar is the one to drop before procurement.
Sources
- CDS Hooks 2.0 specification - spec, HL7 International, 2024
- CDS Hooks working group page - wiki, HL7 Clinical Decision Support WG, 2024
- CDS Hooks tool reference - webpage, ASTP/ONC eCQI Resource Center, 2024
