npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@upstream-intelligence/mcp

v0.2.0

Published

MCP server for Upstream care intelligence

Readme

upstream-mcp

Pre-submission claim risk in your terminal.

Pre-submission claim risk. Live denial intelligence. Payer behavioral signals. Without leaving your Claude workflow.

License Issues upstream.cx Newsletter


What this is

A Model Context Protocol server that exposes Upstream's Payer intelligence Platform as a set of tools Claude can call directly.

Your billing team is in Claude already. They are asking Claude to draft appeals, decode denial codes, and explain payer behavior. With this MCP installed, Claude does not guess. Claude calls Upstream's network of operators and gets the real answer with specific dollar impact and the recommended fix.

Works across ABA, SNF, PT/OT, dental, dialysis, imaging, home health, and behavioral health. The MCP routes specialty queries to the right backend.

What it looks like

{
  "alert_type": "denial_risk",
  "payer": "Anthem BCBS",
  "cpt_code": "99214",
  "risk_score": 0.87,
  "primary_reason": "Missing modifier 25 for same-day E&M + procedure",
  "action": "Add modifier 25 before claim submission",
  "estimated_denial_dollar": 312.00
}

This is what a high-risk denial alert looks like before you submit the claim. No PHI. Aggregate payer behavior patterns only.


Install

Claude Code

claude mcp add upstream -- npx -y @upstream-intelligence/mcp
export UPSTREAM_API_KEY=your_key_here

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "upstream": {
      "command": "npx",
      "args": ["-y", "@upstream-intelligence/mcp"],
      "env": {
        "UPSTREAM_API_KEY": "your_key_here"
      }
    }
  }
}

Free API key (500 calls per month, no credit card): upstream.cx/developers/keys


Tools available to Claude

[Free] tools work on the free evaluation tier (rate limited, no PHI). [Paid] tools require an starter or pro API tier. See Code license vs. service terms below.

Claim intelligence

| Tool | Tier | What it does | |---|---|---| | scan_claim | [Free] rate limited | Pre-submission claim risk scan. Checks NCCI edits, authorization requirements, denial probability, and payer specific patterns. Returns a risk score from 0 to 100 with specific issues to fix before submission. | | check_ncci_edits | [Free] | Check whether two CPT codes can be billed together. Returns edit type (PTP or MUE), modifier options, and clinical rationale. | | check_prior_auth_readiness | [Free] rate limited | Score a prior authorization request from 0 to 100 before submission. Returns risk factors with specific fix instructions and estimated approval probability. Specialty support: ABA, dental, PT/OT, SNF, with more added quarterly. |

Denial intelligence

| Tool | Tier | What it does | |---|---|---| | lookup_denial_code | [Free] | Look up any CARC denial reason code. Returns plain English explanation, root causes, corrective actions, and the regulatory basis. | | get_denial_clusters | [Paid] | Active denial clusters with root cause labels and dollar impact. When cross_customer_signal: true, the pattern is affecting multiple operators in the network simultaneously. Not just yours. | | get_industry_signals | [Paid] | Network wide anomalies. Denial patterns affecting multiple practices on the same day. The early warning that no single practice tool can produce. |

Payer intelligence

| Tool | Tier | What it does | |---|---|---| | get_payer_scorecard | [Paid] | A to F grade and denial rate for a payer by specialty. Includes top denial codes, payment timing percentiles, and historical appeal success rates. | | compare_practice_to_community | [Free, lead-capture] | Compare your practice's payer-specific metrics (denial rate, days-to-pay, appeal win rate) against the Upstream network aggregate for that payer + specialty. Requires email — saved as a lead. Returns delta metrics + risk-adjusted CTA. | | check_payer_behavior | [Paid] | Behavioral risk score and cluster classification (Aggressive Denier, Slow Payer, Prompt Payer, Underpayer). Includes recent policy changes and the specific dates of detection. |

Reimbursement

| Tool | Tier | What it does | |---|---|---| | lookup_fee_schedule | [Free] | CMS national fee schedule rates for any CPT code. Returns facility and non facility rates, RVUs, and geographic adjusters. |

Specialty workflows

| Tool | Tier | What it does | |---|---|---| | get_authorization_status | [Paid] | Authorization state for a patient. Hours or units authorized, used, remaining, expiry date, and renewal urgency (red, amber, green). Routes per specialty (ABA session units, SNF stay days, dental procedure caps, PT/OT visit limits, imaging procedure approvals, dialysis treatment authorizations). | | get_aba_session_tracker | [Paid] | ABA session authorization status by patient reference: authorized hours, sessions used, hours remaining, expiry date, risk level (red / amber / green), renewal urgency. Use in ABA billing workflows. Patient reference is the anonymized token from your Upstream dashboard — never PHI. | | get_patient_propensity | [Paid] | Patient collectibility score from 0 to 100 with collection probability and recommended approach. Powered by Upstream's propensity model. |


