HIPAA BAA Vendor Assessment
Overview
This skill performs structured Business Associate Agreement (BAA) review for vendors that create, receive, maintain, or transmit ePHI on behalf of a covered entity or business associate. Key regulations:
- 45 CFR §164.502(e): BA may use/disclose ePHI only per BAA or law
- 45 CFR §164.504(e): Required BAA provisions
- 45 CFR §164.308(b)(1): Business associate contracts and other arrangements
LLM and MCP ecosystems introduce non-obvious subprocessors: model hosts, vector DBs, prompt logging, crash reporters, and MCP registry operators. This skill produces a vendor-by-vendor compliance matrix with pass/fail on mandatory BAA clauses—not a substitute for legal counsel.
When to Use
Use this skill when:
- Onboarding an LLM provider (OpenAI, Anthropic, Azure OpenAI, AWS Bedrock) for ePHI-adjacent workloads
- Evaluating cloud infrastructure (AWS, GCP, Azure) for HIPAA workloads
- Assessing MCP server operators or self-hosted MCP with third-party dependencies
- Reviewing observability, logging, or support tools that may capture prompts/responses
- Annual BAA renewal or subprocessor change notification review
- Determining whether a vendor is a Business Associate vs conduit exception
Do not use this skill when:
- Vendor handles only de-identified data with expert determination (confirm de-identification first)
- Pure PCI card processing without ePHI (use PCI skills)
- Technical control testing of encryption (use
hipaa-technical-safeguards)
Core Process
Execute steps in order.
Step 1: Vendor inventory and BA determination
- List all vendors in the ePHI processing chain:
- LLM API provider, cloud host, MCP server host, CDN, email, ticketing, SIEM
- For each vendor, determine status:
- Business Associate: accesses ePHI on behalf of CE/BA → BAA required
- Conduit: transient access only (e.g., TLS VPN pipe)—document narrow exception analysis
- Not in scope: no ePHI access—document exclusion rationale
- Record:
vendor-inventory-{id}.csv with data types, access mode, BAA status.
Step 2: BAA availability verification
- Confirm vendor offers a HIPAA BAA (signed or click-through for cloud).
- Verify BAA covers the specific services in use (e.g., Azure OpenAI vs general Azure—not all SKUs are covered).
- For LLM vendors, confirm:
- Zero data retention / no training on customer data (contractual, not marketing)
- Geographic processing restrictions if required
- Subprocessor list and notification process
- BLOCK production ePHI flows to vendors without executed BAA.
Step 3: Mandatory BAA clause checklist (§164.504(e))
Review executed or draft BAA for each required element:
| §164.504(e) element |
Pass criteria |
| Permitted uses/disclosures |
Limited to BAA, CE instruction, or law |
| Safeguards |
Appropriate safeguards per Security Rule |
| Subcontractors |
BA requires same restrictions via subcontractor agreement |
| Report breaches |
BA reports breaches to CE per §164.410 |
| Access/amendment/accounting |
BA supports individual rights where applicable |
| HHS access |
BA makes internal practices available to HHS |
| Termination |
CE may terminate if BA violates material terms |
| Return/destruction |
ePHI returned or destroyed at termination |
Mark each PASS, FAIL, or NEEDS LEGAL REVIEW.
Step 4: LLM-specific addendum review
For each LLM vendor, verify contractual terms on:
- Input/output logging: what is logged, retention period, who can access
- Model training: explicit prohibition on training/fine-tuning on customer ePHI
- Human review: opt-out of human review of prompts containing ePHI
- Region/data residency: matches organizational policy
- API metadata: request IDs in logs—confirm they cannot reconstruct ePHI alone
- Enterprise vs consumer tier: consumer tiers often lack BAA—FAIL if used for ePHI
Step 5: MCP server operator assessment
For each MCP server processing ePHI:
- Identify operator (self-hosted, vendor-hosted, open-source with cloud telemetry).
- Determine if operator accesses ePHI (tool inputs/outputs, server logs).
- Require BAA or confirm operator is within CE boundary (employee/contractor under CE policies).
- Review MCP dependency chain: npm packages with phone-home, crash analytics.
- Document tool allowlist—MCP operator should not have broader access than BAA permits.
Step 6: Subprocessor cascade
- Obtain vendor subprocessor list (LLM → cloud → CDN → support SaaS).
- Verify flow-down obligations in BAA.
- Flag new subprocessors added since last review.
- Map subprocessors to ePHI exposure (HIGH: prompt storage; LOW: physical datacenter with no logical access).
Step 7: Gap remediation and risk acceptance
- FAIL items: block ePHI until remediated or alternative vendor selected.
- NEEDS LEGAL REVIEW: escalate with clause citation—do not auto-approve.
- Document compensating controls only with legal and privacy officer approval.
- Set BAA renewal calendar (annual minimum; 90-day subprocessor review).
Step 8: Evidence packaging
- Store executed BAAs (redacted signatures if needed), subprocessor lists, assessment matrix.
- SHA-256 hash all documents; link to vendor inventory IDs.
- Produce summary for privacy officer sign-off.
Common Rationalizations
| Excuse the agent might generate |
Required rebuttal |
| "We redact PHI, so no BAA is needed with the LLM vendor." |
Residual ePHI or re-identification risk may remain; vendor role is determined by access capability, not intent. Legal must confirm conduit/de-identified exceptions. |
| "Enterprise API terms say HIPAA—good enough without signed BAA." |
Marketing language ≠ executed BAA with §164.504(e) clauses. |
| "MCP is open source, so there's no vendor." |
Operator of the running instance and its telemetry dependencies may still be a BA. |
| "Subprocessors are the vendor's problem." |
CE/BA retains oversight obligation—subprocessor notification must be monitored. |
| "Consumer ChatGPT Plus works for clinical summaries." |
Consumer products typically lack BAA—automatic FAIL for ePHI. |
| "BAA review can wait until after pilot." |
Pilot with real ePHI is production under HIPAA—BAA must precede ePHI flow. |
Red Flags
- Production ePHI sent to LLM without executed BAA
- Consumer-tier LLM account used for clinical workflows
- Vendor subprocessor added with ePHI access and no notification review
- BAA missing breach notification or termination for cause clauses
- MCP server logs full tool payloads to non-BAA analytics
- "Conduit" exception claimed for vendor that stores prompts
- Verbal vendor assurance substituted for contractual BAA language
Verification
1---2name: hipaa-baa-vendor-assessment3description: Reviews Business Associate Agreements and subprocessors for LLM vendors, cloud providers, and MCP server operators under HIPAA (45 CFR §164.502(e), §164.504(e)). Trigger when onboarding OpenAI/Anthropic/Azure OpenAI, cloud hosts, observability tools, or MCP integrations that may access ePHI. Do not use for technical encryption testing (use hipaa-technical-safeguards) or general vendor SOC reports without BAA focus (use vendor-third-party-risk).4---56# HIPAA BAA Vendor Assessment78## Overview910This skill performs structured **Business Associate Agreement (BAA)** review for vendors that create, receive, maintain, or transmit **ePHI** on behalf of a covered entity or business associate. Key regulations:1112- **45 CFR §164.502(e)**: BA may use/disclose ePHI only per BAA or law13- **45 CFR §164.504(e)**: Required BAA provisions14- **45 CFR §164.308(b)(1)**: Business associate contracts and other arrangements1516LLM and MCP ecosystems introduce non-obvious subprocessors: model hosts, vector DBs, prompt logging, crash reporters, and MCP registry operators. This skill produces a **vendor-by-vendor compliance matrix** with pass/fail on mandatory BAA clauses—not a substitute for legal counsel.1718## When to Use1920Use this skill when:2122- Onboarding an **LLM provider** (OpenAI, Anthropic, Azure OpenAI, AWS Bedrock) for ePHI-adjacent workloads23- Evaluating **cloud infrastructure** (AWS, GCP, Azure) for HIPAA workloads24- Assessing **MCP server** operators or self-hosted MCP with third-party dependencies25- Reviewing **observability, logging, or support tools** that may capture prompts/responses26- Annual **BAA renewal** or subprocessor change notification review27- Determining whether a vendor is a **Business Associate** vs **conduit** exception2829Do **not** use this skill when:3031- Vendor handles only de-identified data with expert determination (confirm de-identification first)32- Pure PCI card processing without ePHI (use PCI skills)33- Technical control testing of encryption (use `hipaa-technical-safeguards`)3435## Core Process3637Execute steps **in order**.3839### Step 1: Vendor inventory and BA determination40411. List all vendors in the ePHI processing chain:42 - LLM API provider, cloud host, MCP server host, CDN, email, ticketing, SIEM432. For each vendor, determine status:44 - **Business Associate**: accesses ePHI on behalf of CE/BA → BAA **required**45 - **Conduit**: transient access only (e.g., TLS VPN pipe)—document narrow exception analysis46 - **Not in scope**: no ePHI access—document exclusion rationale473. Record: `vendor-inventory-{id}.csv` with data types, access mode, BAA status.4849### Step 2: BAA availability verification50511. Confirm vendor offers a **HIPAA BAA** (signed or click-through for cloud).522. Verify BAA covers the **specific services** in use (e.g., Azure OpenAI vs general Azure—not all SKUs are covered).533. For LLM vendors, confirm:54 - **Zero data retention** / no training on customer data (contractual, not marketing)55 - Geographic processing restrictions if required56 - Subprocessor list and notification process574. **BLOCK** production ePHI flows to vendors without executed BAA.5859### Step 3: Mandatory BAA clause checklist (§164.504(e))6061Review executed or draft BAA for each required element:6263| §164.504(e) element | Pass criteria |64| --- | --- |65| Permitted uses/disclosures | Limited to BAA, CE instruction, or law |66| Safeguards | Appropriate safeguards per Security Rule |67| Subcontractors | BA requires same restrictions via subcontractor agreement |68| Report breaches | BA reports breaches to CE per §164.410 |69| Access/amendment/accounting | BA supports individual rights where applicable |70| HHS access | BA makes internal practices available to HHS |71| Termination | CE may terminate if BA violates material terms |72| Return/destruction | ePHI returned or destroyed at termination |7374Mark each **PASS**, **FAIL**, or **NEEDS LEGAL REVIEW**.7576### Step 4: LLM-specific addendum review7778For each LLM vendor, verify contractual terms on:79801. **Input/output logging**: what is logged, retention period, who can access812. **Model training**: explicit prohibition on training/fine-tuning on customer ePHI823. **Human review**: opt-out of human review of prompts containing ePHI834. **Region/data residency**: matches organizational policy845. **API metadata**: request IDs in logs—confirm they cannot reconstruct ePHI alone856. **Enterprise vs consumer tier**: consumer tiers often **lack BAA**—FAIL if used for ePHI8687### Step 5: MCP server operator assessment8889For each MCP server processing ePHI:90911. Identify **operator** (self-hosted, vendor-hosted, open-source with cloud telemetry).922. Determine if operator accesses ePHI (tool inputs/outputs, server logs).933. Require BAA or confirm operator is **within CE boundary** (employee/contractor under CE policies).944. Review MCP dependency chain: npm packages with phone-home, crash analytics.955. Document tool allowlist—MCP operator should not have broader access than BAA permits.9697### Step 6: Subprocessor cascade98991. Obtain vendor **subprocessor list** (LLM → cloud → CDN → support SaaS).1002. Verify flow-down obligations in BAA.1013. Flag new subprocessors added since last review.1024. Map subprocessors to ePHI exposure (HIGH: prompt storage; LOW: physical datacenter with no logical access).103104### Step 7: Gap remediation and risk acceptance1051061. FAIL items: block ePHI until remediated or alternative vendor selected.1072. NEEDS LEGAL REVIEW: escalate with clause citation—do not auto-approve.1083. Document compensating controls only with legal and privacy officer approval.1094. Set BAA renewal calendar (annual minimum; 90-day subprocessor review).110111### Step 8: Evidence packaging1121131. Store executed BAAs (redacted signatures if needed), subprocessor lists, assessment matrix.1142. SHA-256 hash all documents; link to vendor inventory IDs.1153. Produce summary for privacy officer sign-off.116117## Common Rationalizations118119| Excuse the agent might generate | Required rebuttal |120| --- | --- |121| "We redact PHI, so no BAA is needed with the LLM vendor." | Residual ePHI or re-identification risk may remain; **vendor role** is determined by access capability, not intent. Legal must confirm conduit/de-identified exceptions. |122| "Enterprise API terms say HIPAA—good enough without signed BAA." | Marketing language ≠ **executed BAA** with §164.504(e) clauses. |123| "MCP is open source, so there's no vendor." | **Operator** of the running instance and its telemetry dependencies may still be a BA. |124| "Subprocessors are the vendor's problem." | CE/BA retains **oversight obligation**—subprocessor notification must be monitored. |125| "Consumer ChatGPT Plus works for clinical summaries." | Consumer products typically **lack BAA**—automatic FAIL for ePHI. |126| "BAA review can wait until after pilot." | Pilot with real ePHI **is production** under HIPAA—BAA must precede ePHI flow. |127128## Red Flags129130- Production ePHI sent to LLM without executed BAA131- Consumer-tier LLM account used for clinical workflows132- Vendor subprocessor added with ePHI access and no notification review133- BAA missing breach notification or termination for cause clauses134- MCP server logs full tool payloads to non-BAA analytics135- "Conduit" exception claimed for vendor that stores prompts136- Verbal vendor assurance substituted for contractual BAA language137138## Verification139140- [ ] Complete vendor inventory with BA/conduit/not-in-scope determination141- [ ] Executed BAA on file for every BA vendor before ePHI processing142- [ ] §164.504(e) checklist completed for each BAA143- [ ] LLM-specific addendum reviewed (training, logging, human review, tier)144- [ ] MCP operators assessed with dependency chain documented145- [ ] Subprocessor list current with change notification process verified146- [ ] FAIL items blocked or remediated—none silently waived147- [ ] Legal review queue documented for ambiguous clauses148- [ ] Evidence bundle hashed with privacy officer sign-off field149- [ ] BAA renewal and subprocessor review dates scheduled