Home
CMS — Centers for Medicare & Medicaid Services
CMS Data at the Point of Care (DPC) Bulk FHIR
CMS Data at the Point of Care (DPC) Bulk FHIR
Manage Practitioner, Patient, and Group attribution rosters in the CMS Data at the Point of Care (DPC) API and initiate bulk FHIR exports for fee-for-service providers.
CMS Data at the Point of Care (DPC) Bulk FHIR 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 5 operations.
The capability includes 1 read-only operation and 4 state-changing operations. Lead operation: Register a Practitioner with the DPC organization . Can be deployed as a REST endpoint, MCP tool, or Agent Skill via Naftiko .
Tagged areas include CMS, Medicare, FHIR, BulkData, and Provider.
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: CMS Data at the Point of Care (DPC) Bulk FHIR
description: Manage Practitioner, Patient, and Group attribution rosters in the CMS Data at the Point of
Care (DPC) API and initiate bulk FHIR exports for fee-for-service providers.
tags:
- CMS
- Medicare
- FHIR
- BulkData
- Provider
- DPC
created: '2026-05-25'
modified: '2026-05-25'
binds:
- namespace: env
keys:
DPC_ACCESS_TOKEN: DPC_ACCESS_TOKEN
capability:
consumes:
- type: http
namespace: dpc-bulk-fhir
baseUri: https://sandbox.dpc.cms.gov/api/v1
description: CMS DPC bulk FHIR surface — attribution + export.
resources:
- name: practitioner
path: /Practitioner
operations:
- name: createpractitioner
method: POST
description: Register a Practitioner with the DPC organization.
inputParameters:
- { name: body, in: body, type: object, required: true }
outputRawFormat: json
outputParameters:
- { name: result, type: object, value: $. }
- name: searchpractitioner
method: GET
description: Search Practitioner resources.
outputRawFormat: json
outputParameters:
- { name: result, type: object, value: $. }
- name: patient
path: /Patient
operations:
- name: createpatient
method: POST
description: Register a Patient with the DPC organization.
inputParameters:
- { name: body, in: body, type: object, required: true }
outputRawFormat: json
outputParameters:
- { name: result, type: object, value: $. }
- name: group
path: /Group
operations:
- name: creategroup
method: POST
description: Create an attribution roster Group with Practitioner + Patient members.
inputParameters:
- { name: body, in: body, type: object, required: true }
outputRawFormat: json
outputParameters:
- { name: result, type: object, value: $. }
- name: group-export
path: /Group/{groupId}/$export
operations:
- name: exportgroup
method: GET
description: Initiate a Group-scoped DPC bulk FHIR export.
inputParameters:
- { name: groupId, in: path, type: string, required: true }
outputRawFormat: json
outputParameters:
- { name: result, type: object, value: $. }
- name: jobs
path: /Jobs/{jobId}
operations:
- name: getjob
method: GET
description: Poll a DPC bulk export job for status.
inputParameters:
- { name: jobId, in: path, type: string, required: true }
outputRawFormat: json
outputParameters:
- { name: result, type: object, value: $. }
authentication:
type: bearer
value: '{{env.DPC_ACCESS_TOKEN}}'
placement: header
exposes:
- type: mcp
namespace: dpc-mcp
port: 9090
transport: http
description: MCP adapter for DPC attribution and bulk export.
tools:
- name: cms-dpc-create-practitioner
description: Register a Practitioner with the DPC organization.
hints: { readOnly: false, destructive: false, idempotent: false }
call: dpc-bulk-fhir.createpractitioner
outputParameters: [ { type: object, mapping: $. } ]
- name: cms-dpc-create-patient
description: Register a Patient with the DPC organization.
hints: { readOnly: false, destructive: false, idempotent: false }
call: dpc-bulk-fhir.createpatient
outputParameters: [ { type: object, mapping: $. } ]
- name: cms-dpc-create-group
description: Create an attribution roster Group.
hints: { readOnly: false, destructive: false, idempotent: false }
call: dpc-bulk-fhir.creategroup
outputParameters: [ { type: object, mapping: $. } ]
- name: cms-dpc-export-group
description: Initiate a Group-scoped DPC bulk export.
hints: { readOnly: false, destructive: false, idempotent: false }
call: dpc-bulk-fhir.exportgroup
outputParameters: [ { type: object, mapping: $. } ]
- name: cms-dpc-get-job
description: Poll a DPC bulk export job for status.
hints: { readOnly: true, destructive: false, idempotent: true }
call: dpc-bulk-fhir.getjob
outputParameters: [ { type: object, mapping: $. } ]