Register your CDS Hooks service endpoint in the EHR's CDS Hooks discovery document; implement at minimum the 'order-sign' hook and optionally 'order-select', 'encounter-start', and 'appointment-book' hooks as defined in the CRD IG
When the EHR fires a hook, receive the JSON CDS Hooks request: extract the context (draftOrders Bundle, patient ID, encounter ID) and the prefetch data (Coverage, Patient, Encounter resources) from the request body
Query the payer's CRD service (or proxy your own service to it) using the coverage and order details; the payer CRD service evaluates rules and returns CDS Cards
Return CDS Hooks response cards: an 'information' card for documentation requirements, a 'warning' card for items requiring prior auth with a SMART app launch link for the DTR flow, or an 'critical' card if the service is not covered
If a prior auth is required, include a 'suggestion' action that adds a Task resource to the EHR referencing the authorization requirement, and a 'link' to the DTR SMART app for questionnaire prefill
Log all hook invocations and responses for audit; CRD responses must be returned within a latency threshold acceptable to the EHR (typically under 5 seconds) or the EHR will timeout and ignore the cards
Known gotchas
CRD hook responses are advisory — the EHR is not required to enforce them; your implementation must handle the case where a clinician proceeds without completing prior auth, and flag the downstream 837 claim for manual review
Prefetch data provided by the EHR may be incomplete or stale; your CRD service should validate that the Coverage resource contains current enrollment data and fall back to a direct query if needed
Each payer publishes its own CRD endpoint; a multi-payer implementation requires routing hook requests to the correct payer CRD service based on the patient's active Coverage resource
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp