About churnkey
The Churnkey MCP server lets Claude, Cursor and other AI agents query cancel flow sessions, analytics and DSR data using a Data API key. It is intended for teams that track subscription cancellations and retention.
Key features
- 01Query cancel flow session records
- 02Read retention and analytics data
- 03Access DSR data
- 04Authenticate with a Data API key
Use cases
- 01Letting an AI agent review recent subscription cancel sessions
- 02Analyzing churn and retention metrics
MCP support
The project is an MCP server, shipped as the @churnkey/mcp package, that gives MCP clients such as Claude and Cursor query access to Churnkey data.
Configuration
Remote servers need no local install. Pick your client, then copy the config or install in one click.
https://mcp.churnkey.co/mcpclaude mcp add --transport http co-churnkey-churnkey https://mcp.churnkey.co/mcp{"mcpServers":{"co-churnkey-churnkey":{"type":"http","url":"https://mcp.churnkey.co/mcp"}}}Open in Cursor{"servers":{"co-churnkey-churnkey":{"type":"http","url":"https://mcp.churnkey.co/mcp"}}}Open in VS Code{"mcpServers":{"co-churnkey-churnkey":{"type":"http","url":"https://mcp.churnkey.co/mcp"}}}{"mcpServers":{"co-churnkey-churnkey":{"serverUrl":"https://mcp.churnkey.co/mcp"}}}Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.
Tools
Details
From the project READMEChurnkey SDK
A production-ready cancel flow for React. Open source. Optionally connects to Churnkey for analytics and AI-powered retention.
Packages
| Package | Description |
|---|---|
@churnkey/react | The cancel flow. Drop-in component, headless hook, or core state machine. React 18 and 19. |
@churnkey/node | Server-side token generation. Only needed if Churnkey is handling billing actions for you, or if you're using the hosted embed. |
@churnkey/mcp | Model Context Protocol server. Lets Claude, Cursor, and other AI agents query your Churnkey data (sessions, analytics, DSR) using a Data API key. |
Quick start
npm install @churnkey/react
import { CancelFlow } from '@churnkey/react'
import '@churnkey/react/styles.css'
<CancelFlow
steps={[
{
type: 'survey',
title: 'Why are you leaving?',
reasons: [
{
id: 'expensive',
label: 'Too expensive',
offer: { type: 'discount', couponId: 'STRIPE_SAVE20', percentOff: 20, durationInMonths: 3 },
},
{ id: 'not-using', label: 'Not using it enough', offer: { type: 'pause', months: 2 } },
{ id: 'missing', label: 'Missing features' },
],
},
{ type: 'feedback', title: 'Anything else?' },
{ type: 'confirm' },
]}
handleDiscount={async (offer) => myBilling.applyCoupon(offer.couponId)}
handlePause={async (offer) => myBilling.pause({ months: offer.result?.months ?? offer.months })}
handleCancel={async () => myBilling.cancel()}
onClose={() => setOpen(false)}
/>
Documentation and resources
@churnkey/react— full API reference, customization, headless usage, custom step types@churnkey/node—createTokenandauthHash@churnkey/mcp— MCP server for Claude / Cursor / Claude Desktop- Create a free Churnkey account — get an
appIdfor analytics - churnkey.co — dashboard, hosted embed, AI retention features
Repo layout
sdk/
├── packages/
│ ├── react/ @churnkey/react
│ ├── node/ @churnkey/node
│ └── mcp/ @churnkey/mcp
├── apps/
│ └── playground/ internal dev playground
└── scripts/ release + tooling helpers
Local development
pnpm install
pnpm --filter @churnkey/react build
pnpm --filter @churnkey/react test
To work against the playground:
pnpm --filter @churnkey/react dev # rebuilds on change
pnpm --filter @churnkey/playground dev # runs the playground app
License
MIT
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.