2027 open enrollment. 3.15M must pick a new plan.

Your county →

Home / Tools / Medicare Advantage, Part D, Medicaid

Medicare Advantage, Part D, MedicaidL2 · v1.2.0 · read-only

get_stars_rollup

Get Stars Rollup

What it answers

MA Star Ratings by parent, product type or state, year over year. For a rating year against the year before: members in rated and unrated contracts, the member-weighted Overall star, the share of members (and of contracts) at 4 stars or more, and members by Overall star. Optionally the weighted measure star for a measure group, like for like.

ARGUMENTS: rating_year (default the newest with Overall stars), compare_year (default rating_year minus 1), group_by (national | parent | product_type | parent_by_product | state | state_by_product), parent (filter: part of the parent organization's name, e.g. 'UnitedHealth'), product_type (filter: nonsnp_hmo | nonsnp_ppo | dsnp_hmo | dsnp_ppo | csnp_hmo | csnp_ppo | isnp | other), state (filter: two-letter code), measure_group (optional: all | part_c | part_d | patient_safety | domain:<CMS domain code, e.g. HD3 or DD4> | source:<CMS data source, e.g. HEDIS, CAHPS, HOS, PDE> | measure:<measure identity key, e.g. c:controlling_blood_pressure>), limit (default 50, largest rated members first).

RETURNS value.rows (one per group), each with members_rated, members_unrated, contracts_rated, contracts_unrated, pct_members_4plus, wtd_avg_star, pct_contracts_4plus, members_by_star, prior (the same fields for compare_year) and change; with measure_group, a measure_group block {measures, contracts, wtd_measure_star, wtd_measure_star_prior, change}. value.summary is the national row for the same filters, with each year's weight month.

RULES THE TOOL ENFORCES: rating year Y is weighted by December of the payment year (Y+1), or the latest month when that December is not published, and says which (the certified house convention); the parent is the enrollment file's parent at the weight month; stand-alone drug plans are out; unrated contracts are counted apart, never as zero stars; product types are the fixed buckets (non-SNP, D-SNP, C-SNP by HMO and PPO; I-SNP; other), never pooled; a star belongs to the contract, so a product type or state row weights the contract's star by its members there; a measure group change compares the same contracts, measures, weights (the rating year's) and members, and leaves out new measures, re-specified measures and the improvement measures. Measure stars are CMS's normalization; raw scores are never averaged across measures.

SOURCE: CMS Part C and D Star Ratings Data Tables and CMS monthly enrollment (contract, plan, SNP and county files).

Inputs

compare_year
integer · optional
group_by
string · optional
default: "national"
limit
integer · optional
measure_group
string · optional
parent
string · optional
product_type
string · optional
rating_year
integer · optional
state
string · optional

Call it

From an agent: connect the Vlada MCP once (one click for Claude, ChatGPT, Cursor, VS Code) and ask in plain English; the agent selects get_stars_rollup when the question fits. From code: the same tool over REST with an API key. The schema endpoint needs no key.

curl -X POST https://api.vladahealth.com/v1/tools/get_stars_rollup \
  -H "Authorization: Bearer $VLADA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
curl https://api.vladahealth.com/v1/tools/get_stars_rollup/schema      # the JSON schema, no auth
# MCP endpoint (Streamable HTTP): https://mcp.vladahealth.com/mcp

What comes back

Typed rows plus provenance on every answer: the public source file, its vintage, the methodology, and a response_hash you can replay. Prove and replay tools turn any number into a re-runnable receipt. A number the data cannot support comes back as “not in the data”, never as zero.

Sources behind it

  • medicare_silver.stars_ratings_summary
  • medicare_silver.stars_contracts
  • medicare_silver.stars_ratings_measure
  • medicare_silver.dim_stars_measures
  • medicare_silver.monthly_contract_enrollment_summary
  • medicare_silver.enrollment_monthly_plan
  • medicare_silver.enrollment_monthly_county
  • medicare_semantic.dim_stars_measure_identity_v7
  • medicare_semantic.vw_snp_data_v3

tables: medicare_silver.stars_ratings_summary · medicare_silver.stars_contracts · medicare_silver.stars_ratings_measure · medicare_silver.dim_stars_measures · medicare_silver.monthly_contract_enrollment_summary · medicare_silver.enrollment_monthly_plan · medicare_silver.enrollment_monthly_county

views: medicare_semantic.dim_stars_measure_identity_v7 · medicare_semantic.vw_snp_data_v3

Known limits

No gaps recorded for this tool. Absence of a recorded gap is not a claim of complete coverage; the answer itself says what it covers.

As of the 2026-10-19 build of the served surface · machine-readable catalog · the live server may run a different version; the schema endpoint above is authoritative for what is deployed.