Sprites MCP · PostHog MCP server · ChatGPT

PostHog MCP for ChatGPT: setup in two minutes

Add https://mcp.sprites.ai/mcp as a custom MCP connector in ChatGPT, sign in to Sprites, and ChatGPT can read your PostHog account and propose changes to it. Setup takes about two minutes and needs no API key. Every write comes back as an approval before it touches the account.

MCP server URLhttps://mcp.sprites.ai/mcp

5 steps · about 2 minutes

ChatGPTSprites connected

Which campaigns bring users who actually activate?

Spritesanalyzerunning
SpritesPostHogNeeds your approval
  • brand-search412 signupsKeep38% activate
  • competitor-terms205 signupsScale41% activate
  • meta-lookalike-1pct630 signupsReview9% activate
Read-only · internal users excludedSee the funnel

Add Sprites to ChatGPT

Available on Plus, Pro, Business, Enterprise and Edu, on the web app. Not available on Free. You need a Sprites account with PostHog already connected — the connector acts on that connection, so ChatGPT never handles a PostHog credential.

  1. Turn on developer mode

    Open Settings, go to Security and login, and switch Developer mode on. ChatGPT shows a warning that custom connectors run third-party code on your behalf — read it and accept. On Business and Enterprise workspaces an admin has to allow developer mode first.

    Developer modeSettings → Security and login
  2. Create the Sprites app

    Go to Settings → Plugins — this section used to be called Connectors, which is why older guides send you to an Advanced tab that no longer exists. Press the + button to create a developer-mode app.

    ChatGPT
    SettingsPlugins+ Create
  3. Paste the endpoint and choose OAuth

    Give it a name and description, paste the Sprites endpoint, and set Authentication to OAuth. Tick the box confirming you trust the application, then click Create.

    Create app
    NameSpritesMCP server URLhttps://mcp.sprites.ai/mcpAuthenticationOAuth
  4. Sign in and approve the scopes

    Connect the new app. ChatGPT sends you to the Sprites consent screen; sign in with the account holding your ad platforms and approve. The app then appears under Drafts in app settings and in the composer under the Developer mode tool.

    Spriteswants access on behalf of ChatGPT
    • Read your connected ad accounts and site data
    • Draft campaigns, creatives and pages for your approval
    • Apply only the changes you approve
    AllowCancel

Official PostHog MCP vs Sprites MCP

PostHog runs its own MCP server at https://mcp.posthog.com/mcp. Here is what each one covers, so you can pick the one that fits in ChatGPT — or connect both.

PostHog hosts its own MCP server, free to call, with a one-line installer (npx @posthog/wizard mcp add) for Claude, Cursor, VS Code, Windsurf, Zed and others. It reaches most of PostHog — insights and SQL, dashboards, experiments, feature flags, surveys and error tracking — and it reads and writes. Query parameters on the URL can narrow it to chosen features or named tools. Tools that use an LLM inside PostHog bill as PostHog AI.

PostHog’s official PostHog MCP server compared with the Sprites MCP server
PostHog officialhttps://mcp.posthog.com/mcpSprites MCPapproval-gated
Endpointmcp.posthog.com/mcpmcp.sprites.ai/mcp
ScopeMost of PostHog: insights, SQL, flags, experiments, surveys, errorsProduct analytics: config, trends, breakdowns, funnels, retention
WritesYes — flags, insights, dashboards, experiments, issuesNone in PostHog; ad changes held as approval cards
Ad spendNot in viewGoogle Ads, Meta, LinkedIn, TikTok and Reddit in the same thread
FiguresReturned for the model to readComputed in code; totals reconciled against rows
CostFree; LLM-backed tools bill as PostHog AIRuns on your Sprites plan credits

If you work inside PostHog — shipping flags, running experiments, triaging errors — PostHog’s own server is the right one, and its URL filters keep it from flooding your client with tools. Use Sprites when the question starts with spend: which campaign, which ad set, which channel brings the users who stay — and when the answer should turn into a change in the ad account rather than in PostHog.

Why run PostHog ads through Sprites

ChatGPT is the interface; the connector decides what it can see and what it is allowed to do. Six things change when that connector is Sprites.

The click and its cost in one answer

PostHog sees what a visitor did; the ad account sees what the visit cost. Sprites reads both, so "cost per activated user by campaign" is one question.

Every channel on one connector

Read-only on PostHog

Nothing Sprites does can flip a flag, end an experiment or edit a dashboard. The only changes it proposes are in the ad account, one approval card at a time.

Numbers that are checked before they are said

Every figure is computed in code from a query you can see, and totals are reconciled against their rows. A figure that does not reconcile is withheld, not rounded into the answer.

Run the first prompt

Ask ChatGPT this. It routes to a Sprites door, which reads your PostHog account and answers — no account to name, no confirmation to give first.

  • Ask Sprites which utm_campaign brought the users who finished onboarding last month.
  • With Sprites, show the signup-to-activation funnel for Google Ads visitors versus Meta visitors.
  • Use Sprites to check what events our PostHog project actually tracks before we build the report.
  • Have Sprites compare 4-week retention for users from paid search against organic.
  • With Sprites, find the Meta ad sets whose visitors never reach the pricing page.

