01 · Overview
What the Ryze AI PostHog MCP server is
The short version
- 01PostHog connects to a Ryze AI workspace with a personal API key and your host. Your AI client then connects to Ryze AI with one URL (see Setup).
- 02One tool reads (
posthog__read, which also runs HogQL), one changes (posthog__write) and one deletes (posthog__delete). - 03They reach events, insights, funnels, dashboards, feature flags, cohorts and persons in one PostHog project, within the scopes on the key.
- 04Google Ads, Meta Ads, TikTok Ads and GA4 answer on the same connection, so a question can join campaign cost with the events behind it.
- 05Works with any Ryze AI plan or trial. Paid Ads is $89/mo with a 7-day free trial.
- Server name
- Ryze AI (PostHog tools)
- Endpoint
- https://connector.get-ryze.ai/mcp
- Transport
- Remote MCP over HTTP
- Client sign-in
- OAuth to Ryze AI, up to 20 workspaces per connection
- PostHog sign-in
- Personal API key (phx_) and a host, one project per connection
- PostHog hosts
- US Cloud, EU Cloud or a self-hosted URL
- PostHog tools
- 3 (1 read · 1 write · 1 delete)
- Also on this URL
- Google Ads, Meta Ads, TikTok Ads, GA4, Search Console, Shopify
- Price
- Any Ryze AI plan or trial · Paid Ads $89/mo
- Checked
- November 8, 2026
“PostHog MCP” can mean four things in 2026. PostHog runs its own free, hosted MCP server at https://mcp.posthog.com/mcp that covers most PostHog products, installs it into editors with the PostHog Wizard, and ships a plugin for Claude Code and other clients. The Ryze AI server is a separate one: it reaches PostHog through your personal API key and shares a URL with the Ryze AI ad and analytics tools. This page documents the Ryze AI server and compares it with PostHog’s options in section 06.
01
One key, scoped by you
The connection uses a PostHog personal API key. Whatever scopes you tick when you create it decide what can be read or changed, and PostHog rejects anything outside them.
02
HogQL on request
posthog__read runs HogQL analytics queries over events, persons and sessions, so a plain-language question turns into SQL against your own project.
03
Saved objects included
Projects, insights, dashboards, feature flags, cohorts, persons and event definitions can all be listed and opened as well as queried.
04
Edits in their own tool
posthog__write creates or updates insights, dashboards, feature flags and cohorts. It is a separate tool, so you can hold it for approval without slowing down reads.
05
Delete only when asked
posthog__delete removes an object by path, for example a cohort. The deletion cannot be undone, so the agent only runs it on an explicit request.
06
Your host, your region
Enter https://us.posthog.com, https://eu.posthog.com or the URL of a self-hosted instance when you connect.
07
Connect from the chat
Ask the Ryze AI agent in Claude or ChatGPT to connect PostHog and it sends a one-time link, valid once and for 24 hours, where you paste the key and host.
08
Analytics next to spend
Google Ads, Meta Ads, TikTok Ads and GA4 tools run on the same URL, so cost per campaign and the events it produced come back in one answer.
02 · Tool reference
Three PostHog tools and what each covers
The tool names come from the Ryze AI connector’s source. No workspace had PostHog connected on the day this page was checked, so the live tool list and the exact input fields were not inspected, and none are listed here. The agent reads the schemas when it calls a tool.
| Tool | Access | What it does | Worth knowing |
|---|---|---|---|
posthog__read | read | Reads PostHog data for the connected project: projects, insights, dashboards, feature flags, cohorts, persons and event definitions. Also runs HogQL analytics queries. | HogQL needs a time window and a row limit of 1,000 at most; PostHog stops unbounded queries. |
posthog__write | write | Creates or updates PostHog objects such as insights, dashboards, feature flags and cohorts. | Limited by the write scopes on the personal API key. A read-only key makes PostHog reject every change. |
posthog__delete | delete | Deletes a PostHog object by path, for example a cohort. The deletion is irreversible. | Ryze AI describes deleting insights, dashboards, feature flags and cohorts, and only on an explicit request. |
A HogQL question, as the agent might write it
SELECT properties.utm_campaign AS campaign, count() AS signups
FROM events
WHERE event = 'sign_up'
AND timestamp >= now() - INTERVAL 30 DAY
GROUP BY campaign
ORDER BY signups DESC
LIMIT 100Sign-up events from the last 30 days grouped by campaign, with a time window and a row limit because PostHog stops unbounded queries. The event name is an example; the agent can list your event definitions first to find the right one. Ad and analytics tools on the same URL are documented on Google Ads MCP, Meta Ads MCP and Google Analytics MCP.
03 · Use cases
Put PostHog events next to ad spend
The join between an ad platform and PostHog runs through the properties PostHog stores on each event. When ad URLs carry utm_source, utm_medium and utm_campaign and your PostHog setup captures them as event properties, a HogQL query can group conversions by campaign, and the ad tools return cost for the same campaign names. If a property is not captured, ask the agent to list your event definitions to see what is there.
- “Pull Google Ads cost by campaign for October, count sign-up events in PostHog by utm_campaign for the same dates, and give me cost per sign-up.”
- “Which Meta Ads campaigns from the last 30 days sent visitors who reached the pricing page but did not sign up?”
- “Write a HogQL query for daily unique visitors with utm_medium set to cpc, limited to the last 14 days.”
- “List the dashboards in this project and say what each one tracks.”
- “Which insights have not been opened or edited for 90 days?”
- “Create an insight for sign-ups per day and add it to the dashboard I name, after showing me the definition.”
- “List every feature flag with its rollout percentage and tell me which ones sit at 100 percent.”
- “Show the cohorts defined by a property filter and which ones are empty.”
- “Create a cohort of people who signed up from a paid campaign in the last 30 days. Show the filter before saving.”
- “Collect the stale cohorts into a list. Do not change anything yet.”
- “Rename this insight and move it to another dashboard, then read it back to confirm.”
- “Delete the cohorts I confirm one by one.”
Every answer comes from your own PostHog project and ad accounts, so no sample numbers are shown here. For the web analytics side of the same questions, see the best MCP servers for Google Analytics.
04 · Setup
Connect PostHog once, then add the URL to each client
Step 1: link your PostHog project in Ryze AI
- 01In PostHog, open Settings, Personal API keys and click Create key. Grant read access to the projects you want, including the Query and Insight scopes. Copy the key, which starts with
phx_. - 02In the Ryze AI app, open Integrations, click Connect on the PostHog card and paste the key.
- 03Enter the Host:
https://us.posthog.comfor US Cloud,https://eu.posthog.comfor EU Cloud, or your self-hosted URL. Click Continue. - 04Pick the Project and click Save. The card shows Connected, and View lets you change the project later.
Prefer to stay in the chat? Ask the Ryze AI agent in Claude or ChatGPT to connect PostHog. It sends a one-time link, valid once and for 24 hours, to a page where you paste the key and enter the host. Screens for each step are in the Ryze AI help center.
Claude on the web or desktop
- 01Go to Customize, Connectors.
- 02Choose + Add, then Add custom connector. Enter Ryze AI as the name and
https://connector.get-ryze.ai/mcpas the MCP server URL, then Continue. Keep OAuth sign-in; do not choose No sign in. - 03Press Add, then Connect on the Ryze AI connector, sign in, choose the workspace that holds PostHog and press Allow connection.
- 04Claude keeps the tool list from the moment the connector is added. If you connected PostHog after that, remove the connector, add it again and start a new chat.
Custom connectors work on Free, Pro, Max, Ultra, Team and Enterprise, and Free allows one. On Team and Enterprise an Owner adds Ryze AI under Organization settings, Connectors, and each member then clicks Connect.
ChatGPT
Per OpenAI, custom MCP server connections are available on ChatGPT Business and Enterprise/Edu on the web, and Pro can connect with read and fetch permissions only. On Business, an admin or owner creates and publishes it. Open Plugins (chatgpt.com/plugins), select the plus button, then Add custom MCP server. Name it Ryze AI, enter the URL under Connection, choose OAuth, accept the risk warning, create the plugin and review the discovered tools. Sign in to Ryze AI, choose the workspace and click Allow connection.
The older route in Settings, Apps, Advanced settings, Developer mode, Create app also works for accounts that still show it, as the Ryze AI help center describes. After you connect PostHog later, remove the app, install it again and start a new chat. Plan rules differ between sources; the OpenAI article above is the one this page follows.
Claude Code
claude mcp add --transport http ryze https://connector.get-ryze.ai/mcp --scope userRun /mcp, select ryze and finish sign-in in the browser. --scope user loads it in every project. Claude Code needs a Pro, Max, Ultra, Team, Enterprise or Console account.
Cursor
{ "mcpServers": {
"ryze": { "url": "https://connector.get-ryze.ai/mcp" }
} }Save it as ~/.cursor/mcp.json for all projects or .cursor/mcp.json for one. Cursor runs OAuth with PKCE, so you sign in on the Ryze AI page and click Allow connection. Cursor asks for approval before using MCP tools by default. The developer page has an Add to Cursor link and configs for other editors.
Grok
On grok.com, go to Connectors, click New Connector, choose Custom, enter the URL and sign in to Ryze AI. In Grok Bot, the Ryze AI help center says Ryze AI is listed under Connect apps: search Ryze AI, Add and sign in. If it is not listed, add the URL as a custom MCP server. On Grok Business and Enterprise a team admin adds the connector in the console first.
05 · Permissions and scopes
What the key can reach, and how to keep it read-only
| Who can connect | Whoever can create a PostHog personal API key for the project. Ryze AI asks only for that key and the host. |
| Which project | One connection covers one PostHog project. After you paste the key and host, you pick the Project, and you can change it later under View on the PostHog card. |
| What the key reaches | The key reaches the projects you granted when you created it, within the scopes you ticked. A project missing from Ryze AI usually means the key has no read access to it. |
| Multiple projects | PostHog is not on the Ryze AI list of platforms that support several accounts. To switch, click View on the card, disconnect with the trash icon and connect again. Another project can sit in another workspace. |
| Key access in PostHog | Needed | Ryze AI action |
|---|---|---|
| Read access to the project | Required | List and open insights, dashboards, flags, cohorts and persons |
| Query | Required | Run HogQL queries |
| Insight | Required | Read saved insights |
| Write access to a scope (for example insights or feature flags) | Optional | Create or edit objects in that scope only |
From the Ryze AI help center, checked Nov 8, 2026. Read access is enough for reporting. To keep the agent read-only, give the key read scopes only, and PostHog rejects any change. What the agent can change is limited by the scopes on the key, so add write access only to the scopes it should edit.
Removing access
In Ryze AI, open View on the PostHog card and use the trash icon to disconnect. Then delete the personal API key under Settings, Personal API keys in PostHog so the key stops working everywhere. In Claude, open Customize, Connectors, Ryze AI and click Disconnect, which cuts off every workspace at once.
06 · Compare
Ryze AI vs PostHog’s own MCP server
Four things called PostHog MCP
| Option | Built for | How you connect | PostHog data | Changes |
|---|---|---|---|---|
| Ryze AI hosted server | Marketers and agencies who also run ads | Personal API key and host pasted into Ryze AI, then OAuth sign-in to Ryze AI from the client | Events, insights, dashboards, flags, cohorts, persons, HogQL | Create, update and delete, unless the key is read-only |
| PostHog hosted MCP server (mcp.posthog.com/mcp) | Anyone who wants all of PostHog in an AI client | OAuth with PostHog, or a personal API key in a header | Analytics, flags, experiments, error tracking, surveys, SQL, session replay and many more | Create, update and delete across products; read-only mode available |
| PostHog Wizard install (npx @posthog/wizard mcp add) | Developers who want the PostHog server in an editor | Installs the same hosted server into Cursor, Claude Code, Claude Desktop, Codex, VS Code or Zed | Same as the hosted server | Same as the hosted server |
| PostHog AI plugin for Claude Code and others (GitHub PostHog/ai-plugin) | Claude Code, Codex, Cursor and Gemini CLI users | Plugin install; PostHog says it provides the same MCP tools plus slash commands | Same as the hosted server | Same as the hosted server |
Sources: PostHog’s MCP overview, tools reference and FAQ, checked Nov 8, 2026. PostHog’s server is free to connect to; some of its tools use LLMs internally and may be billed as PostHog AI spend.
Ryze AI and PostHog’s server side by side
| Ryze AI | PostHog hosted MCP server | |
|---|---|---|
| Tools | 3: read, write, delete | More than 1,000 tools across dozens of product categories, per its tools reference |
| PostHog products covered | Analytics objects: insights, dashboards, flags, cohorts, persons, event definitions, HogQL | Also error tracking, experiments, surveys, session replay, data warehouse and more |
| Sign-in | Personal API key in Ryze AI, then OAuth to Ryze AI | OAuth to PostHog recommended; a personal API key works for clients without OAuth |
| Read-only | Give the key read scopes only | Header x-posthog-read-only or query parameter readonly=true, or read scopes on the key |
| Tool filtering | By key scopes and Tool approvals | features and tools query parameters |
| Several projects | One per connection; another workspace for another project | One connection per organization and project, or switch tools when not pinned |
| Other data in the same chat | Google Ads, Meta Ads, TikTok Ads, GA4, Search Console, Shopify | PostHog only |
| Price | Any Ryze AI plan or trial. Paid Ads $89/mo, 7-day free trial | Free to connect; some AI-powered tools may bill as PostHog AI spend |
As published on Nov 8, 2026. PostHog adds tools to its server often, so check its tools reference before you decide.
Which to pick: if the work stays inside PostHog, PostHog’s own server covers far more of it (error tracking, experiments, surveys, session replay, the data warehouse) and signs in with OAuth, so it is the better fit for engineers and product teams. Ryze AI fits when the question crosses tools, such as sign-ups by Google Ads campaign or Meta Ads spend beside a funnel, or when the same login already runs your ad accounts. Nothing stops you from adding both to one client.
07 · API limits
PostHog limits an agent runs into
| Ryze AI HogQL bounds | Queries need a time window and a row limit of 1,000 at most. PostHog stops unbounded queries. |
| Analytics endpoints | PostHog's API docs set 240 requests per minute and 1,200 per hour for analytics endpoints such as calculating insights or retrieving persons. |
| Query endpoint | 2,400 requests per hour. Queries made with a personal API key also draw from an hourly read budget that PostHog documents on its queries page. |
| Events values endpoint | 60 requests per minute and 300 per hour, and a personal API key must name an event. |
| Counted per key | PostHog's default API limits only count requests made with a personal API key, and they count per key. Requests with OAuth skip them. |
| PostHog hosted MCP limits | PostHog's own MCP server allows 480 requests per minute and 4,800 per hour per credential. These apply when a client connects to mcp.posthog.com, not to the Ryze AI connection. |
| Over the limit | PostHog's MCP server answers 429 with a Retry-After header. Wait for that long before asking again. |
| One project | A connection reads and changes one PostHog project at a time. |
| Client plans | Claude: any plan, with one custom connector on Free. ChatGPT: custom MCP connectors on Business and Enterprise/Edu, read and fetch only on Pro, per OpenAI. |
From PostHog’s API docs and MCP FAQ, checked Nov 8, 2026. Some endpoints set their own limits per project or per organization. Ryze AI does not publish which PostHog endpoints its tools call, so treat the numbers as the ceiling PostHog documents.
08 · Approvals and safety
How you keep control of edits
Default setting
The Tool approvals picker in the Ryze AI chat starts on Skip all approvals for PostHog, so the agent runs its tools on its own. Change it before you connect a project you care about.
Approvals in the Ryze AI app
Approve write & delete lets reads run freely and holds every change for you. Manual approve holds every tool that touches your data. Scheduled tasks run without an approval step.
Approvals in Claude
Under Customize, Connectors, Ryze AI, Tool permissions, leave the read tool on automatic and set the write and delete tools to Needs approval.
Read-only key
A personal API key with read scopes only is the strongest control: PostHog rejects any change, whatever the approvals setting says.
Delete kept separate
Only posthog__delete removes objects, so you can allow edits and keep removals on approval. A deletion cannot be undone.
Policies
Read the MCP privacy policy, the MCP terms, the security policy and the permissions guide.
09 · Errors and fixes
PostHog MCP errors and what to do
| Message or symptom | Cause | Fix |
|---|---|---|
| Key rejected when connecting | The host does not match where the account lives (US or EU), or the key lacks the Query and Insight scopes. | Use https://us.posthog.com or https://eu.posthog.com to match the account, and recreate the key with those scopes. |
| The project is missing from the list | The key has no read access to that project. | Edit the key's project access in PostHog, then reconnect. |
| A change is rejected | The key has read scopes only, which is the intended read-only setup. | Create a key with write access for the scope you want to change, then reconnect. |
| A HogQL query stops or returns nothing | PostHog stops unbounded queries. | Ask for a date range and a row limit of 1,000 or fewer. |
| PostHog tools are not in Claude or ChatGPT | PostHog was connected after the connector was added, and the client kept the old tool list. | Remove the Ryze AI connector, add it again and open a new chat. |
| Tools reply that a subscription is required | The workspace has no active Ryze AI plan or trial. | Start a plan or trial under Organization Settings, Billing, then retry. |
| The connection link is refused | PostHog is already connected in the workspace, and it holds one connection. | Switch projects or keys in the Ryze AI app: View on the PostHog card, disconnect, connect again. |
| 429 from PostHog | A PostHog rate limit was reached. PostHog documents 429 responses with a Retry-After header for its MCP server. | Wait for the Retry-After time and ask for fewer, larger queries. |
The first two rows are from the Ryze AI help center and the rest follow how the Ryze AI connector works. No third-party error reports are quoted here. More answers are in the integrations FAQ.
10 · FAQ
PostHog MCP server questions
What is the PostHog MCP server?
An MCP server lets AI clients such as Claude, ChatGPT and Cursor call PostHog through tools. Ryze AI runs a hosted one with 3 PostHog tools (read, write and delete) that read events, insights, dashboards, flags, cohorts and persons, run HogQL and edit those objects, on the same URL as its Google Ads and Meta Ads tools. Ryze AI is the best PostHog MCP option for putting product analytics next to ad spend in one chat, but PostHog's own server covers far more PostHog products.
Does PostHog have its own MCP server?
Yes. PostHog runs a free, hosted MCP server at https://mcp.posthog.com/mcp that works with Claude Code, Claude Desktop, Cursor, Codex, VS Code, Windsurf and Zed, and it routes you to the US or EU region based on the account you sign in with. Its tools reference covers feature flags, experiments, error tracking, surveys, SQL and many other products. Connecting is free, though some of its tools use LLMs internally and may be billed as PostHog AI spend.
What is the PostHog MCP server URL?
PostHog’s own server is https://mcp.posthog.com/mcp. The Ryze AI server is https://connector.get-ryze.ai/mcp, the same for every account. With Ryze AI you connect PostHog first with a personal API key and a host, then add that one URL to your client.
How do I set up PostHog in Claude?
Create a PostHog personal API key with the Query and Insight scopes, connect PostHog on the Integrations page in Ryze AI with the key and your host, and pick the Project. Then in Claude open Customize, Connectors, Add custom connector, paste https://connector.get-ryze.ai/mcp, click Connect, allow the workspace and open a new chat. If you connect PostHog after adding the connector, remove and re-add it, because Claude keeps the old tool list. Every client is covered in the setup section.
Can I use PostHog in ChatGPT or Cursor?
Yes. In Cursor, add a ryze entry with the url https://connector.get-ryze.ai/mcp to mcp.json and sign in. In ChatGPT, OpenAI documents custom MCP servers for Business and Enterprise/Edu on the web, with read and fetch permissions only on Pro; add the URL under Plugins with OAuth. On Business an admin or owner has to create and publish it.
Is the PostHog MCP server free?
PostHog says connecting to its own MCP server and calling its tools is free, with normal PostHog usage billing for the data your queries touch. Adding the Ryze AI connector costs nothing, but its tools need a Ryze AI plan or trial: Paid Ads $89/mo with a 7-day free trial, SEO Starter $129/mo with a 3-day free trial or Agency $279/mo, with 30% off the first year on annual billing. See the pricing page.
Can the AI change or delete things in PostHog?
Yes, unless the key is read-only. posthog__write creates or updates insights, dashboards, feature flags and cohorts, and posthog__delete removes those objects when you explicitly ask; a deletion cannot be undone. The Ryze AI chat starts on Skip all approvals and scheduled tasks run without an approval step, so switch Tool approvals to Approve write & delete or Manual approve if you want to review changes.
How do I keep the PostHog connection read-only?
Give the personal API key read scopes only. PostHog then rejects any change, whatever the approvals setting is. For a second layer, set write and delete tools to Needs approval in Claude under Customize, Connectors, Ryze AI, Tool permissions, or switch the Ryze AI chat to Approve write & delete.
Which API key scopes and host does PostHog need?
A personal API key that starts with phx_, with read access to the projects you want, including the Query and Insight scopes. Add write access only to the scopes the agent should change. The host is https://us.posthog.com for US Cloud, https://eu.posthog.com for EU Cloud, or your self-hosted URL. If the key is rejected, check that the host matches where the account lives.
Can I connect more than one PostHog project?
Each connection holds one PostHog project, and PostHog is not on the Ryze AI list of platforms that support several accounts. To switch projects, click View on the PostHog card, disconnect with the trash icon and connect again. Another project can live in another workspace, and one Claude or ChatGPT connection can cover up to 20 workspaces.
Can Claude run HogQL against PostHog?
Yes. posthog__read runs HogQL analytics queries over events, persons and sessions. PostHog stops unbounded queries, so each query needs a time window and a row limit of 1,000 at most. Name the date range you want in the prompt.
What are the PostHog API rate limits?
PostHog's API docs set 240 requests per minute and 1,200 per hour for analytics endpoints, 2,400 per hour for the query endpoint, and 60 per minute and 300 per hour for the events values endpoint. The default limits count requests made with a personal API key, per key. PostHog's own MCP server adds 480 requests per minute and 4,800 per hour per credential, which applies when a client connects to mcp.posthog.com rather than to Ryze AI.
Why are the PostHog tools missing in Claude or ChatGPT?
The client kept the tool list from before PostHog was connected. Remove the Ryze AI connector, add it again and open a new chat. If the tools reply that a subscription is required, the workspace has no active Ryze AI plan or trial; without one the connector can only list workspaces and connect platforms.
11 · Compatibility
Where the PostHog tools run
12 · Related
Other integrations and guides
- All Ryze AI integrations
- HubSpot MCP server
- Shopify MCP server
- Best MCP servers for Google Analytics
- How to connect Claude to Google Analytics
- Google Ads MCP server
- Meta Ads MCP server
- Google Analytics MCP server
- How to connect Claude to Google Ads
- How to connect Claude to Meta Ads
- Ryze AI pricing
- Ryze AI for developers: API keys and config
Changelog
Page checked Nov 8, 2026. First version. Setup steps, scopes and approvals were checked against the Ryze AI help center and the Ryze AI connector’s source. PostHog’s server, rate limits and read-only options were checked against posthog.com/docs. The tool names come from source; PostHog was not connected in a live workspace, so the live tool list was not seen.










