Model Context Protocol
Healthcare pricing tools for AI
Connect Claude and other AI assistants to source-labeled hospital pricing, provider directories, procedure code lookups, and reviewed correction workflows through MCP.
Loa Care's MCP server (loacare) is a remote Model Context Protocol server that gives AI assistants like Anthropic's Claude access to U.S. healthcare pricing data sourced from hospital Machine Readable Files (MRFs), public provider identity records, and Loa-reviewed provider corrections. It provides 12 tools for searching medical procedure codes, finding healthcare providers, resolving Loa entity profiles and prices with provenance, explaining source labels, and submitting reviewed entity corrections. All returned data is public healthcare pricing or directory data—no Protected Health Information (PHI) is involved.
12 tools
Search codes, resolve entities, explain price sources, and submit reviewed corrections.
Source-labeled data
Prices identify Published MRF data, Loa Verified Provider Price overlays, and caveats. No PHI.
OAuth 2.1
OAuth is required for tool calls. Linked providers can submit reviewed corrections.
Getting started
Server endpoint
Connect from Claude Desktop
Add the following to your Claude Desktop configuration file:
Authentication
Tool calls require OAuth 2.1. Read-only lookup tools are available after authentication; provider update submissions require linked provider access.
https://www.loacare.com/.well-known/oauth-protected-resourcehttps://eknkfyyjqxuvgdzocccu.supabase.co/auth/v1openid email profileAuthorization: Bearer <token>Rate limits
| Tier | Limit | Tools available |
|---|---|---|
| Authenticated | Monthly limit | Read-only lookup tools |
| Authenticated plus suggestions | Monthly suggestion limit | suggest_procedures |
| Linked provider | Higher monthly limit | All read-only tools plus submit_entity_update_request for linked entities |
Tools
Most tools are read-only and return JSON with provenance. The only mutating tool is submit_entity_update_request, which creates a reviewed correction request for a linked provider entity.
search_cpt_codes
OAuth requiredSearch for medical procedure codes (CPT/HCPCS) by name, description, or code number.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| query | string | Yes | Procedure name, medical term, or CPT code number (e.g. "knee MRI", "99213") |
| specialty | string | No | Filter by medical specialty (e.g. "cardiology") |
| category | string | No | "evaluation_management", "laboratory", "radiology", "surgery", or "preventive" |
| limit | number | No | Max results (default 10, max 25) |
Example
suggest_procedures
OAuth requiredGet advisory procedure suggestions from a natural language description of symptoms or needs.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| query | string | Yes | Natural language description (e.g. "I have a rash on my arm") |
Example
search_providers
OAuth requiredSearch for healthcare providers by name, specialty, or location. Legacy provider lookup may use public NPI data; Loa entity tools use the reviewed runtime layer.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| specialty | string | No | Medical specialty (e.g. "Cardiology") |
| location | object | No | { city, state, zip_code } - any combination |
| name | string | No | Provider name to search for |
| limit | number | No | Max results (default 20, max 50) |
Example
get_pricing_estimate
OAuth requiredGet estimated procedure costs from published hospital price transparency rows and source-labeled Loa data.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| procedure_codes | string[] | Yes | CPT codes to price (e.g. ["99213", "85025"]), max 10 |
| zip_code | string | No | ZIP code for regional pricing (defaults to national average) |
Example
get_market_pricing
OAuth requiredGet market average pricing including cash pay and insurance rates from hospital price transparency files.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| cpt_codes | string[] | Yes | CPT codes to look up (max 10) |
| state | string | No | State for regional pricing (e.g. "CA"). Falls back to national average. |
| zip_code | string | No | ZIP code for location context |
Example
search_hospitals
OAuth requiredSearch for hospitals by location or name. Returns Loa hospital IDs, addresses, and contact details.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| state | string | No | State code (e.g. "CA", "NY") |
| city | string | No | City name |
| zip_code | string | No | ZIP code |
| name | string | No | Hospital name to search for |
| limit | number | No | Max results (default 20, max 50) |
Example
get_hospital_pricing
OAuth requiredGet source-labeled hospital pricing, including Published MRF rates and Loa Verified Provider Price overlays when available.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| hospital_ids | string[] | Yes | Hospital IDs from search_hospitals results (max 10) |
| cpt_codes | string[] | Yes | CPT procedure codes to look up pricing for (max 10) |
Example
search_entities
OAuth requiredSearch Loa runtime hospital and provider entity pages by name, state, or entity type.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| query | string | No | Hospital or provider name |
| entity_type | string | No | "hospital" or "provider" |
| state | string | No | Two-letter state code |
| limit | number | No | Max results (default 20, max 50) |
Example
get_entity_profile
OAuth requiredGet one Loa hospital or provider profile by exact slug or entity_pages.id, including field-level provenance.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| slug_or_id | string | Yes | Exact entity slug or entity_pages.id from search_entities |
| entity_type | string | No | Optional "hospital" or "provider" disambiguation |
Example
get_entity_prices
OAuth requiredReturn source-labeled prices for one Loa hospital or provider entity, including Published MRF Price and Loa Verified Provider Price labels when available.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| slug | string | Yes | Exact Loa entity slug |
| cpt_codes | string[] | No | Optional CPT filter, max 25 |
| limit | number | No | Max prices (default 50, max 100) |
Example
explain_price_sources
OAuth requiredExplain source labels, confidence, caveats, and comparable MRF prices behind prices for one Loa entity.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| slug | string | Yes | Exact Loa entity slug |
| cpt_codes | string[] | No | Optional CPT filter, max 25 |
| limit | number | No | Max prices to inspect (default 50, max 100) |
Example
submit_entity_update_request
Linked provider requiredSubmit a provider or hospital profile or price correction for Loa review. This is the only mutating provider/entity MCP tool.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| entity_page_id | string | No | Loa entity_pages.id for the provider or hospital |
| entity_slug | string | No | Exact Loa entity slug if the id is unavailable |
| submitter_email | string | Yes | Work email for the submitter |
| request_type | string | Yes | price_update, profile_correction, new_listing, remove_listing, or other |
| idempotency_key | string | Yes | Stable retry key, 8 to 200 characters |
| price_items | object[] | No | Optional reviewed price rows |
Example
Data and privacy
All data returned by MCP tools is publicly available healthcare pricing and provider information. Price responses label Published MRF data and Loa Verified Provider Price overlays, and may include a comparable MRF price for reviewed provider submissions. The update-request tool stores only the correction details you submit for Loa review. No Protected Health Information (PHI) is transmitted through the MCP integration.
Loa Care's MCP tools only process the specific query parameters you submit and do not access, collect, or store any conversation context, chat history, or extraneous data from the AI platform.
We collect basic usage analytics (tool name, request duration, success/failure) for rate limiting and service improvement. These analytics are not associated with conversation content.
For full details, see Section 5 of our Privacy Policy. Security vulnerabilities can be reported to security@loacare.com.
Frequently asked questions
What is the Loa Care MCP server?
Loa Care's MCP server is a remote Model Context Protocol integration that lets AI assistants like Claude search medical procedure codes, find healthcare providers, resolve Loa entity profiles, compare source-labeled prices, and submit reviewed corrections.
Where does the pricing data come from?
Pricing data is sourced from hospital Machine Readable Files (MRFs) that U.S. hospitals publish under the federal Hospital Price Transparency Rule, plus Loa-reviewed provider submissions when available. Provider profiles come from public identity records and approved profile corrections. Price tools return provenance and source labels instead of blending submitted and source-file data silently.
Do I need an account to use the MCP tools?
MCP tool calls require an account and OAuth. Most read-only lookup tools work for any authenticated account. The suggest_procedures tool has its own monthly limit, and submit_entity_update_request requires linked provider access.
Does the MCP server access my conversation history?
No. Loa Care's MCP tools only receive the specific query parameters for each tool call (such as a CPT code or ZIP code). The server does not access, collect, or store any conversation context, chat history, or other data from the AI platform.
Is any personal health information (PHI) involved?
No. All data returned by the MCP tools is publicly available healthcare pricing, hospital, and provider directory information. No Protected Health Information is transmitted through the integration.
Which AI platforms are supported?
The server uses the open Model Context Protocol (MCP) standard and works with any compatible client, including Claude Desktop, Claude.ai, and other MCP-enabled AI applications. The server endpoint is https://www.loacare.com/api/mcp.
Troubleshooting
Connection refused or timeout
- Verify the endpoint URL is exactly
https://www.loacare.com/api/mcp - Ensure your client supports Streamable HTTP transport (not legacy SSE-only)
- Check that outbound HTTPS (port 443) is not blocked by a firewall or proxy
401 Unauthorized
- Your OAuth token may have expired — re-authenticate to obtain a fresh token
- Ensure the token is sent in the
Authorization: Bearer <token>header - If using Claude Desktop, remove and re-add the server to trigger a new OAuth flow
429 Too Many Requests
- You've exceeded your rate limit for the current period
- Authenticated accounts are metered by monthly usage and tool-specific limits
- Wait for the limit to reset or upgrade your plan for increased capacity
Tools not appearing in Claude
- In Claude Desktop, restart the app after updating your configuration file
- Confirm the
mcpServersJSON is valid (no trailing commas, correct braces) - On Claude.ai, check that the MCP integration is enabled in your settings
Empty or unexpected results
- Verify the CPT code or search query is valid — use
search_cpt_codesto find correct codes first - For pricing tools, not all entities have data for every procedure. Try a different CPT code, broaden the search area, or submit an update request
- Provider search requires at least one filter (specialty, location, or name)
Still having issues?
Reach out to support@loacare.com with the error message and the tool you were calling. For security concerns, contact security@loacare.com.
Ready to get started?
Create a free account for higher rate limits and access to all tools, including advisory procedure suggestions.