Prototype · Preview: every server in the official registry, synced every 30 minutes. Sign in with Google to write reviews.Prototype · updated every 30 min
PopNx MCPMCP servers for people who use AI · explained in plain words

PostHog MCP Server

by PostHogversion 1.0.1i★ 40,758 (Stars for the whole repo)iRuns in the cloud
Registry nameio.github.PostHog/mcp

How to install

What it does

Official PostHog MCP Server for product analytics, feature flags, experiments, and more.

  • Connects Runs in the cloud
  • Account or key Needs Authorization
  • Category Marketing & social media

Install

Pick the AI app you use, then copy the settings.

Passed 4/5 checks · What you ask goes through the maker’s server (mcp.posthog.com) · ✓ Commands checked Nov 13, 2026

First: which AI do you use?

Pick your app and the steps appear below.

Install it in the Claude app, no setup needed

PostHog is in the list Claude already curates. Follow the steps below.

Claude has a built-in list of reviewed tools. You can install them without copying any settings. · In Claude’s list · checked Nov 13, 2026

  1. Open Claude on the web (claude.ai) or the Claude Desktop app

  2. Click “Customize” in the left sidebar

    Customize

  3. Choose the “Connectors” tab, then click the “+” button next to Connectors

    CustomizeConnectors+

  4. Type “PostHog” in the search box or scroll the list, then click it

  5. Click “Connect” (some say “Install”)

  6. Sign in to that service if asked

  7. Turn it on in a chat: click “+” at the lower left of the chat box → “Connectors” → switch on PostHog

  8. Try it

    Use PostHog MCP Server and tell me what you can do for me, then show me one thing

    ✓ If Claude says it is using PostHog MCP Server or shows a PostHog MCP Server tool in the answer, you are connected

Menu names are in English, as on Claude’s screen

Menu names checked against Anthropic’s help page on Nov 13, 2026 · your screen may differ slightly by app version

Other way: add it yourself by URL (custom connector)

Works with Claude · about 5 min

You need a PostHog MCP Server key (create it on the maker’s site) · Set it up once on claude.ai or the desktop app, then use it in chat · free accounts can add 1 · on Team/Enterprise an Owner adds it

  1. Sign up and create a PostHog MCP Server key

    Open the maker’s site, sign up and create an API key for the next step. Check the maker’s site for pricing and free plans.

    How to get a key is in the maker’s README below

  2. Open Claude’s Connectors page

    CustomizeConnectors

    CustomizeConnectors1Add2https://…3Add4
  3. Click “Add” → “Custom” → “Web” and fill in these 2 fields

    Copy each value into the field with the same name in Claude, then click Continue

    Name · NamePostHog MCP Server
    Remote MCP server URL · Addresshttps://mcp.posthog.com/mcp

    Under Request headers, add this name and value

    Header nameAuthorization
    ValueBearer <paste your key here>

    Paste the key only into the app’s field, never into a chat or to anyone

    Click Continue past the sign-in settings Claude detected · under Authentication choose what the maker says (Sign in now, Sign in when needed or No sign in), then click Add

  4. Turn it on in a chat

    +ConnectorsPostHog MCP Server

  5. Try it

    Use PostHog MCP Server and tell me what you can do for me, then show me one thing

    ✓ If Claude says it is using PostHog MCP Server or shows a PostHog MCP Server tool in the answer, you are connected

Menu names checked against Anthropic’s help page on Nov 11, 2026 · your screen may differ slightly by app version

ChatGPT cannot connect PostHog MCP Server yet

PostHog MCP Server needs your own key to connect, but OpenAI’s help page only describes OAuth sign-in; there is no key option we could verify

What you can do instead

A · Use an app that can connect PostHog MCP Server

  • You need a PostHog MCP Server key (create it on the maker’s site) · Set it up once on claude.ai or the desktop app, then use it in chat · free accounts can add 1 · on Team/Enterprise an Owner adds it
  • You need a PostHog MCP Server key (create it on the maker’s site)
  • You need a PostHog MCP Server key (create it on the maker’s site)
  • You need a PostHog MCP Server key (create it on the maker’s site)

B · Others in Marketing & social media that work with ChatGPT

Picked from the most used in the same category, only ones that connect by address with no key

Works with Claude Code · about 5 min

