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

windback-mcp

v0.1.0

Published

Official Windback MCP server — query your churn data and trigger recovery actions from Claude Desktop, Cursor, and any MCP-compatible AI client.

Readme

@windback-ai/mcp

Official Windback MCP server — query your churn data and trigger recovery actions directly from Claude Desktop, Cursor, Windsurf, and any MCP-compatible AI client.

What you can do

Once connected, ask Claude natural language questions about your churn data:

"Why are my customers on the Pro plan churning?" "Show me all events that haven't received a winback email yet" "What's my recovery rate this month?" "Generate recovery emails for the 3 most recent churns" "What's the most common cancel reason?"

Installation

npm install -g @windback-ai/mcp
# or use directly with npx (no install needed)

Claude Desktop Setup

Add this to your claude_desktop_config.json:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "windback": {
      "command": "npx",
      "args": ["-y", "@windback-ai/mcp"],
      "env": {
        "WINDBACK_API_KEY": "pb_sk_your_secret_key",
        "WINDBACK_PROJECT_SLUG": "your-project-slug"
      }
    }
  }
}

Restart Claude Desktop. You'll see a hammer icon — Windback tools are live.

Cursor / Windsurf Setup

Add to .cursor/mcp.json or .windsurf/mcp.json in your project root:

{
  "mcpServers": {
    "windback": {
      "command": "npx",
      "args": ["-y", "@windback-ai/mcp"],
      "env": {
        "WINDBACK_API_KEY": "pb_sk_your_secret_key",
        "WINDBACK_PROJECT_SLUG": "your-project-slug"
      }
    }
  }
}

Environment Variables

| Variable | Required | Description | |---|---|---| | WINDBACK_API_KEY | ✅ Yes | Your Windback secret key (pb_sk_...) from Settings → API Keys | | WINDBACK_PROJECT_SLUG | ✅ Yes (most tools) | Your project slug from the dashboard URL | | WINDBACK_BASE_URL | No | Override API base URL (default: https://api.windbackai.com) |

Available Tools

Analytics & Stats

| Tool | Description | |---|---| | get_churn_stats | Overview: total events, recovered count, MRR at risk, recovery rate | | get_email_analytics | Email performance: open rate, click rate, daily breakdown | | get_recovery_trends | Day-by-day recovery trends for the last N days | | get_cancel_insights | Cancel reason distribution + recent written feedback |

Churn Events

| Tool | Description | |---|---| | list_churn_events | List events with status filter and pagination | | get_churn_event | Full event details including AI-generated email variants | | mark_event_recovered | Manually mark an event as recovered |

Recovery Emails

| Tool | Description | |---|---| | generate_variants | Trigger AI to generate 9 recovery email variants | | send_variant | Send a specific variant to the churned customer | | submit_cancel_flow | All-in-one: create event + generate + send best email automatically |

Payment Failures (Dunning)

| Tool | Description | |---|---| | list_payment_failures | List failed payment records with status filter | | get_payment_failure_stats | Dunning overview: failing, recovered, MRR at risk |

Example Prompts

"Show me my 10 most recent churn events"
"What percentage of customers cite price as their cancel reason?"
"Find all events with status 'new' that need emails generated"
"Generate recovery emails for event abc123 then send the discount variant"
"How many customers did I recover this week vs last week?"
"What's my open rate on winback emails this month?"
"Show me customers who churned but we haven't emailed yet"
"Mark event xyz as recovered"

License

MIT