Skip to main content

Getting Started with the MSSP ACO Pipeline

This guide walks through setting up and running the full pipeline, from downloading raw CMS files to running Tuva analytics and calculating projected savings.

Prerequisites

Before you begin, you will need:

  • CMS Datahub access — Credentials for the ACO Management System (ACOMS) to download your ACO's data files
  • Your ACO ID — The CMS-assigned identifier for your ACO
  • A supported data warehouse — One of: Snowflake, Databricks, BigQuery, Redshift, MotherDuck, or a local DuckDB/Parquet setup
  • Python 3.10+ and uv for running the MSSP Pipeline
  • dbt installed and configured for your data warehouse

Step 1: Go to the CMS Portal and setup API Credentials

Go to the ACO Management System Portal and navigate to the API Credentials tab. Once there, under ACO-MS API Credentials click Create New Credentials, you will need to give the API credential a name (i.e. MSSP Data Pipeline), then select Credential delegate (API) for the API Key access level and Data Hub as the Resource. You will also need to input the IP address of the machine that will be running the MSSP pipeline.

Store the API credentials is a safe location to be used in a later step.

Step 2: Download and Load CMS Data

Next we will need to clone the MSSP Pipeline and configure it's dependencies and credentials. The MSSP pipeline does the heavy lifting by downloading, unpacking the ACO's files from the CMS Datahub and then loads them into your data warehouse.

Clone and configure the MSSP Pipeline

git clone <your-repo-url> mssp_pipeline
cd mssp_pipeline

Install dependencies

Example of installing dependencies, see MSSP Pipeline for more options depending on your cloud provider and warehouse.

# Install with your desired output backend, e.g. Snowflake:
uv sync --extra processing --extra snowflake

Configure API credentials (one-time)

This launches the ACOMS CLI and asks you to save your the ACO-MS API Credentials we acquired earlier.

uv run mssp-download --configure

Edit .env with connection info

Next we need to configure the MSSP Pipeline with information on what ACO ID we will be transmitting data for, and what FILE_STORE and OUTPUT_TYPE to use in the integrations.

ACO_ID = "A1234"          # Your CMS ACO identifier
FILE_STORE = "s3://my/mssp/data/location" # Local directory to store downloaded files

OUTPUT_TYPE = "SNOWFLAKE" # Your data warehouse backend

Next, add configuration for your warehouse connection settings in the same file (e.g., SNOWFLAKE_ACCOUNT, SNOWFLAKE_DATABASE, etc.). See the MSSP Pipeline page for a full list of configurations for the supported data warehouses.

Run the pipeline

# Download files from CMS Datahub Only
uv run mssp-download

# Take already downloaded files and transform and load to your warehouse
uv run mssp-process

# Or run both in sequence
uv run mssp-pipeline

After this step, your warehouse will contain raw CCLF tables, ALR tables, and other MSSP data files.

Step 3: Run the CMS MSSP Connector

The CMS MSSP Connector runs immediately after the pipeline to build source objects and intermediate models for all MSSP report files that are not ALR or CCLF (benchmark expenditures, quality measures, shadow bundles, non-claims payments, and more).

Clone and configure the CMS MSSP Connector

git clone <your-repo-url> cms_mssp_connector
cd mssp_pipeline

Install dependencies

uv sync

Configure

In cms_mssp_connector/dbt_project.yml, update the config to point to the raw MSSP source data:

vars:
input_database: "your_database"
input_schema: "your_mssp_schema"

Run the CMS MSSP Connector

dbt deps
dbt build

This creates staging and intermediate models for all MSSP report files. In addition, the MSSP connector will run the ALR and CCLF connectors to populate the data warehouse with all core and enriched datamarts provided by Tuva.

Step 4: Deploy ACO dashboards

With the Tuva data models available in your data warehouse. We can now deploy the ACO dashboards, please follow the instructions in the CMS ACO Dashboards page as this is a multi-step process, note that these are only available in Power BI.

Pipeline Summary

StepToolInputOutput
1mssp_pipelineCMS DatahubAll raw MSSP tables in warehouse
2cms_mssp_connector (phase 1)Raw MSSP tablesStaging + intermediate MSSP models
3cms_alr_connectorALR tablesenrollment table
4medicare_cclf_connectorCCLF tables + enrollmenteligibility, medical_claim, pharmacy_claim
5Tuva ProjectTuva Input LayerCore Data Model + data marts
6MSSP ACO Power BI DashboardsCore Data Model + data martsPower BI dashboards