Loa Healthcare Pricing
Measured conclusion: Deep-tested. L2 outcome: tools_ok.
Search source-labeled hospital prices, CPT codes, providers, and healthcare cost estimates.
| Author | io.github.aanari |
|---|---|
| Access | remote |
| Publisher key required | No |
| Measured state | Deep-tested |
| L1 liveness | alive |
| L1 latency | 2803 ms |
| Last measured | 2026-10-24 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"Loa Healthcare Pricing": {
"url": "https://www.loacare.com/api/mcp",
"transport": "streamable-http"
}
}
}
Measured tools (12)
search_cpt_codesread-onlyCanonical code-lookup tool for this server. Search Loa's CPT/HCPCS index using exact codes, clinical terms, or consumer phrases. Use this first when the user does not already know the CPT code, before calling pricing tools.
Parameters:
query(required) — string — Concise procedure name, medical term, or candidate CPT code; omit personal narratives and identifiers (e.g. "knee MRI", "blood work", "99213")limit— number — Maximum number of results (default 10, max 25)category— string — Filter by category: "evaluation_management", "laboratory", "radiology", "surgery", "preventive"specialty— string — Filter by medical specialty (e.g. "cardiology", "dermatology")
Hints: read-only yes · destructive no · idempotent yes · open-world no
search_providersread-onlySearch public CMS NPI Registry data for clinicians and healthcare organizations by specialty, name, or location. Use returned provenance to understand the registry source and scope. Use this for provider lookup, not pricing.
Parameters:
name— string — Provider name to search for (e.g. "John Smith")limit— number — Max results (default 20)location— object — Location to search inspecialty— string — Medical specialty (e.g. "Cardiology", "Family Medicine")
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_pricing_estimateread-onlyQuick cash-price ballpark for one or more CPT codes, using the median cash price across hospitals in the state (from zip_code) or nationally. priceRange is the typical range (25th to 75th percentile of hospitals). Codes without enough data return insufficient_data and are listed in missingCodes; the total is null unless every code has data. Never fill gaps with your own estimate. For insurer rates or hospital-specific prices, use get_market_pricing or get_hospital_pricing.
Parameters:
procedure_codes(required) — array — CPT procedure codes to price (e.g. ["99213", "85025"])zip_code— string — ZIP code used to pick the state (omit for national figures)
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_market_pricingread-onlyPreferred benchmark pricing tool. Returns hospital-level market statistics for CPT codes from Loa's published hospital price-transparency data: cash/self-pay prices, list prices (gross charges before discounts), overall insurer-negotiated rates, and rates for the most common insurers. Each hospital counts once. Lead with the median and the p25-p75 range rather than min or max. Figures are statewide or national, never local to a ZIP code. When status is insufficient_data, say Loa doesn't have enough data instead of estimating, and always relay the limitations. Negotiated rates are not out-of-pocket costs.
Parameters:
cpt_codes(required) — array — CPT codes to look up (e.g. ["99213", "93000"])state— string — State for regional pricing (e.g. "CA", "New York"). Unknown states return McpToolInvalidInput. When fewer than 5 hospitals in the state published a price, national figures are returned with a limitation.zip_code— string — ZIP code, used only to pick the state when state is omitted
Hints: read-only yes · destructive no · idempotent yes · open-world no
search_hospitalsread-onlySearch Loa's hospital directory by name or location and return hospital IDs plus address details. Use the returned hospital_ids with get_hospital_pricing to fetch source-labeled Published MRF and reviewed overlay prices.
Parameters:
city— string — City namename— string — Hospital name to search forlimit— number — Max results (default 20)state— string — Two-letter state code or full state name, e.g. "CA" or "New York".zip_code— string — ZIP code
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_hospital_pricingread-onlyHospital-specific pricing tool for source-labeled Loa runtime data. Returns source-labeled Published MRF prices and Loa Verified Provider Price overlays for CPT codes. cash_price is the cash/self-pay price, list_price is the gross charge before discounts (most patients pay less), and insurance_prices are payer-negotiated rates for the named plan, not out-of-pocket costs. Any of these can be null when the hospital did not publish that price. Use this when comparing named hospitals or checking a quoted hospital price against available source rows.
Parameters:
hospital_ids(required) — array — Hospital IDs from search_hospitals resultscpt_codes(required) — array — CPT procedure codes to look up pricing for
Hints: read-only yes · destructive no · idempotent yes · open-world no
compare_local_pricesread-onlyCompare hospitals near a ZIP code for one procedure code, ranked by price (or distance) only. answer gives the lowest cash price in the radius, the lowest rate for the named insurer, a cash-or-insurance verdict, the next question to ask the user, and a Loa search link; lead with it. answer prices are single published prices; an option's price is the middle of a hospital's published prices when it lists several. Without insurer, price is the published cash (self-pay) price. With insurer, price is that insurer's negotiated rate, which is not the patient's out-of-pocket cost. Each option says what the price includes, its source and date, distance in miles, and loa_link for booking or contact. Every priced hospital in the radius is ranked before limit applies. Hospitals with no price for the code are counted in hospitals_without_price; hospitals without a matching cash price or insurer rate are listed last with price null. Get the code from search_cpt_codes first. Do not send member IDs or other personal details.
Parameters:
cpt_code(required) — string — One CPT or HCPCS code, e.g. "73721" for a knee MRIzip_code(required) — string — 5-digit US ZIP code to search aroundsort— string — Order by price (default) or distancelimit— integer — Maximum hospitals to return (default 10, max 20)insurer— string — Insurance company name only, e.g. "Aetna" or "Blue Cross"; no member IDsradius_miles— integer — Search radius in miles (default 25, max 100)deductible_met— string — Whether the user has met this year's deductible; refines answer.verdict
Hints: read-only yes · destructive no · idempotent yes · open-world no
search_entitiesread-onlySearch Loa runtime hospital and provider entity pages by name or state. Use this before get_entity_prices when the user names a hospital or provider but does not know the exact Loa slug.
Parameters:
limit— number — Maximum number of results, default 20, max 50.query— string — Hospital or provider name to search for.state— string — Two-letter state code or full state name, e.g. CA or New York.entity_type— string — Optional filter for hospital or provider entities.
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_entity_pricesread-onlyReturn source-labeled prices for a Loa hospital or provider entity slug using the shared resolver. Use search_entities first if the slug is unknown. Results include provenance and explicit unavailable rows for requested CPT codes with no current price.
Parameters:
slug(required) — string — Exact Loa entity slug from search_entities or a Loa SEO page.limit— number — Maximum number of prices, default 50, max 100.cpt_codes— array — Optional CPT codes to filter. If omitted, returns current indexed prices up to the limit.
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_entity_profileread-onlyReturn one Loa hospital or provider entity profile by exact slug or entity_pages.id. Includes profile-field provenance so agents can distinguish source-file fields from Loa-reviewed overrides.
Parameters:
slug_or_id(required) — string — Exact Loa entity slug or entity_pages.id from search_entities.entity_type— string — Optional disambiguation when slug_or_id is a slug.
Hints: read-only yes · destructive no · idempotent yes · open-world no
explain_price_sourcesread-onlyExplain the source labels, provenance, confidence, and caveats behind Loa prices for one hospital or provider entity. Use this when an agent needs to tell a user why prices are MRF-published, Loa-reviewed, estimated, or unavailable.
Parameters:
slug(required) — string — Exact Loa entity slug from search_entities.limit— number — Maximum number of prices to inspect, default 50, max 100.cpt_codes— array — Optional CPT codes to explain. If omitted, explains current indexed prices.
Hints: read-only yes · destructive no · idempotent yes · open-world no
submit_entity_update_requestSubmit a profile, listing, or price correction for Loa review without requiring a provider portal. This is the only mutating provider/entity tool. It requires OAuth, captures submitter and source evidence, records linked-provider status when available, and never changes public data until Loa approves the request.
Parameters:
submitter_email(required) — string — Work email for the submitting representative.request_type(required) — string — Type of reviewed change being requested.attestation— string — How the submitter is connected to the submitted evidence.entity_slug— string — Exact Loa entity slug if entity_page_id is not available.entity_type— string — Entity kind for the requested update; use unknown only when it cannot be determined.price_items— array — Optional structured price rows proposed for Loa review.source_urls— array — Optional public URLs reviewers can use to verify the submitted change.source_notes— string — Short verification notes, source context, or callback instructions.entity_page_id— string — Loa entity_pages.id for the provider or hospital.submitter_name— string — Name of the person submitting the request.submitter_role— string — Submitter role, such as billing manager or authorized agent.idempotency_key— string — Optional stable retry key. Loa derives one from the payload if omitted.submitter_phone— string — Optional callback phone number for reviewer follow-up.proposed_changes— object — Structured profile or listing fields proposed for Loa review.uploaded_file_url— string — Optional public URL for an uploaded evidence file.submitter_organization— string — Provider, hospital, or agent organization represented by the submitter.
Hints: read-only no · destructive no · idempotent yes · open-world no
Measured by MCPYP probing. Untested fields are omitted, never estimated. Listing is always free; MCPYP never proxies calls or stores user tokens.