Example questions Claude can answer

Claim work:

  • "Scan this claim for UnitedHealthcare. CPT 97153, 97155. Diagnosis F84.0. POS 11."
  • "Can I bill 97153 and 97155 together on the same claim?"
  • "Score this prior auth before I submit. Auth ID 441-B."

Denial work:

  • "What does denial code 97 mean and how do I fix it?"
  • "What denial clusters are active in my account right now?"
  • "Show me network wide denial signals from the last 7 days."

Payer intelligence:

  • "What grade does Aetna get for this specialty?"
  • "Compare UnitedHealthcare and Cigna on denial rates."
  • "Has UnitedHealthcare made any recent policy changes for SNF claims?"

Reimbursement:

  • "What is the Medicare rate for CPT 97153?"
  • "Show me RVUs for 97155 facility versus non facility."

Specialty workflows:

  • "Check authorization status for patient ref UP-4492."
  • "What is the collectibility score for patient ref UP-8831?"

Why an MCP

Most generic chat assistants hallucinate on healthcare billing. They give plausible CARC interpretations that are wrong. They confidently state Aetna's denial rate when no one ever measured it.

Upstream's MCP gives Claude actual data. Real CMS reference tables. Real network behavioral signals. Real payer scorecards measured against operator outcomes.

Claude becomes accurate. Your team trusts the answer.


Environment variables

| Variable | Required | Default | Description | |---|---|---|---| | UPSTREAM_API_KEY | Optional for free tier | (none) | Get one at upstream.cx/developers/keys | | UPSTREAM_BASE_URL | Optional | https://api.upstream.cx | Override for local development or sandbox testing |


Local development

git clone https://github.com/Upstream-Intelligence/upstream-mcp
cd upstream-mcp
npm install
cp .env.example .env
npm run build
npm test

Point Claude at the local build:

{
  "mcpServers": {
    "upstream": {
      "command": "node",
      "args": ["/absolute/path/to/upstream-mcp/dist/index.js"],
      "env": {
        "UPSTREAM_API_KEY": "your_key_here"
      }
    }
  }
}

Rate limits

| Tier | Calls per month | Cost | |---|---|---| | Free | 500 | $0 | | Pioneer (beta) | 5,000 | $49 | | Production | Higher caps available | See upstream.cx/pricing |

When the monthly quota is exceeded, tools return a clear error with current tier and a direct upgrade link. No silent failures. No degraded responses.


What people ask

Does this work without the paid platform? Yes. The free tier gives you 500 calls per month with no credit card. Claim scanning, denial code lookups, fee schedule queries, and CARC parsing all work on the free tier.

What does the network signal include? When get_industry_signals returns a result, it means multiple operators across the network are seeing the same pattern simultaneously. Aggregated. Anonymized. Statistically validated. Never PHI.

How fresh is the data? Payer scorecards refresh nightly. Network signals fire in near real time when significance thresholds are crossed. CMS reference tables update on the CMS publication cadence (CARC quarterly, NCCI quarterly, fee schedule annual).

Is my data secure? Calls to the MCP server are encrypted in transit. Free tier queries are stateless. Paid tier queries are scoped to your customer tenant. The MCP works on patient reference IDs (your internal IDs), not on patient names or DOB.

Why not just use Claude with web search? Public web data on payer behavior is incomplete, stale, and often wrong. Upstream measures payer behavior against the operator network's actual claim outcomes. The signal is what is happening, not what someone said is happening.

How does Upstream compare to traditional clearinghouses? Clearinghouses move claims. Upstream interprets payer behavior. Different lane. Most operators run both.


Code license vs. service terms

The MCP client code in this repository is MIT licensed. Fork it, audit it, embed it in your stack.

The Upstream API service that this client calls is governed by separate Service Terms of Use at upstream.cx/terms, including:

  • Paid plan rate limits and tier-gated tools (see [Free] / [Paid] markers in the tool tables above).
  • BAA required for any workflow involving Protected Health Information.
  • Acceptable use policy.
  • Free evaluation tier: 500 calls/month, no PHI, restricted to [Free] tools.

The license on the client code does not grant API service access. Production usage requires an organization-scoped paid key. Request access at upstream.cx/developers/keys.


Related



Built by Upstream Intelligence. Read the methodology at engine.upstream.cx. Pioneer Program: upstream.cx/pioneer.

upstream.cx · [email protected]

Payer intelligence Platform.