# io.github.Goingparabolic/painprep-mcp-server (npm · painprep-mcp-server)

Interventional pain medicine MCP: Medicare checklists, CPT/ICD-10, ASRA, prior-auth & appeals

- Trust score: 69/100 (medium)
- Change this week: +23
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-03

## Components

- npm · `painprep-mcp-server`: 69/100 (this document), [markdown](https://verifymcp.io/servers/goingparabolic-painprep-mcp-server/painprep-mcp-server.md), [page](https://verifymcp.io/servers/goingparabolic-painprep-mcp-server/painprep-mcp-server)

## Channel facts

- Registry: `npm`
- Package: `painprep-mcp-server`
- Version: `0.1.2`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-03.

- **Supply Chain Security**: 87/100
  - No malware found by supply-chain analysis.
  - Only part of the dependency tree could be resolved (95 of 99), so this covers what we could see, not the whole tree.
  - No install/post-install scripts declared.
  - Only part of the dependency tree could be resolved (95 of 99), so this covers what we could see, not the whole tree.
- **Provenance & Transparency**: 45/100
  - Source repository is publicly reachable at the declared URL.
  - Provenance check failed: no build-provenance attestation is published.
  - Clear OSI-approved license (MIT).
  - Actively maintained (last published 59 days ago).
  - Disclosure check failed: no security disclosure policy was found in the source repository.
- **Schema Quality & AI Usability**: 75/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 1065 tokens (~118/item across 9 items; 9 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 27/100
  - Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### Claude

```bash
claude mcp add goingparabolic-painprep-mcp-server -- npx -y painprep-mcp-server
```

### Codex

```bash
codex mcp add goingparabolic-painprep-mcp-server -- npx -y painprep-mcp-server
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "goingparabolic-painprep-mcp-server": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "painprep-mcp-server"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add goingparabolic-painprep-mcp-server --command npx --arg -y --arg painprep-mcp-server
```

### Hermes

```yaml
mcp_servers:
  goingparabolic-painprep-mcp-server:
    command: "npx"
    args: ["-y", "painprep-mcp-server"]
```

### Other

```json
{
  "mcpServers": {
    "goingparabolic-painprep-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "painprep-mcp-server"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-02 (score 69, +40)

- [security regression] Provenance: fail → unverified
- [security regression] Install scripts: pass → unverified
- [security improvement] Known CVEs: unverified → partial
- [security] Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window).
- [functional regression] Maintenance: pass → unverified
- [functional regression] Dependency health: partial → unverified
- [functional regression] License: pass → unverified
- [functional improvement] Stability: unverified → 0.23
- [functional improvement] MCP protocol: unverified → pass
- [functional improvement] Tool coverage: unverified → 100
- [functional] Licence: MIT

### 2026-08-01 (score 29, −39)

- [security regression] Known CVEs: partial → unverified
- [security] Stability: Stability not yet verified: we do not have a sandbox capture of the MCP schema this version of the package serves yet.
- [functional regression] Capabilities: pass → unverified
- [functional regression] Tool coverage: 100 → unverified

### 2026-07-31 (score 68, +7)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-30 (score 61, −18)

- [security regression] Malware scan: pass → unverified

### 2026-07-29 (score 79, +54)

- [security regression] Provenance: unverified → fail
- [security improvement] Known CVEs: unverified → partial
- [security improvement] Install scripts: unverified → pass
- [functional improvement] Maintenance: unverified → pass
- [functional improvement] License: unverified → pass
- [functional improvement] Tool coverage: unverified → 100
- [functional improvement] Schema quality: unverified → excellent
- [functional] Licence: MIT

### 2026-07-28 (score 25, −21)

- [functional regression] Tool coverage: 100 → unverified
- [functional improvement] Dependency health: unverified → partial
- [functional] First check of Schema quality: unverified

### 2026-07-27 (score 46)

First indexed and scored.

## MCP tools (9)

### `get_procedure_list` (~89 tokens)

List Pain Procedures

Returns the full catalog of interventional pain medicine procedures, grouped by category. Each entry includes the procedure id (used by other tools), display name, short name, and headline CPT code(s). Optionally filter by a category id or name. FREE tier.

Input parameters:

- `category` (string): Optional category filter (id like "epidural" or label like "Epidural Injections").

### `get_cpt_codes` (~73 tokens)

Get CPT Codes

Given a procedure (name, id, or CPT code), returns the primary CPT code(s), add-on codes, work RVUs, typical facility setting (office/ASC/hospital), and billing notes. FREE tier.

Input parameters:

- `procedure` (string, required): Procedure name, id, or a CPT code to look up.

### `get_medicare_checklist` (~71 tokens)

Get Medicare Documentation Checklist

Given a procedure, returns the full Medicare/LCD documentation checklist: required documentation items with rationale and suggested chart wording, top denial triggers, and pre-submission admin checks. Flags items that are commonly missed. PREMIUM tier.

Input parameters:

- `procedure` (string, required): Procedure name, id, or CPT code.

### `get_icd10_codes` (~63 tokens)

Get ICD-10 Codes

Given a procedure, returns the approved/supportive ICD-10 diagnosis codes, codes to AVOID (common denial triggers), and coding tips for medical-necessity support. PREMIUM tier.

Input parameters:

- `procedure` (string, required): Procedure name, id, or CPT code.

### `get_contraindications` (~84 tokens)

Get Contraindications & Anticoagulation Guidance

Given a procedure, returns its bleeding-risk level and the ASRA-aligned anticoagulant/antiplatelet stop-and-restart guidance (per agent), special considerations, and general pre-procedure safety checks. Always verify against the current ASRA guidelines and institutional policy. PREMIUM tier.

Input parameters:

- `procedure` (string, required): Procedure name, id, or CPT code.

### `get_prior_auth_letter` (~341 tokens)

Generate Prior Authorization Letter

Generates a formal, payer-ready prior-authorization / medical-necessity letter for a procedure, merging supplied patient and clinical details with the procedure’s CPT codes, recommended primary ICD-10 code, evidence grade, and necessity rationale. Any field left unspecified is rendered as a clearly-marked fill-in blank. The structured medical-necessity worksheet is appended when available. PREMIUM tier.

Input parameters:

- `conservativeCare` (string): Failed conservative care with durations, e.g. "8 weeks PT, NSAIDs x6 weeks".
- `diagnosis` (string): Primary diagnosis narrative (e.g. "left L5 radiculopathy").
- `functionalLimitations` (string): Functional limitations narrative.
- `icd10` (string): Primary ICD-10 code; defaults to the recommended primary code.
- `imagingFindings` (string): Relevant MRI/CT/X-ray findings with date.
- `includeWorksheet` (boolean): Append the structured medical-necessity worksheet template (default true).
- `memberId` (string): Insurance member / Medicare beneficiary ID.
- `painScore` (string): Pain score, e.g. "7/10 at rest, 9/10 with activity".
- `patientDOB` (string): Patient date of birth.
- `patientName` (string): Patient full name.
- `payer` (string): Payer / insurance company name.
- `procedure` (string, required): Procedure name, id, or CPT code.
- `providerNPI` (string): Ordering provider NPI.
- `providerName` (string): Ordering provider name and credentials.
- `symptomDuration` (string): Symptom duration, e.g. "5 months".

### `get_denial_reasons` (~62 tokens)

Get Denial Reasons & Appeal Templates

Given a procedure, returns the common payer denial reasons with their relative frequency, the concrete fix/remedy for each, and a ready-to-adapt appeal letter snippet. PREMIUM tier.

Input parameters:

- `procedure` (string, required): Procedure name, id, or CPT code.

### `get_research_evidence` (~69 tokens)

Get Research Evidence

Given a procedure, returns the overall evidence grade, a summary of the evidence base, and the key supporting studies (title, journal, year, and headline finding) for use in notes and appeals. PREMIUM tier.

Input parameters:

- `procedure` (string, required): Procedure name, id, or CPT code.

### `check_documentation_completeness` (~118 tokens)

Check Documentation Completeness

Given a procedure and the list of items already documented in the chart, audits the note against the Medicare required-documentation checklist and returns what is satisfied, what is still missing (with rationale and suggested wording), a spotlight on commonly-missed gaps, and an overall completeness score. PREMIUM tier.

Input parameters:

- `documented` (array, required): Items already documented — checklist item ids or free-text phrases (e.g. "MRI findings", "conservative care 8 weeks").
- `procedure` (string, required): Procedure name, id, or CPT code.

## Diagnostics

Captured diagnostic sections: Provenance, Dependencies. The full working is on the page: https://verifymcp.io/servers/goingparabolic-painprep-mcp-server/painprep-mcp-server#diagnostics

## Score history

- 2026-08-03: 69
- 2026-08-02: 69
- 2026-08-01: 29
- 2026-07-31: 68
- 2026-07-30: 61
- 2026-07-29: 79
- 2026-07-28: 25
- 2026-07-27: 46

## Links

- npm package: https://www.npmjs.com/package/painprep-mcp-server
- Socket report: https://socket.dev/npm/package/painprep-mcp-server
- Repository: https://github.com/Goingparabolic/painprep-mcp-server
- Changelog RSS feed: https://verifymcp.io/servers/goingparabolic-painprep-mcp-server/painprep-mcp-server/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/goingparabolic-painprep-mcp-server/painprep-mcp-server/changelog.json
- HTML version of this page: https://verifymcp.io/servers/goingparabolic-painprep-mcp-server/painprep-mcp-server