You need a PostHog MCP Server key (create it on the maker’s site)

  1. Sign up and create a PostHog MCP Server key

    Open the maker’s site, sign up and create an API key for the next step. Check the maker’s site for pricing and free plans.

    How to get a key is in the maker’s README below

  2. Open Terminal

    Mac: press Command+Space and type Terminal · Windows: open PowerShell

  3. Paste this command and press Enter

    claude mcp add --transport http --scope user posthog https://mcp.posthog.com/mcp --header 'Authorization: Bearer {api_key}'

    Replace “your-value” with your key before pressing Enter

    Paste the key only into the app’s field, never into a chat or to anyone

  4. Type /mcp in Claude Code

    You should see PostHog MCP Server listed as connected

  5. Try it

    Use PostHog MCP Server and tell me what you can do for me, then show me one thing

    ✓ If Claude Code says it is using PostHog MCP Server or shows a PostHog MCP Server tool in the answer, you are connected

Menu names checked against Anthropic’s help page on Nov 11, 2026 · your screen may differ slightly by app version

Works with Cursor · about 5 min

You need a PostHog MCP Server key (create it on the maker’s site)

  1. Sign up and create a PostHog MCP Server key

    Open the maker’s site, sign up and create an API key for the next step. Check the maker’s site for pricing and free plans.

    How to get a key is in the maker’s README below

  2. Click this button to open Cursor

    Open in Cursor

    Cursor asks you to confirm; click Install

  3. Fill in your key

    In the PostHog MCP Server settings, Authorization is empty; add your key and save

    Paste the key only into the app’s field, never into a chat or to anyone

  4. Open the AI chat in Cursor in Agent mode

  5. Try it

    Use PostHog MCP Server and tell me what you can do for me, then show me one thing

    ✓ If Cursor says it is using PostHog MCP Server or shows a PostHog MCP Server tool in the answer, you are connected

Menu names checked against Cursor’s help page on Nov 11, 2026 · your screen may differ slightly by app version

Works with VS Code · about 5 min

You need a PostHog MCP Server key (create it on the maker’s site)

  1. Sign up and create a PostHog MCP Server key

    Open the maker’s site, sign up and create an API key for the next step. Check the maker’s site for pricing and free plans.

    How to get a key is in the maker’s README below

  2. Click this button to open VS Code

    Open in VS Code

    VS Code asks you to confirm; click Install

  3. Fill in your key

    In the PostHog MCP Server settings, Authorization is empty; add your key and save

    Paste the key only into the app’s field, never into a chat or to anyone

  4. Open the AI chat in VS Code in Agent mode

  5. Try it

    Use PostHog MCP Server and tell me what you can do for me, then show me one thing

    ✓ If VS Code says it is using PostHog MCP Server or shows a PostHog MCP Server tool in the answer, you are connected

Menu names checked against VS Code’s help page on Nov 11, 2026 · your screen may differ slightly by app version

Other apps that use MCP, such as Windsurf, Zed or Gemini CLI, each add servers differently. See how in the app list.

See every app that uses MCP →

Address for apps that connect over the web

Addresshttps://mcp.posthog.com/mcp

JSON settings are under “For developers” below

Stuck? Ask people who use PostHog MCP Server💬 Discussion →
For developers: Terminal commands and JSON settings

Over the web

Claude Code

claude mcp add --transport http --scope user posthog https://mcp.posthog.com/mcp --header 'Authorization: Bearer {api_key}'

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "posthog": {
      "url": "https://mcp.posthog.com/mcp",
      "headers": {
        "Authorization": "Bearer {api_key}"
      }
    }
  }
}

VS Code (mcp.json)

{
  "servers": {
    "posthog": {
      "type": "http",
      "url": "https://mcp.posthog.com/mcp",
      "headers": {
        "Authorization": "Bearer {api_key}"
      }
    }
  }
}

Values you fill in

  • Authorization secret required HTTP header
    Bearer token with your PostHog personal API key. Create one at https://us.posthog.com/settings/user-api-keys with the 'MCP Server' preset.

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

At a glance

GitHub starsi
40,758 (Stars for the whole repo)
This repo holds several MCP listings; its stars count once in rankings
Downloads per weeki
Not on npm/PyPI
Licencei
No licence stated
Connection
Runs in the cloud
Transport
streamable-http, sse
Latest versioni
1.0.1
Published to registryi
Jan 7, 2026
Code last changedi
Nov 12, 2026
Maker
PostHog
Registry status
Active

Which apps can use it

Based on how this server connects and on each app’s own docs, checked Nov 10, 2026.

Connect over the internet in

ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatOpen WebUIRaycast

All apps, with pros and cons →

Related guides

What it can do