Open the composer's Developer mode tool and confirm Sprites is listed with its tools enabled, then ask it what it can do.

What ChatGPT can do with PostHog

The same doors, whichever client you are in. Developer mode gives ChatGPT full read-and-write MCP tools rather than the search-and-fetch pair the built-in connectors are limited to, and the Apps SDK renders the Sprites card in the thread.

Post-click, by campaign

Break a funnel or a trend down by the session’s entry UTM source, medium, campaign, term or content, its gclid or fbclid, or its channel type. That is the join an ad platform cannot make on its own.

It reads the project before it guesses

Every event name with its 30-day volume and reach, the property keys, saved insights, flags and cohorts. A misspelled event does not come back as a confident zero.

Figures that add up

Totals are queried separately from the rows and reconciled. When unique users cannot be summed across rows, the answer says so instead of reporting a gap that is not there.

Your internal users stay out

The project’s own internal and test-user filter is applied by default, and the answer always says whether one exists.

Read-only, by design

Sprites queries PostHog and changes nothing in it: no flags flipped, no dashboards rewritten, no experiments started.

The ad account is in the same thread

The Google Ads, Meta, LinkedIn, TikTok and Reddit specialists all read PostHog, so "which campaign brings users who activate" is one question, not two tools and a spreadsheet.

How approvals work here

ChatGPT draws the Sprites approval card in the thread. A PostHog change arrives with its before and after filled in, editable in place, and applies when you click approve.

What it reads

  • Events, their 30-day volume and reach, and property keys
  • Saved insights, feature flags, cohorts and actions — listed, not changed
  • Trends, breakdowns, funnels and retention computed from your events
  • Session attribution: entry UTM parameters, gclid, fbclid, referring domain and channel type
  • The project timezone and its internal and test-user filter

What it can change

  • Nothing in PostHog. Every PostHog tool is read-only.
  • Changes the analysis leads to — a budget, a paused ad set — happen in the ad account, each as an approval card

When it does not work in ChatGPT

Three things go wrong in this client specifically, and each has a one-line fix.

There is no Advanced tab under Connectors.

Connectors was renamed Plugins, and developer mode moved to Settings → Security and login. Follow the path above rather than an older guide.

Sprites answers but the approval card never appears.

Developer mode is off, or the app was created before you turned it on. The card is an Apps SDK surface and only renders for a developer-mode app.

The tools stop appearing after a Sprites release.

ChatGPT caches the tool list. Use Refresh on the app in settings to pull the current tools and server instructions.

And on the PostHog side

Sprites says PostHog is not connected.

Connect PostHog in Sprites with a personal API key, then select the project. A key with no selected project cannot be queried.

An event comes back as zero.

Event names are matched exactly. Ask Sprites what the project tracks first; it lists every event with its 30-day volume, so a misspelling is obvious.

Sessions do not match any campaign.

The breakdowns read the UTM parameters and click IDs a session arrived with. Ads without UTM tags, or landing pages that strip them, arrive as direct traffic; tag the ads and the join works from the next click.

The numbers include our own team.

The project has no internal and test-user filter. Set one in PostHog’s project settings; Sprites applies it automatically from then on.

PostHog and ChatGPT: questions

Which URL do I paste into ChatGPT?

https://mcp.sprites.ai/mcp. There is one endpoint and every client uses it — every OAuth grant is bound to exactly that address, so a variant of it will not be honoured.

Can ChatGPT change my PostHog account without asking?

ChatGPT draws the Sprites approval card in the thread. A PostHog change arrives with its before and after filled in, editable in place, and applies when you click approve.

Do I need a PostHog API key or developer token?

No. PostHog is connected once inside Sprites through PostHog (personal API key and a selected project), and the connector acts on that connection. ChatGPT never sees a credential for it.

Why ChatGPT for PostHog specifically?

Developer mode gives ChatGPT full read-and-write MCP tools rather than the search-and-fetch pair the built-in connectors are limited to, and the Apps SDK renders the Sprites card in the thread.

Is there an official PostHog MCP server?

Yes. PostHog runs its own hosted server at https://mcp.posthog.com/mcp, signed in with PostHog OAuth or a personal API key, and installable with npx @posthog/wizard mcp add. It reads and writes across insights, dashboards, SQL, feature flags, experiments, surveys and error tracking. Calling it is free; tools that use an LLM inside PostHog bill as PostHog AI.

What is the difference between that and Sprites?

PostHog’s server is PostHog, all of it, including the ability to change flags and dashboards. Sprites reads PostHog only, and puts it beside your ad accounts: the same specialist that reads Google Ads or Meta reads the funnel, so it can say which campaign brings users who activate — and propose the budget change.

Keep going

The same ChatGPT connector reaches every other channel — nothing else to add.

All PostHog guides

PostHog, from ChatGPT

Paste one URL, sign in once, and the next PostHog question you ask ChatGPT gets answered from the live account.