Installation überspringen. In unter 2 Minuten einsatzbereit.
Starte eine kostenlose Testphase auf cloud.anythingmcp.com, füge PostHog mit einem Klick hinzu und richte deinen KI-Client (Claude, ChatGPT, Copilot oder Cursor) auf den erzeugten MCP-Endpoint. Kein Docker, kein git clone, keinerlei Entwicklungserfahrung nötig.
Zusammenfassung
Lass deine KI Fragen zur Produktanalyse aus PostHog beantworten: schreibgeschütztes SQL (HogQL) über Events und Personen ausführen, Trends, Funnels und Retention berechnen, gespeicherte Insights und Dashboards lesen, Personen, Kohorten, Annotationen und Experimente nachschlagen sowie Insights und Feature Flags verwalten. PostHog Cloud (US oder EU) oder selbst gehostet, mit einem persönlichen API-Key.
Frag einfach
Beispiel-Prompts für PostHog
Klick auf einen Prompt, um ihn zu kopieren. In Claude, ChatGPT, Cursor, Gemini, Copilot oder OpenClaw einfügen — und gegen diesen Connector laufen lassen.
Claude ist KI und kann Fehler machen. Bitte Antworten gegenprüfen.
💡 Keine Installation? Nutze cloud.anythingmcp.com direkt. Einloggen, Connectors → PostHog klicken, Zugangsdaten einfügen, MCP-API-Key erzeugen, fertig. Kein Docker, kein
git clone, kein lokaler Server.
PostHog + ChatGPT
Lass deine KI Fragen zur Produktanalyse aus PostHog beantworten: schreibgeschütztes SQL (HogQL) über Events und Personen ausführen, Trends, Funnels und Retention berechnen, gespeicherte Insights und Dashboards lesen, Personen, Kohorten, Annotationen und Experimente nachschlagen sowie Insights und Feature Flags verwalten. PostHog Cloud (US oder EU) oder selbst gehostet, mit einem persönlichen API-Key.
Voraussetzungen
Die vollständige Setup-Anleitung ist in den Connector eingebaut (im Store sichtbar, wenn du den Connector auswählst). Benötigte Umgebungsvariablen für diesen Connector:
POSTHOG_HOST, POSTHOG_PERSONAL_API_KEY
Schritt 1 — Zugangsdaten holen
- Öffne in PostHog Settings → User → Personal API keys (US Cloud:
https://us.posthog.com/settings/user-api-keys, EU Cloud:https://eu.posthog.com/settings/user-api-keys) und klicke auf + Create a personal API key. - Gib dem Key ein Label (zum Beispiel „AnythingMCP“) und wähle den organization and project access: alle, eine Organisation oder bestimmte Projekte. Ein Key, der auf bestimmte Projekte beschränkt ist, kann keine Organisationen oder Projekte auflisten,
posthog_get_current_userfunktioniert aber trotzdem und nennt das aktuelle Projekt. - Wähle diese Scopes:
user:read,organization:read,project:readquery:read,person:read,cohort:read,experiment:readinsight:read,insight:write,dashboard:readfeature_flag:read,feature_flag:writeannotation:read,annotation:write
- Kopiere den Key sofort: PostHog zeigt ihn nur einmal an. Er beginnt mit
phx_(ein Projekt-Token mitphc_funktioniert hier nicht). Trage ihn ohne das Wort Bearer inPOSTHOG_PERSONAL_API_KEYein. - Setze
POSTHOG_HOSTauf die Adresse, unter der du PostHog öffnest:https://us.posthog.comfür US Cloud,https://eu.posthog.comfür EU Cloud oder die Adresse deiner selbst gehosteten Instanz, ohne abschließenden Schrägstrich und ohne Pfad. Die Ingestion-Hostsus.i.posthog.comundeu.i.posthog.comwerden abgelehnt, und ein Key funktioniert nur in der Cloud-Region, in der er erstellt wurde. Dann installiere den Connector. - Beginne mit
posthog_get_current_user: Das Tool zeigt, zu welchem PostHog-Nutzer der Key gehört, das aktuelle Projekt und die Projekte der Organisation.
Nur lesen: Erstelle den Key nur mit den :read-Scopes und schalte posthog_create_insight, posthog_update_insight, posthog_create_feature_flag, posthog_update_feature_flag und posthog_create_annotation aus. Abfragen ändern nie Daten, denn HogQL akzeptiert nur SELECT. Die KI sieht und ändert genau das, was der Nutzer des Keys darf.
Bei der Installation ausgeschaltet: posthog_delete_insight, posthog_delete_feature_flag und posthog_delete_annotation. PostHog löscht über die API nie endgültig: Diese Tools markieren das Insight, das Flag oder die Annotation als gelöscht, und in der PostHog-App lässt es sich wiederherstellen. Ein gelöschtes Flag wird ausgeschaltet, Code, der seinen Key prüft, bekommt dann false.
Projekt-IDs: Jedes Projekt-Tool braucht project_id, die Zahl in der PostHog-URL (/project/12345/...), die auch unter Settings → Project → General steht. @current wird ebenfalls akzeptiert, bezeichnet aber das Projekt, das der Nutzer zuletzt in der App geöffnet hat, und das kann sich ändern: Nimm lieber die Zahl. posthog_list_organizations und posthog_list_projects listen die übrigen auf.
Abfragen: posthog_run_hogql_query führt ein HogQL-SELECT (das SQL von PostHog) über events, persons, sessions und groups aus; Properties liest man als properties.$browser oder person.properties.email. Filtere immer auf die Zeit (zum Beispiel WHERE timestamp >= now() - INTERVAL 7 DAY): Ungefilterte Scans sind langsam und verbrauchen das Lesebudget. Ohne LIMIT kommen 100 Zeilen zurück, mit LIMIT bis zu 50.000. OFFSET wird abgelehnt, deshalb blättert die KI über timestamp oder id. Datumsangaben gelten in der Zeitzone des Projekts, nicht in UTC. Für Trends, Funnels, Retention, Stickiness, Lifecycle und Pfade gibt es posthog_run_insight_query; Conversion- und Retention-Quoten werden aus den count-Werten berechnet. Der Query-Endpunkt ist für Ad-hoc-Analysen gedacht, nicht für Massenexporte.
Insights, Dashboards und Flags: posthog_get_insight liefert standardmäßig das zuletzt gecachte Ergebnis; refresh blocking berechnet ein veraltetes neu. posthog_get_dashboard liefert die Kacheln mit ihren Insights. Feature Flags bestimmen, was echte Nutzer sehen: Bevor die KI ein Flag anlegt oder ändert, zeigt sie dir den Flag-Key, active und den Rollout und wartet auf dein Ja. Ein neues Flag ist mit active false oder einem Rollout von 0 am sichersten. Änderungen schicken die version des Flags aus dem letzten Lesen mit, damit keine fremde Änderung überschrieben wird.
Paginierung: Listen-Tools nehmen limit und offset und liefern count, next (null auf der letzten Seite) und results. Antworten über 200 KB werden abgeschnitten.
Rate Limits: Sie gelten pro Organisation und werden von allen Keys und Nutzern geteilt. Normale Lese- und Schreibzugriffe erlauben 480 Anfragen pro Minute und 4.800 pro Stunde, Analysen wie Personen und Insight-Berechnungen 240 pro Minute und 1.200 pro Stunde. Der Query-Endpunkt erlaubt 240 pro Minute und 2.400 pro Stunde, höchstens 3 laufende Abfragen pro Projekt, und zehrt von einem stündlichen Lesebudget pro Projekt (im kostenlosen Plan kleiner). Über dem Limit antwortet PostHog mit 429; ist das Budget aufgebraucht, steht api_queries_budget_exceeded in der Antwort, gecachte Ergebnisse funktionieren aber weiter.
Häufige Fehler: 401 heißt, dass der Key falsch, gelöscht oder aus der anderen Cloud-Region ist: Prüfe POSTHOG_HOST. 403 „API key missing required scope“ nennt den fehlenden Scope (du kannst die Scopes des Keys später ändern); andere 403 bedeuten, dass der Key auf andere Projekte oder Organisationen beschränkt ist oder die Organisation persönliche API-Keys für Mitglieder nicht erlaubt. 404 „Project not found.“ ist eine falsche project_id oder eine, die der Nutzer nicht sehen kann. 400 nennt das ungültige Feld und enthält bei HogQL den Parser-Fehler. 409 bei einem Flag heißt, dass seine version veraltet ist: Lies das Flag neu.
Der Connector erfasst keine Events, setzt keine Person-Properties, löscht keine Personen, liest keine Session Replays oder Surveys, legt keine Dashboards, Kohorten und Experimente an und bearbeitet sie nicht und verwaltet keine Batch Exports, Mitglieder oder Abrechnung.
Schritt 2 — Adapter installieren
curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d
Schritt 3 — Connector in ChatGPT hinzufügen
Deine Server-URL: Öffne in AnythingMCP MCP Servers → den Server, auf dem dieser Connector liegt, und kopiere seine URL (
https://cloud.anythingmcp.com/mcp/…). Setze sie überall ein, wo diese AnleitungYOUR_SERVER_IDzeigt.
ChatGPT verbindet MCP-Server als eigene Apps im Entwicklermodus (Developer mode). Den gibt es in den kostenpflichtigen Tarifen, nicht im kostenlosen. In Business- und Enterprise-Workspaces muss ihn eventuell erst ein Admin freigeben.
- Öffne in ChatGPT Settings → Security and login und aktiviere Developer mode.
- Geh zu chatgpt.com/plugins und klicke auf +.
- Gib einen Namen und eine kurze Beschreibung ein, z. B. Name:
PostHog. - Trag unter Connection die MCP-Server-URL
https://cloud.anythingmcp.com/mcp/YOUR_SERVER_IDein und erstelle die Verbindung. - Wenn ChatGPT danach fragt, meldest du dich bei AnythingMCP an (OAuth) und erlaubst den Zugriff.
Verfügbare Tools
| Tool | What it does |
|---|---|
posthog_get_current_user | Get the user the personal API key belongs to: uuid, email and name, the current project (id, name, project_id, timezone), the current… |
posthog_list_organizations | List the organizations the user belongs to: id (a UUID), name, slug, membership_level, and each organization's projects |
posthog_list_projects | List the projects of an organization: id (the project_id every other tool takes), name, project_id, timezone, tags, is_demo and… |
posthog_get_project | Get one project's settings: name, timezone, week_start_day, base_currency, app_urls, test account filters, group types, whether events… |
posthog_run_hogql_query | Run one read-only HogQL (PostHog SQL) SELECT over events, persons, sessions, groups or warehouse tables and return columns, results (rows… |
posthog_run_insight_query | Run one of PostHog's insight calculations without saving it: TrendsQuery, FunnelsQuery, RetentionQuery, StickinessQuery, LifecycleQuery or… |
posthog_list_persons | List or search persons (identified users and anonymous visitors): id, uuid, name, distinct_ids, properties, created_at and last_seen_at.… |
posthog_get_person | Get one person by numeric id or UUID: name, distinct_ids, all person properties (email, initial UTM and referrer, geo), created_at and… |
posthog_list_insights | List saved insights (charts): id, short_id, name, description, query, tags, favorited, dashboard_tiles, created_by and last_modified_at |
posthog_get_insight | Get one insight by numeric id or 8-character short_id: name, description, query, result, columns, last_refresh, is_cached, the hogql it ran… |
posthog_create_insight | Save a new insight (chart) in the project from a query: a product analytics chart or a SQL insight |
posthog_update_insight | Change a saved insight: name, description, query, tags or favorited |
posthog_delete_insight | Delete a saved insight (PostHog marks it deleted; it disappears from every dashboard and can be restored in the app) |
posthog_list_dashboards | List dashboards: id, name, description, pinned, tags, created_by, created_at and last_viewed_at |
posthog_get_dashboard | Get one dashboard with its filters and tiles: each tile carries its insight (id, short_id, name, query and the last cached result) or a… |
posthog_list_feature_flags | List feature flags: id, key, name (the description), active, filters (release conditions with rollout_percentage, variants, payloads)… |
posthog_get_feature_flag | Get one feature flag by id: key, name, active, filters (release condition groups with properties and rollout_percentage, multivariate… |
posthog_create_feature_flag | Create a feature flag |
posthog_update_feature_flag | Change a feature flag: switch it on or off, change its rollout or targeting, rename its description, archive it or retag it |
posthog_delete_feature_flag | Delete a feature flag (PostHog marks it deleted and switches it off; code that checks the key then gets false) |
posthog_list_cohorts | List cohorts (saved groups of persons): id, name, description, count (persons in it), is_static, is_calculating, filters and created_at |
posthog_get_cohort | Get one cohort by id: name, description, its definition (filters or query), count of persons, whether it is static or behavioral… |
posthog_list_annotations | List annotations (notes on charts such as releases or incidents): id, content, date_marker, scope, the insight or dashboard they belong to… |
posthog_get_annotation | Get one annotation by id: content, date_marker, scope (project, organization, dashboard or insight), emoji, the insight or dashboard it is… |
posthog_create_annotation | Add an annotation, a note shown on charts at a point in time, e.g. a release, a campaign start or an incident |
posthog_delete_annotation | Delete an annotation (PostHog marks it deleted; it disappears from every chart and can be restored) |
posthog_list_experiments | List A/B test experiments: id, name, description, status, start_date, end_date, feature_flag_key, type, conclusion, archived and created_by |
posthog_get_experiment | Get one experiment by id: status, start and end dates, its feature flag and variants, metrics, parameters, exposure cohort, conclusion and… |
Beispiel-Prompts
- „Wie viele eindeutige Nutzer haben letzte Woche täglich unsere Preisseite besucht, und mit welchen Browsern?“
- „Wie hoch war in den letzten 30 Tagen die Conversion Rate unseres Signup-Funnels, vom Aufruf der Preisseite bis zum abgeschlossenen Checkout?“
- „Welche Feature Flags sind gerade aktiv, und mit welchem Rollout-Prozentsatz?“
- „Füge in unserem Hauptprojekt eine Annotation für heute hinzu: Frühjahrskampagne gestartet.“
FAQ
Funktioniert der kostenlose ChatGPT-Tarif mit eigenen MCP-Connectors? Nein. Eigene MCP-Verbindungen brauchen den Entwicklermodus, und den gibt es nur in kostenpflichtigen Tarifen.
Nächste Schritte
- Connector-Startseite
- Mit Claude verbinden
- Mit Cursor verbinden
- Mit Gemini verbinden
- Mit Meta Muse verbinden
War dieser Guide hilfreich?