The server asks you to sign in before it lists its tools.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 13, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified with the GitHub account PostHog, which owns the repo

  • ✓ Pass

    Still maintained

    Code last changed yesterday

  • ! Caution

    Has a licence

    GitHub could not identify the licence type; open the file to check

  • ✓ Pass

    Endpoint responds

    Responded in 22 ms (HTTP 401)

  • ✓ Pass

    Sign-in with OAuth

    Declares OAuth sign-in, so your AI app can take you to log in

  • … Not checked yet

    No hidden instructions in tool descriptions

    Not checked yet; we read the tool list when we check the endpoint

Discussion

Ask, share a tip or report that it does not work. Sorted by what people marked helpful.

No posts yet. Be the first to ask or share.

Posts here are written by users, not the PopNx team.

Sign in with Google to post

User reviews

No reviews yet

Sign in with Google to write a review

Compared with others in Marketing & social mediai

  • More stars than 100% of the other 3891 servers in this category
  • Published to the registry more recently than 0% of the other 3891 servers in this category
  • Basic checks equal to or better than 62% of the other 3891 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is PostHog MCP Server safe?

It passed 4 of 5 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

You need to fill in: Authorization

Does it run on my computer or in the cloud?

It runs in the maker’s cloud. Connect over the internet with nothing to install, but what you send passes through the maker’s servers.

Is it still maintained?

The GitHub repo last changed yesterday, and the latest version (1.0.1) reached the registry 10 months ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT on the web (full MCP on Business and above; Pro read-only).

What can I use instead?

In the same category: Openshorts, Google Ads + Meta Ads + SEO/GEO MCP, designlang

Others in the same category

Servers in the same category from other makers, sorted by stars.

Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

Openshorts

Turn long videos into viral vertical shorts and publish them to TikTok, Instagram and YouTube.

by mutonbyWidely used★ 7.9KUpdated 3 months ago

Runs in the cloud

designlang

Measure any site's design system, score how generic a page looks, check UI against your brand.

by Manavarya09Widely used↓ 2.5K/wk★ 5.1KUpdated 2 days ago

Runs on your computer

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

PostHog MCP

The official MCP server for PostHog. PostHog makes your product self-driving — it reads your data and ships changes with you, never without you — and this server gives MCP clients (Claude, Cursor, VS Code, Zed, and more) that full surface: analytics and SQL, dashboards, experiments, feature flags, surveys, session replay, error tracking, and more.

Documentation: https://posthog.com/docs/model-context-protocol

Use the MCP Server

Quick install

You can install the MCP server automatically into Cursor, Claude, Claude Code, VS Code and Zed by running the following command:

npx @posthog/wizard@latest mcp add
Manual install
  1. Obtain a personal API key using the MCP Server preset.
  1. Add the MCP configuration to your desktop client (e.g. Cursor, Windsurf, Claude Desktop) and add your personal API key
{

"mcpServers": { "posthog": { "command": "npx", "args": [ "-y", "mcp-remote@latest", "https://mcp.posthog.com/mcp", "--header", "Authorization:${POSTHOG_AUTH_HEADER}" ], "env": { "POSTHOG_AUTH_HEADER": "Bearer {INSERT_YOUR_PERSONAL_API_KEY_HERE}" } } } }

Minimal Node client (Streamable HTTP)

If you want to call MCP from Node (outside an IDE), use the Model Context Protocol SDK’s Streamable HTTP transport.

  • Auth: Use a personal PostHog API key and pass it as a Bearer token in Authorization.
  • Accept header: Clients must include Accept: application/json, text/event-stream.
  • Lifecycle: MCP requires initialize then a client notifications/initialized; the SDK performs this during connect().
// tools-list.mjs

import { Client } from '@modelcontextprotocol/sdk/client/index.js' import { StreamableHTTPClientTransport } from '@modelcontextprotocol/sdk/client/streamableHttp.js' import { ListToolsResultSchema } from '@modelcontextprotocol/sdk/types.js' import { mkdirSync, writeFileSync } from 'node:fs' import { join } from 'node:path' import { URL } from 'node:url'

const AUTH = process.env.POSTHOG_AUTH_HEADER // "Bearer phx_…" const MCP_URL = process.env.MCP_URL || 'https://mcp.posthog.com/mcp'

if (!AUTH?.startsWith('Bearer ')) { console.error('Set POSTHOG_AUTH_HEADER="Bearer phx_..."') process.exit(1) }

