CMS Quality Payment Program

Submit MIPS and APM performance data, retrieve measures, benchmarks, and scoring previews via the CMS Quality Payment Program API.

CMS Quality Payment Program is a Naftiko capability published by CMS — Centers for Medicare & Medicaid Services, one of 10 capabilities the APIs.io network indexes for this provider. It bundles 4 operations.

The capability includes 3 read-only operations and 1 state-changing operation. Lead operation: List QPP submissions. Can be deployed as a REST endpoint, MCP tool, or Agent Skill via Naftiko.

Tagged areas include CMS, QPP, MIPS, MACRA, and Quality.

Run with Naftiko CMSQPPMIPSMACRAQuality

MCP Tools

cms-qpp-list-submissions

List QPP submissions.

read-only idempotent
cms-qpp-create-submission

Create a QPP submission.

cms-qpp-get-score

Get a QPP score preview.

read-only idempotent
cms-qpp-list-benchmarks

List QPP benchmarks by performance year.

read-only idempotent

Capability Spec

quality-payment-program.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: CMS Quality Payment Program
  description: Submit MIPS and APM performance data, retrieve measures, benchmarks, and scoring previews
    via the CMS Quality Payment Program API.
  tags:
  - CMS
  - QPP
  - MIPS
  - MACRA
  - Quality
  created: '2026-05-25'
  modified: '2026-05-25'
binds:
- namespace: env
  keys:
    QPP_ACCESS_TOKEN: QPP_ACCESS_TOKEN
capability:
  consumes:
  - type: http
    namespace: quality-payment-program
    baseUri: https://qpp.cms.gov/api
    description: CMS QPP submission and scoring surface.
    resources:
    - name: submissions
      path: /submissions
      operations:
      - name: listsubmissions
        method: GET
        description: List QPP submissions for the authenticated entity.
        outputRawFormat: json
        outputParameters:
        - { name: result, type: object, value: $. }
      - name: createsubmission
        method: POST
        description: Create a QPP submission.
        inputParameters:
        - { name: body, in: body, type: object, required: true }
        outputRawFormat: json
        outputParameters:
        - { name: result, type: object, value: $. }
    - name: submission-id
      path: /submissions/{id}
      operations:
      - name: getsubmission
        method: GET
        inputParameters:
        - { name: id, in: path, type: string, required: true }
        outputRawFormat: json
        outputParameters:
        - { name: result, type: object, value: $. }
    - name: measurements
      path: /measurements
      operations:
      - name: createmeasurement
        method: POST
        description: Create a measurement.
        inputParameters:
        - { name: body, in: body, type: object, required: true }
        outputRawFormat: json
        outputParameters:
        - { name: result, type: object, value: $. }
    - name: scoring
      path: /scoring
      operations:
      - name: getscore
        method: GET
        description: Get a QPP score preview.
        inputParameters:
        - { name: submissionId, in: query, type: string }
        outputRawFormat: json
        outputParameters:
        - { name: result, type: object, value: $. }
    - name: benchmarks
      path: /benchmarks
      operations:
      - name: listbenchmarks
        method: GET
        description: List QPP benchmarks by performance year.
        inputParameters:
        - { name: performanceYear, in: query, type: integer }
        outputRawFormat: json
        outputParameters:
        - { name: result, type: object, value: $. }
    authentication:
      type: bearer
      value: '{{env.QPP_ACCESS_TOKEN}}'
      placement: header
  exposes:
  - type: mcp
    namespace: qpp-mcp
    port: 9090
    transport: http
    description: MCP adapter for CMS Quality Payment Program.
    tools:
    - name: cms-qpp-list-submissions
      description: List QPP submissions.
      hints: { readOnly: true, destructive: false, idempotent: true }
      call: quality-payment-program.listsubmissions
      outputParameters: [ { type: object, mapping: $. } ]
    - name: cms-qpp-create-submission
      description: Create a QPP submission.
      hints: { readOnly: false, destructive: false, idempotent: false }
      call: quality-payment-program.createsubmission
      outputParameters: [ { type: object, mapping: $. } ]
    - name: cms-qpp-get-score
      description: Get a QPP score preview.
      hints: { readOnly: true, destructive: false, idempotent: true }
      call: quality-payment-program.getscore
      outputParameters: [ { type: object, mapping: $. } ]
    - name: cms-qpp-list-benchmarks
      description: List QPP benchmarks by performance year.
      hints: { readOnly: true, destructive: false, idempotent: true }
      call: quality-payment-program.listbenchmarks
      outputParameters: [ { type: object, mapping: $. } ]