Retain MCP Server
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| RETAIN_API_KEY | Yes | Agent key from Settings → Agent keys. | |
| RETAIN_API_URL | No | Override the API base URL (self-host / staging). | https://api.retain.so |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_at_risk_customersA | List customers by churn risk level, ordered by MRR at risk. Use to answer "which customers are at critical/high risk?". |
| get_customer_detailsA | Get the full profile for one customer by id or name: plan, health score, risk level, seats, activity trend and recent alerts. |
| get_mrr_at_riskA | Total monthly recurring revenue at risk plus active-alert counts by risk level. A quick executive snapshot. |
| get_active_alertsA | List active (non-archived) alerts ordered by priority, with customer, risk factors, MRR at risk and outreach state. |
| get_churn_metricsA | Consolidated metrics for the current period: churn rate, MRR churned, new/expansion/contraction MRR and net revenue retention. |
| add_customer_noteB | Add a note to a customer's active alert. Useful to document outreach done outside Retain. Requires a read+write agent key. |
| mark_alert_contactedA | Advance one or more alerts to the "contacted" outreach state with a timestamp. Pass a single id to mark one alert, or several to mark them in one call. Requires a read+write agent key. |
| archive_alertA | Archive a resolved alert, removing it from the attention queue. Requires a read+write agent key. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 8 tools
Each tool targets a distinct aspect of churn management: customer lists by risk, individual customer profiles, MRR risk summary, active alerts, churn metrics, and alert actions (note, mark contacted, archive). No two tools have overlapping purposes, and descriptions clearly differentiate them.
All read operations follow a consistent 'get_' prefix, while write operations use descriptive verb+nouns (add_customer_note, mark_alert_contacted, archive_alert). The naming is uniformly snake_case and predictable, making it easy for agents to infer tool behavior from names.
With 8 tools, the set is well-scoped for a churn management server. It covers essential read operations (customer lists, details, metrics, alerts) and write operations (note, contacted, archive) without being bloated or insufficient. The count is appropriate for the domain.
The tool set covers the core workflow of identifying at-risk customers, monitoring alerts, and managing outreach states. Minor gaps exist, such as the inability to create or resolve alerts programmatically, but the available tools provide sufficient functionality for typical monitoring and action tasks.