MCP server

Ask your analytics a question.

Ripples has always been built to give you the answer instead of the chart. This is that taken literally: connect it to Claude, Claude Code or Cursor and ask in your own words. The assistant calls the same reports the dashboard draws — not a query builder, not a guess — so what it tells you is what your dashboard would have told you, phrased as a reply.

Server URL https://mcp.ripples.sh/mcp
How to connect

Read-only. OAuth sign-in with your Ripples account. Free on every plan, including the free one — we don't gate features by tier.

What you can ask

Questions, not queries.

These are real things people type. Each one is several calls behind the scenes — a breakdown, a cohort, a retention curve — assembled into one answer instead of four tabs.

And the ones it will refuse: session replay, bounce rate, session duration, A/B test analysis and custom multi-step funnels are not in Ripples, so the server says so rather than approximating. That list is on what we don't do.

Connect

One URL, then sign in.

No API key to generate, copy or leak. The client sends you to a Ripples sign-in page, you approve it, and the token belongs to your account — revoke it the same way you would any other login.

  1. 1 In Claude Desktop or claude.ai, open Settings → Connectors → Add custom connector.
  2. 2 Paste the Ripples server URL and save.
  3. 3 Sign in with your Ripples account when the authorization page opens.
https://mcp.ripples.sh/mcp

What it can see

16 tools, read-only unless you say otherwise.

Not one tool per chart. One per question shape — “which X is working”, “do they come back”, “did the money come back” — because a list where three tools could plausibly answer the same question is a list an assistant picks wrongly from. The handful that can change something need a permission you grant separately, and they say what they changed.

ripples_projects List projects List every project you can see, across every team — with its handle, domain, timezone, currency and whether its tracking is actually working.
ripples_metrics Metric definitions What each metric in Ripples actually counts, the exact values every filter and enum accepts, and — importantly — the list of questions Ripples cannot answer.
ripples_overview Overview The scorecard: visitors, active users, signups, activations, revenue and who is online right now, each against its previous period.
ripples_timeseries Metrics over time Visitors, active users, pageviews, signups, activations and revenue plotted over time, with the previous period aligned bucket for bucket.
ripples_breakdown Rank and compare a dimension Rank the values of one or more dimensions — channel, source, campaign, country, city, page, device, browser, OS, platform, plan, tier, event type, and any trait your identify() call sends.
ripples_funnel Conversion funnel The conversion funnel: visited → signed up → activated → paid, with the count, conversion rate and drop-off at each step.
ripples_revenue Revenue Revenue in depth: totals against the previous period, MRR and its 30-day move, annualised run rate, ARPU, the subscription-vs-one-time split, revenue by channel, and how long people take to first pay.
ripples_retention Retention Do people come back? Returns the cohort matrix and curve — D1/D7/D30 style retention by acquisition cohort — plus the activity-tier mix of recent signups.
ripples_cohorts Cohorts and payback Ad payback by acquisition cohort: for each cohort, its size, spend, revenue and retention at 0/1/3/7/14/30/60 days, plus ROAS and the day the cohort paid for itself.
ripples_engagement Product engagement What people actually DO in the product, as opposed to how many arrive: which areas they use, which named actions they fire, how many are genuinely active, and how many signups reached activation.
ripples_realtime Realtime What is happening right now: how many visitors are on the site in the last five minutes, and optionally a per-minute series, their approximate locations, a live event feed, and the list of event names this project actually emits.
ripples_people Find people Find the people in a project by who they are (country, channel, plan, tier, revenue, signup date) and by what they did (fired an event, used an area, at least N times, in a window).
ripples_channels Channel classification Can write Read, test and change how this project files traffic into channels — the dimension every ROAS, CAC and payback number is grouped by, and the only one the customer defines rather than Ripples measuring it.
ripples_person One person Extra permission Everything about one person: who they are, where they came from, what they pay, which product areas they use, and their sessions in order.
ripples_configure Record spend and settings Can write Write project configuration.
ripples_google_ads Google Ads sync Can write Needs Google Ads Check whether this project's Google Ads spend is actually up to date, and re-pull it if it is not.

Context and methods

It also brings the docs and the method.

Resources

Context you attach once. The docs ones matter most: “how do I track a signup from my Rails backend?” gets the real snippet from our documentation instead of one the model half-remembers, which is how people end up with a tracker that silently never fires.

ripples://docs

Every documentation page available at ripples://docs/{slug}, with its title and a one-line summary.

ripples://docs/{slug}

The full markdown of one Ripples documentation page — installation snippets, identify(), custom events, Stripe, Paddle, single-page apps, and the iOS, PHP and Python SDKs.

ripples://metrics

What every Ripples metric counts, every value each filter accepts, every caveat code a payload can carry, and the questions Ripples deliberately cannot answer.

ripples://project/{handle}/schema

The event names, product areas, identify() trait keys, channels and sources one project has actually sent in the last 90 days.

ripples://project/{handle}/channels

The channel classification rules for one project, in evaluation order, with the fields and operators they are built from.

Prompts

Saved methods you pick from a menu in your client. Each one encodes how to do that piece of analysis honestly — rule out a broken tracker before blaming the business, report payback alongside return, never read a base rate as a finding.

/weekly_founder_brief

The Monday-morning read: what moved this week, where the people came from, whether they stayed, and the one thing worth doing about it.

/portfolio_triage

Rank every project you can see and name the one worth working on next, with the reasons.

/channel_review

Where the next marketing money should go: which channels bring people who pay, how long they take to pay back, and what to do with a given budget.

/launch_debrief

Before and after a ship, a launch or a post: who came, where from, whether they signed up, and whether anything actually changed.

/activation_audit

Where onboarding leaks: how many people who sign up ever do anything, which parts of the product they reach, and where they stop.

/investigate

Work out why a number moved, or what is different about a group of people.

/trust_check

Whether the numbers can be trusted: what is instrumented, what is missing, which figures are affected by each gap, and how to fix it.

Being straight with you

What it can and cannot do to your account.

Read your analytics

mcp:use Granted by default

Every report the dashboard shows, for every project on every team you belong to. Counts, channels, revenue, retention and segments — no names, no email addresses.

Read individual people

mcp:people You choose

Names, email addresses and one person's full history. Without it, people tools still answer "how many" and "what did that group do" — the identifying fields come back redacted.

Change settings and record spend

mcp:write You choose

Record what your ads cost — the one number Ripples cannot measure and every ROAS figure is divided by — and change the project timezone, week start, currency or channel rules. Channel rules cannot be saved without previewing what they reclassify first. Everything else on the server stays read-only without this.

No SQL, and no query builder.

The assistant cannot write a query against your data. It calls the same reports the dashboard draws, which is also why it cannot invent a metric: every number comes back with the definition of what it counted.

It returns data, not verdicts.

No tool ranks causes or hands back a conclusion. It returns the distributions, the deltas, the base rates and the caveats needed to read them honestly — the reasoning is the assistant's, in front of you, where you can argue with it.

It knows what it does not know.

A channel with no recorded ad spend comes back as null, never zero, so nothing reports free traffic with infinite return. A project too young to compare says so instead of printing +920000%. Those warnings ride on every payload.

Your whole portfolio, not one team.

A token is you, so it reaches every project across every team you belong to. That is the one thing the dashboard structurally cannot do, and it is why "which project deserves my Saturday" is answerable here first.

You need data in it first.

One line of code, then connect the assistant. Free until $1K MRR.