Check Insurance Coverage
Overview
check_insurance_coverage checks whether a patient has active insurance coverage and identifies which benefit plan(s) apply. Call this tool whenever a user asks anything about their insurance, coverage, benefits, copays, deductibles, or what they pay — it establishes which plan they have, whether coverage is currently active, and the coverage period, and this context is required before answering any plan-related question correctly.
Optional Parameters
person_id (string)
- Default:
None - The identifier of the person whose insurance coverage is to be validated.
- If not provided, it is extracted from the caller's access token.
Returns
Returns a CoverageValidationResult with the following fields:
- is_active (boolean) — whether any coverage is confirmed active for this patient.
- status (string) — aggregate validation status: one of
active,no_coverage_found,expired, orunknown. - coverage_state (string) — a combined signal from coverage validation and document availability, used to determine disclaimer behavior: one of
verified,unverified_docs_exist,expired_docs_exist, orno_coverage_no_docs. - coverages (array) — all active Coverage resources found (up to 10), each with:
coverage_id— the FHIR Coverage resource ID.benefit_plan_id— the benefit plan identifier.benefit_plan_name— the benefit plan display name.status— date-derived status for this specific coverage (active,no_coverage_found,expired, orunknown).period_start— coverage effective date.period_end— coverage termination date;Nonemeans ongoing coverage.order— order of this coverage if present (1 = primary, 2 = secondary, etc.).
- warning (string, optional) — a human-readable warning to surface to the user, based on
coverage_state.Nonewhencoverage_stateisverified.
Notes
Routing based on the returned coverage_state:
no_coverage_no_docs: stop here and inform the user that no coverage or documents were found. Do not calllist_available_insurance_docsorsearch_insurance_policy.- Any other value: proceed to
list_available_insurance_docsto identify available policy documents.
no_coverage_no_docs does not imply the patient lacks active coverage — it is also returned whenever a patient has active coverage but no policy documents have been ingested for them. Before telling the user no coverage was found, check is_active/status first, and only report no coverage if those are also negative.
Updated 29 days ago
