RevenueCat MCP server
RevenueCat in any MCP client, through Memtro: RevenueCat does not publish this server. Memtro's RevenueCat connector reads RevenueCat through its API with the credentials you connect, and one endpoint hands those tools, every other system you connect and Memtro's memory tools to Claude Code, Cursor, Claude Desktop or anything else that speaks Streamable HTTP, as you.
What the model can do
RevenueCat (in-app subscriptions): find a customer by app user id, email or store transaction id, their active entitlements and subscriptions with status, renewal and period dates, offerings, entitlements, the project's overview metrics (MRR, active subscriptions, trials, revenue) and revenue for a date range; and, when granted, grant or revoke a promotional entitlement, cancel, refund or extend a subscription, refund a purchase, create, update or delete a customer, override their offering, and manage entitlements.
Reads
revenuecat_find_customersFind RevenueCat customers by app user id, email (exact match on the customer's $email attribute), or a store transaction or Apple order id…revenuecat_get_customerOne RevenueCat customer by id: first and last seen, platform, app version, experiment and active entitlements with their expiry.revenuecat_list_customer_subscriptionsA customer's subscriptions: product, status (trialing, active, expired, in_grace_period, in_billing_retry, paused…), whether it gives access…revenuecat_get_subscriptionOne subscription by its RevenueCat id (from revenuecat_list_customer_subscriptions): the same fields as the list.revenuecat_list_offeringsOfferings (what the paywall offers): lookup key, display name, whether it is the current offering, state and when created…revenuecat_overview_metricsThe project's headline numbers as RevenueCat's overview shows them (for example MRR, revenue over 28 days, active subscriptions, active trials…revenuecat_revenueRevenue for a date range (inclusive; the most recent day may be partial): gross revenue, revenue net of taxes, or proceeds…revenuecat_list_entitlementsThe project's entitlements (what a purchase unlocks): id, lookup key, display name, state and when created.
Acts, when you ask
These change something in RevenueCat. The model is told to use them only when you ask for exactly that, and each one is granted by name: per team on a shared connection, by the owner on a personal one.
revenuecat_grant_entitlementGrant a customer a promotional entitlement until expires_at, which gives them the paid access it unlocks immediately and free…revenuecat_revoke_granted_entitlementRevoke every active promotional grant of one entitlement from a customer.revenuecat_cancel_subscriptionCancel an active Web Billing subscription (RevenueCat's own billing; App Store and Google Play subscriptions cannot be cancelled here).revenuecat_refund_subscriptionRefund the most recent payment of an active Web Billing subscription, which also cancels it: the customer loses the entitlements immediately.revenuecat_refund_purchaseRefund a Web Billing one-time purchase and revoke the entitlements it granted.revenuecat_extend_subscriptionExtend a subscription's current billing period by a number of days, which gives the customer that much paid time free.revenuecat_create_customerCreate a RevenueCat customer with an app user id, optionally with attributes such as $email or $displayName.revenuecat_set_customer_attributesSet or clear attributes on a customer ($email, $displayName, $phoneNumber or custom ones); a null value deletes that attribute.revenuecat_assign_customer_offeringOverride which offering (paywall) a customer is shown, or clear the override with offering_id null.revenuecat_delete_customerPermanently delete a customer and their RevenueCat history.revenuecat_create_entitlementCreate an entitlement in the project (something a purchase can unlock).revenuecat_update_entitlementRename an entitlement (its display name; the lookup key cannot be changed).revenuecat_archive_entitlementArchive an entitlement (make it inactive), or unarchive it with archived false.revenuecat_set_entitlement_productsAttach products to an entitlement, so buying any of them unlocks it, or detach them so they no longer do.
Connect it
First connect RevenueCat on Dashboard → Connections, then add Memtro to your client once. The RevenueCat tools appear alongside the tools of everything else you have connected; nothing is configured per connector.
Claude Code
The Memtro plugin registers the server and a skill for when to use it; the tools are then available in every session.
claude plugin marketplace add memtro-org/claude-memtro
claude plugin install memtro@memtro --config api_key=sk-memtro-...Cursor
Add the server to .cursor/mcp.json in the project, or to the global file under ~/.cursor/.
{
"mcpServers": {
"memtro": {
"url": "https://platform.memtro.com/api/mcp",
"headers": {
"Authorization": "Bearer sk-memtro-..."
}
}
}
}Claude Desktop
Create a personal API key on Dashboard → Profile → API keys. In Claude Desktop add an MCP server of type HTTP with URL https://platform.memtro.com/api/mcp and the header Authorization: Bearer sk-memtro-…
OpenCode
A remote server in opencode.json.
{
"mcp": {
"memtro": {
"type": "remote",
"url": "https://platform.memtro.com/api/mcp",
"headers": {
"Authorization": "Bearer sk-memtro-..."
}
}
}
}Pi
One command: pi mcp add memtro --url https://platform.memtro.com/api/mcp --bearer-token-env-var MEMTRO_API_KEY. Tools arrive as mcp__memtro__*. The pi-memtro extension registers it for you, alongside Memtro as the model.
Any other client
Add an MCP server of type HTTP (Streamable HTTP, stateless) at https://platform.memtro.com/api/mcp with the header Authorization: Bearer sk-memtro-.... Codex, Zed, Windsurf, Cline and the SDKs all take a remote server this way.
Who may use it
The key identifies the person, and the server offers that person the tools they may use everywhere else in Memtro. A shared RevenueCat connection is used by the teams an administrator granted it to, tool by tool, on the Permissions page; a personal connection is used by its owner alone, and its tools that act stay off until the owner allows them. See Teams and permissions and Connectors.
Ask it like this
- › What is our MRR right now?
- › How many active trials do we have?
- › Is the subscription for user 48213 still active, and when does it renew?
- › What were proceeds for October after taxes and store commission?
- › Give user 48213 premium access free until the end of December
Questions
- Is this an official RevenueCat MCP server?
- No. It is Memtro's MCP server with Memtro's RevenueCat connector behind it: the connector reads RevenueCat through its API with the credentials you connect on Dashboard → Connections, and RevenueCat publishes nothing here. The same endpoint carries every other system you connect and Memtro's memory tools.
- What does it cost?
- Nothing on top of Memtro. One price per organisation by its number of users, from $50 a month for up to 10 users after a 7-day free trial, with every connector, the MCP server, jobs and memory included. You bring your own model keys.
- Can it change anything in RevenueCat?
- Only when you ask, and only what it has been granted: grant a customer a promotional entitlement until a date (gives paid access free); revoke a customer's promotional entitlement (access ends immediately); cancel a Web Billing subscription at the end of its current period; refund a Web Billing subscription's latest payment and end its access now (moves money); refund a Web Billing one-time purchase and revoke its entitlements (moves money); extend a subscription's current billing period by a number of days; create a customer with an app user id; set or clear attributes on a customer; assign or clear the offering a customer sees; permanently delete a customer; create an entitlement; rename an entitlement; archive or unarchive an entitlement; attach or detach products on an entitlement. Every other tool reads, searches or lists. An administrator grants each acting tool by name per team, and a personal connection acts only after its owner allows it.
- Which clients work?
- Any MCP client that speaks Streamable HTTP: Claude Code, Cursor, Claude Desktop, OpenCode, Codex, Zed, Windsurf, Cline and the Anthropic and OpenAI SDKs. There is no local process to run; the server is remote and authenticated with your key.