Model Context Protocol server for Retain: let AI agents query churn risk and act on retention.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
We haven't yet run this listing's install command through our automated sandbox check. This isn't a red flag β we're steadily working through the catalog.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Inspect callable tools, capabilities, and parameters exposed to AI agents by MCP Server.
get_at_risk_customersCustomers by churn risk (`Critical`/`High`/`Stable`/`Healthy`), ordered by MRR. Defaults to Critical + High.
get_customer_detailsFull profile for one customer by id or name.
get_mrr_at_riskTotal MRR at risk plus active-alert counts by risk level.
get_active_alertsActive alerts by priority, with risk factors and outreach state.
get_churn_metricsChurn rate, MRR churned, expansion/contraction, net revenue retention.
mark_alert_contactedMark an alert as contacted.
Let your AI agent see who is about to churn, and do something about it.
@retain-so/mcp-server connects Retain to any MCP client (Claude Code, Claude Desktop, Cursor, Windsurf, and friends). Ask in natural language which customers are at risk, pull a customer's full health profile, check MRR at risk, and log outreach, all without opening the dashboard.
Retain is an AI-first churn prevention and customer analytics platform. This server is the bridge between your agent and your Retain data.
Read:
Act (needs a read+write key):
claude_desktop_config.json).cursor/mcp.json or ~/.codeium/windsurf/mcp_config.json)| Tool | Type | What it does |
|---|---|---|
get_at_risk_customers | read | Customers by churn risk (Critical/High/Stable/Healthy), ordered by MRR. Defaults to Critical + High. |
get_customer_details | read | Full profile for one customer by id or name. |
get_mrr_at_risk | read | Total MRR at risk plus active-alert counts by risk level. |
get_active_alerts | read | Active alerts by priority, with risk factors and outreach state. |
get_churn_metrics | read | Churn rate, MRR churned, expansion/contraction, net revenue retention. |
mark_alert_contacted | write | Mark an alert as contacted. |
archive_alert | write | Archive a resolved alert. |
Coming soon: send_retention_email (trigger a templated retention email).
You: Who's about to churn and how much money is on the line?
Agent: (calls
get_mrr_at_risk, thenget_at_risk_customers) You have $4,200 MRR at risk across 7 active alerts. The two biggest are Acme Inc ($900, critical, 18 days inactive) and Globex ($650, high).You: I emailed Acme today, mark their alert as contacted.
Agent: (calls
mark_alert_contacted) Done. Acme's alert is now marked as contacted.
| Variable | Required | Default | Description |
|---|---|---|---|
RETAIN_API_KEY | yes | (none) | Agent key from Settings β Agent keys. |
RETAIN_API_URL | no | https://api.retain.so | Override the API base URL (self-host / staging). |
The server holds no business logic and no database. It only translates MCP tool calls into HTTP requests against Retain's public /agent/* API. Contributions and new tools are welcome.
MIT
Factual signals from GitHub, npm, and our automated checks β not a rating.
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/mcp-server-155)<a href="https://allmcps.com/mcp/mcp-server-155"><img src="https://allmcps.com/api/badge/mcp-server-155?style=directory" alt="MCP Server on AllMCPs" /></a>