Medicare Advantage, Part D, Medicaid
get_plan_hospitals
Get Plan Hospitals·v0.2.0·L2·read-only·MCP + REST·admitted 2026-11-05
Inputs
71 required
Sources
1
Known limits
3
Real answer
2.9scomplete
What it answers
- 1The hospitals in a Medicare Advantage plan's published provider network for 2026 or 2027, by contract or CMS plan id: each hospital (CMS certification number, name, state, health system) with the evidence that it is in network: the hospital's own NPI listed in the directory, or how many of the clinicians CMS records as affiliated with it the plan lists (and the share).
- 2Narrow by hospital state or health system; choose the weakest evidence to return.
- 3Use cases: 'Which hospitals are in H5938's 2027 network?'; 'Is the Cleveland Clinic in this plan?'; 'Which HCA hospitals does H1036 list in Florida?'.
- 4A hospital's own NPI in the directory is strong evidence; many affiliated clinicians listed is good evidence; a few affiliated clinicians is weak and labelled so.
- 5A hospital absent from the list is 'no evidence in the published directory', never 'out of network'.
- 6The publish is pinned by dataset_id.
- 7SOURCE: medicare_silver.ma_network_plan_hospital_v1 (the Data Tracker's directory table x CMS hospital enrollment NPI = CCN x CMS Doctors and Clinicians facility affiliation x the hospital system map).
Inputs (7)
| Name | Type | Required | Default | Accepts |
|---|---|---|---|---|
plan_year | integer | required | 2026 or 2027 (the directory year). 2026 | 2027 | |
cms_plan_id | any | optional | null | CMS plan id H1234-001 or H1234-001-000. |
contract_id | any | optional | null | CMS contract id (H5938). One of contract_id / cms_plan_id. |
limit | any | optional | null | Rows to return (default 50, max 500); summaries are always whole. |
min_evidence | string | optional | "good" | Weakest evidence returned: 'strong' (the hospital's own NPI is in the directory), 'good' (default: strong, or 10+ of its affiliated clinicians and 20%+ of them listed), or 'any' (also hospitals with a few affiliated clinicians listed). strong | good | any |
state | any | optional | null | 2-letter state of the hospital; optional. |
system | any | optional | null | Health system name (contains match, e.g. 'HCA'); optional. |
Call it
# MCP (https://mcp.vladahealth.com/mcp): the tool by name get_plan_hospitals(cms_plan_id="H5938-001", plan_year=2027, limit=5)
curl -X POST https://api.vladahealth.com/v1/tools/get_plan_hospitals \
-H "Authorization: Bearer $VLADA_API_KEY" \
-H "Content-Type: application/json" \
-d '{"cms_plan_id":"H5938-001","plan_year":2027,"limit":5}'
# the schema, no key
curl https://api.vladahealth.com/v1/tools/get_plan_hospitals/schemaA real answer
customer seat, 2026-11-09·over REST·2.9s·status
complete·complete·verbatim{
"value": {
"found": false,
"not_found_reason": "uncovered_contract",
"query": {
"cms_plan_id": "H5938-001-000",
"plan_year": 2027,
"min_evidence": "good",
"limit": 5
},
"dataset_id": "7bceef45cc9e5910e64caa428a1f3e40869f91d149c4e19f08cc55f5e468ba7c",
"rows": [],
"query_ids": [
"1876253c-153b-41a7-8797-7542ef3f504b"
]
},
"unit": "plan_hospitals",
"vintage": null,
"source": {
"dataset": "MA plan networks, 2026 and 2027 (Data Tracker): plan year x CMS plan x NPI x listed location",
"publisher": "vlada",
"catalog_updated_at": "2026-11-02"
},
"caveats": [
"Absence is a claim only for a covered contract, and only 'not listed in the published directory'; a contract with no rows is UNCOVERED (the open-gap list), never 'no network'."
],
"response_hash": "935a2214fad066505c21fd0f46a5048313a21d38ccd0ac8c30b6d47eca291965",
"semantic_version": 1,
"tool_version": "get_plan_hospitals@0.2.0",
"explanation": null,
"status": "complete",
"audience": "customer",
"answer": {
"value_ref": "value",
"unit": "plan_hospitals",
"scope": {
"tool": "get_plan_hospitals",
"filters": {
"cms_plan_id": "H5938-001",
"plan_year": 2027,
"limit": 5,
"min_evidence": "good"
}
}
},
"method": "Computed over the filters shown in this answer's scope, from the sources listed in its evidence. Nothing outside those filters was included. You did not specify min_evidence; good was used.",
"evidence": {
"sources": [
{
"dataset": "MA plan networks, 2026 and 2027 (Data Tracker): plan year x CMS plan x NPI x listed location",
"publisher": "vlada",
"catalog_updated_at": "2026-11-02"
}
],
"response_hash": "935a2214fad066505c21fd0f46a5048313a21d38ccd0ac8c30b6d47eca291965"
},
"defaults_applied": [
{
"param": "min_evidence",
"used": "good",
"reason": "Weakest evidence returned: 'strong' (the hospital's own NPI is in the directory), 'good' (default: strong, or 10+ of its affiliated clinicians and 20%+ of them listed), or 'any' (a"
}
],
"freshness": {
"state": "unknown",
"why": "This tool does not report an edition for its answer, and the door could not derive one from what the answer reads. Treat the result as current to no stated date."
}
}What comes back
| Field | Holds |
|---|---|
status | complete · partial · refused · failed · queued |
value | the shape below |
source · caveats · invariants_applied · response_hash | the public file and vintage; what to know before citing; the rules honoured; replayable |
refusal | code (15), message, recover_with |
{
"$defs": {
"Quality": {
"description": "Row-level quality signal. All flags precomputed at build time\n(stored on the gold mart) and passed through here.",
"properties": {
"is_outlier": {
"default": false,
"title": "Is Outlier",
"type": "boolean"
},
"is_ghost_candidate": {
"default": false,
"title": "Is Ghost Candidate",
"type": "boolean"
},
"n_similar_rates": {
"default": 0,
"title": "N Similar Rates",
"type": "integer"
},
"confidence": {
"default": 1,
"title": "Confidence",
"type": "number"
}
},
"title": "Quality",
"type": "object"
},
"Source": {
"description": "Cell-level provenance. Every served value traces back here.\n\n`snapshot_id` is the Iceberg snapshot the tool read from. Two calls\nat the same snapshot MUST produce byte-identical responses —\nthat's the content-addressed caching guarantee.",
"properties": {
"table": {
"title": "Table",
"type": "string"
},
"rate_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Rate Id"
},
"source_files": {
"items": {
"type": "string"
},
"title": "Source Files",
"type": "array"
},
"snapshot_id": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Snapshot Id"
}
},
"required": [
"table"
],
"title": "Source",
"type": "object"
}
},
"properties": {
"value": {
"default": null,
"title": "Value"
},
"unit": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Unit"
},
"vintage": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Vintage"
},
"source": {
"$ref": "#/$defs/Source"
},
"methodology": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Methodology"
},
"quality": {
"$ref": "#/$defs/Quality"
},
"invariants_applied": {
"items": {
"type": "string"
},
"title": "Invariants Applied",
"type": "array"
},
"caveats": {
"items": {
"type": "string"
},
"title": "Caveats",
"type": "array"
},
"response_hash": {
"default": "",
"title": "Response Hash",
"type": "string"
},
"semantic_version": {
"default": 1,
"title": "Semantic Version",
"type": "integer"
},
"tool_version": {
"default": "unknown",
"title": "Tool Version",
"type": "string"
},
"explanation": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Explanation"
},
"status": {
"default": "complete",
"title": "Status",
"type": "string"
},
"refusal": {
"anyOf": [
{
"additionalProperties": true,
"type": "object"
},
{
"type": "null"
}
],
"default": null,
"title": "Refusal"
},
"failure": {
"anyOf": [
{
"additionalProperties": true,
"type": "object"
},
{
"type": "null"
}
],
"default": null,
"title": "Failure"
},
"as_of": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "As Of"
},
"freshness_state": {
"default": "unknown",
"title": "Freshness State",
"type": "string"
}
},
"title": "PlanHospitalsResponse",
"type": "object"
}Sources
| Kind | Name |
|---|---|
| source | medicare_silver.ma_network_plan_hospital_v1 |
| table | medicare_silver.ma_network_plan_hospital_v1 |
Known limits (3)
- 1Many directories list clinicians and not facilities: a hospital reached only through affiliated clinicians is inferred from CMS's affiliation file (2026-05-29), not printed by the plan.
- 2Affiliation covers hospitals where CMS records clinicians (4,606); a hospital with no affiliated clinicians can appear only by its own NPI.
- 3Coverage follows the directory build (stage 25); an uncovered contract answers no_coverage.
| Admitted with a known defect |
|---|
| Most directories list clinicians, not facilities: strong evidence exists for 113,461 plan-hospital pairs in 2027, the rest is inferred from CMS's clinician affiliation (2026-05-29); absence is never 'out of network'. |
This page as markdown: /docs-md/tools/get_plan_hospitals.md · every page in one file: /llms-full.txt