numbered
Health system or pharmacy
← Back to Agent Library

Medication Reconciliation Agent

Pulls every medication source into one reconciled list and flags interactions before they reach the patient.

Who it's for
Providers and pharmacy teams at care transitions, like discharge or transfer.
What it replaces
Manual medication reconciliation across multiple source systems.
<div class="hx-demo-box" style="margin-top:40px;border:1px solid #D2D2CA;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 12px 32px -12px rgba(23,25,21,.18)"><div style="background:#F7F7F3;border-bottom:1px solid #D2D2CA;padding:10px 20px;display:flex;align-items:center;gap:10px"><span style="width:11px;height:11px;border-radius:50%;background:#E4E4DE"></span><span style="width:11px;height:11px;border-radius:50%;background:#E4E4DE"></span><span style="width:11px;height:11px;border-radius:50%;background:#E4E4DE"></span><span style="font-size:12px;color:#8B9086;margin-left:6px">emr.local/medrec/discharge</span></div><div style="display:flex;padding:20px 20px 0;gap:14px"><div style="flex:1;background:#FAFAF7;border-radius:8px;padding:12px"><div style="font-size:10px;letter-spacing:0.06em;text-transform:uppercase;color:#8B9086;margin-bottom:8px;font-weight:600">EHR list</div><div style="font-size:12px;line-height:2;color:#171915">Metoprolol 25mg<br/>Warfarin 5mg<br/>Lisinopril 10mg</div></div><div style="flex:1;background:#FAFAF7;border-radius:8px;padding:12px"><div style="font-size:10px;letter-spacing:0.06em;text-transform:uppercase;color:#8B9086;margin-bottom:8px;font-weight:600">Pharmacy fills</div><div style="font-size:12px;line-height:2;color:#171915">Metoprolol 50mg<br/>Warfarin 5mg<br/>Ibuprofen 400mg</div></div><div style="flex:1;background:#FAFAF7;border-radius:8px;padding:12px"><div style="font-size:10px;letter-spacing:0.06em;text-transform:uppercase;color:#8B9086;margin-bottom:8px;font-weight:600">e-Rx feed</div><div style="font-size:12px;line-height:2;color:#171915">Lisinopril 10mg<br/>Atorvastatin 20mg</div></div></div><div style="padding:16px 20px 20px"><sc-if value="{{ isScanning }}"><div style="text-align:center;font-size:14px;color:#8B9086;padding:20px 0;animation:fadeUp .3s ease both">Merging sources and checking for conflicts...</div></sc-if><sc-if value="{{ isDone }}"><div style="display:flex;flex-direction:column;gap:6px;animation:pop .4s ease both"><div style="display:flex;justify-content:space-between;padding:8px 10px;background:#F7DEDC;border-radius:6px;font-size:13px"><span style="color:#8A2E29">Dose conflict</span><span style="font-weight:600;color:#8A2E29">Metoprolol 25mg vs. 50mg</span></div><div style="display:flex;justify-content:space-between;padding:8px 10px;background:#F7DEDC;border-radius:6px;font-size:13px"><span style="color:#8A2E29">Interaction</span><span style="font-weight:600;color:#8A2E29">Warfarin + new Ibuprofen script</span></div><div style="display:flex;justify-content:space-between;padding:8px 10px;background:#EAF6C9;border-radius:6px;font-size:13px"><span style="color:#3E4A1B">Reconciled list</span><span style="font-weight:600;color:#3E4A1B">5 meds, ready to sign</span></div></div></sc-if></div></div>
window.HX_DEMOS=window.HX_DEMOS||{}; window.HX_DEMOS["mr"]=function(Base){ const CYCLE_SEC=7; class Comp_mr extends Base { state={t:0,name:'',email:'',org:'',formSubmitted:false}; componentDidMount(){ this._start=Date.now(); this._iv=setInterval(()=>{ if((Date.now()-this._start)/1000>=CYCLE_SEC){clearInterval(this._iv);return;} const t=((Date.now()-this._start)/1000)%CYCLE_SEC; this.setState({t}); },150); } componentWillUnmount(){clearInterval(this._iv);} onName=(e)=>this.setState({name:e.currentTarget.value}); onEmail=(e)=>this.setState({email:e.currentTarget.value}); onOrg=(e)=>this.setState({org:e.currentTarget.value}); submit=()=>this.setState({formSubmitted:true}); renderVals(){ const t=this.state.t; const scanning=t<3; return {isScanning:scanning,isDone:!scanning, name:this.state.name,onName:this.onName,email:this.state.email,onEmail:this.onEmail,org:this.state.org,onOrg:this.onOrg,submit:this.submit, formOpen:!this.state.formSubmitted,formSubmitted:this.state.formSubmitted,nameSuffix:this.state.name?', '+this.state.name.split(' ')[0]:''}; } } return Comp_mr; };
Reconcile your own lists →
Free to start. No credit card.

How the Medication Reconciliation Agent works

1
Pulls all medication sources
Pulls all medication sources
Gathers medication lists from the EHR, pharmacy, and e-prescribing feeds.
2
Reconciles the lists
Reconciles the lists
Identifies duplications, discontinued medications, and discrepancies across sources.
3
Flags interactions
Flags interactions
Checks the reconciled list for interactions and dosing conflicts.
4
Step label
Presents for review
Gives the clinician a single reconciled list to confirm at the transition point.
5
Step label
30%
fewer adverse drug events at care transitions
3 sources
unified into one reconciled list
100%
of interactions flagged before sign-off

Catch the interaction before discharge.

Start free, we'll reconcile a batch of your real medication lists.

Pulls from pharmacy fill data, not just what's charted
Lives inside the transition workflow you already run
Free for your first unit or department
Starts free
Takes about 30 seconds. No sales deck required.
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.