const transport = new StreamableHTTPClientTransport(new URL(MCP_URL), { requestInit: { headers: { Authorization: AUTH, // Required for Streamable HTTP (JSON + SSE) Accept: 'application/json, text/event-stream', }, }, serverInfo: { name: 'example-node-client', version: '0.0.1' }, })

const client = new Client({ name: 'example-node-client', version: '0.0.1' })

// Handles initialize + notifications/initialized await client.connect(transport)

const toolsResp = await client.request({ method: 'tools/list' }, ListToolsResultSchema) // { tools: [...] } const tools = toolsResp?.tools ?? [] console.log('Tools:', tools.length)

// (Optional) Save the full JSON-RPC envelope to a file (run from repo root) const envelope = { jsonrpc: '2.0', id: 'list-1', result: toolsResp } mkdirSync('reports', { recursive: true }) writeFileSync(join('reports', 'tools-list-http.json'), JSON.stringify(envelope, null, 2)) console.log('Saved: reports/tools-list-http.json')

await client.close()

Why these headers & steps?

  • Streamable HTTP requires the Accept header to include both JSON and SSE.
  • After initialize, the client must send notifications/initialized; the SDK does this for you in connect().

See also the main PostHog MCP docs for available tools and setup flows: https://posthog.com/docs/model-context-protocol

Example Prompts

Below are detailed examples showing realistic prompts and expected outputs:

Example 1: Feature flag management

Prompt: "Create a feature flag called 'new-checkout-flow' that's enabled for 20% of users, and show me the configuration"

What happens:

  1. The create-feature-flag tool creates the flag with a 20% rollout
  2. Returns the flag configuration including the key, rollout percentage, and targeting rules

Expected output:

Created feature flag 'new-checkout-flow':
  • Key: new-checkout-flow
  • Active: true
  • Rollout: 20% of all users
  • URL: https://us.posthog.com/project/ /feature_flags/12345
Example 2: Analytics query

Prompt: "How many unique users signed up in the last 7 days, broken down by day?"

What happens:

  1. The query-trends tool executes a trends query filtering for $signup events
  2. Returns daily counts with unique user aggregation

Expected output:

Signups over the last 7 days:
DateUnique users
2025-01-17142
2025-01-18156
2025-01-1998
......

Total: 847 unique signups

Example 3: A/B test creation and monitoring

Prompt: "Create an A/B test for our pricing page that measures conversion to the checkout page"

What happens:

  1. The experiment-create tool creates an experiment with control/test variants
  2. Sets up a funnel metric: pricing page view → checkout page view
  3. Creates an associated feature flag for variant assignment

Expected output:

Created experiment 'Pricing page test':
  • Feature flag: pricing-page-test
  • Variants: control (50%), test (50%)
  • Primary metric: Funnel conversion (pricing_page → checkout)
  • Status: Draft (ready to launch)
  • URL: https://us.posthog.com/project/ /experiments/789
Example 4: Error investigation

Prompt: "What are the top 5 errors in my project this week and how many users are affected?"

What happens:

  1. The query-error-tracking-issues-list tool fetches error groups sorted by occurrence count
  2. Returns error details including affected user counts

Expected output:

Top 5 errors this week:
  1. TypeError: Cannot read property 'id' of undefined
  • Occurrences: 1,247
  • Users affected: 89
  • First seen: 2 days ago
  1. NetworkError: Failed to fetch
  • Occurrences: 856
  • Users affected: 234
  • First seen: 5 days ago

...

Quick prompts

For simpler queries, you can use shorter prompts:

  • "What feature flags do I have active?"
  • "Show me my LLM costs this week"
  • "List my dashboards"
  • "What events are being tracked?"
Feature Filtering

You can limit which tools are available by adding query parameters to the MCP URL. If no features are specified, all tools are available. When features are specified, only tools matching those features are exposed.

https://mcp.posthog.com/mcp?features=flags,workspace,dashboards

Available features:

FeatureDescription
actionsActions
alertsAlerts
annotationsAnnotations
batch_exportsData pipelines
business_knowledgeBusiness knowledge
canvasCanvas
cohortsCohorts
conversationsConversations
coreCore utilities (project switching, docs search)
customer_analyticsCustomer analytics
dashboardsDashboards
data_catalogData catalog
data_schemaData schema exploration
data_warehouseData warehouse
debugDebug and diagnostic tools
docsPostHog documentation search
early_access_featuresEarly access features
endpointsEndpoints
engineering_analyticsEngineering analytics
error_trackingError tracking alerts
eventsEvent and property definitions
experimentsExperiments
feedbackSend feedback to the PostHog team
field_notesField notes
flagsFeature flags
health_issuesHealth
hog_function_templatesCDP function template browsing
hog_functionsFunctions
insightsRun insight queries
integrationsIntegrations
linksPostHog app URL generation
llm_analyticsAI observability
logsLogs
managed_migrationsManaged migrations
marketing_analyticsMarketing analytics
messagingMessaging
mcp_analyticsMCP analytics
mcp_storeMCP Store

| metrics | Metrics

Only the beginning is shown; read the rest in the repo