posthog-mcp-server について
posthog-mcp-serverは、AIアシスタントからPostHogのプロダクト分析データを照会し、ユーザー、フラグ、コホート、実験の情報を確認するためのサーバーです。PostHog REST APIをツール化し、イベント検索、ダッシュボード、インサイト、実験結果の取得に対応します。
主な機能
- 01イベントの絞り込みとクエリ
- 02ユーザー検索とプロフィール表示
- 03ダッシュボード一覧と保存済みインサイトの実行
- 04フィーチャーフラグの一覧と評価
- 05コホートと実験の確認
- 06プロジェクト情報とアクション定義の取得
活用シーン
- 01最近のページビューイベントの確認
- 02ユーザーごとのフラグ値の確認
- 03実験結果とバリアントの調査
- 04コホート人数とダッシュボードのインサイトの確認
MCP 対応
イベント、ユーザー、ダッシュボード、インサイト、フラグ、コホート、実験の照会など、PostHog REST APIの操作をツールとしてMCPクライアントに公開します。PostHog APIキーが必要で、インスタンスのホストとデフォルトプロジェクトも指定できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
PostHog MCP サーバー
PostHog に AI アシスタントを接続し、Model Context Protocol を通じてイベント、人物、インサイト、ダッシュボード、フィーチャーフラグ、コホート、実験をクエリできます。
Claude Desktop、Cursor、Windsurf、Cline、Continue、および MCP 互換クライアントで動作します。
機能
| ツール | 説明 |
|---|---|
list_events | フィルター(イベント名、人物、日付範囲、プロパティ)を指定してイベントをクエリします |
get_person | distinct_id を使って人物(ユーザー)を取得します — プロパティ、作成日、イベント数 |
list_persons | ページネーションを使って人物を検索し、一覧表示します |
list_dashboards | すべてのダッシュボードを一覧表示します — 名前、タグ、ウィジェット数 |
get_dashboard | 指定したダッシュボードとそのインサイト、ウィジェットを取得します |
execute_insight | 保存済みのインサイト(トレンド、ファネルなど)を実行し、結果を取得します |
list_feature_flags | すべてのフィーチャーフラグを一覧表示します — キー、有効状態、ロールアウト率 |
evaluate_feature_flag | 指定したユーザーについてフラグを評価し、バリアント値を取得します |
list_cohorts | コホートを一覧表示します — 名前、タイプ(動的/静的/SQL)、人物数 |
list_experiments | A/B テストを一覧表示します — 名前、ステータス、フィーチャーフラグ、日付 |
get_experiment | バリアントデータと統計的有意性を含む実験結果を取得します |
list_actions | カスタムイベントのアクション/定義を一覧表示します |
get_project_info | プロジェクト名、ID、設定、データリージョンを取得します |
クイックスタート
1. PostHog API キーを取得する
PostHog → Settings → Personal API Keys に移動し、読み取りアクセス権を持つキーを作成します。
または、こちらにアクセスします:https://your-instance.posthog.com/settings/user-api-keys
2. MCP クライアントを設定する
Claude Desktop — claude_desktop_config.json に追加します:
{
"mcpServers": {
"posthog": {
"command": "npx",
"args": ["-y", "posthog-mcp-server"],
"env": {
"POSTHOG_API_KEY": "phx_YOUR_API_KEY_HERE",
"POSTHOG_HOST": "https://us.i.posthog.com",
"POSTHOG_PROJECT": "YOUR_PROJECT_ID"
}
}
}
}
Cursor — MCP 設定(.cursor/mcp.json)に追加します:
{
"mcpServers": {
"posthog": {
"command": "npx",
"args": ["-y", "posthog-mcp-server"],
"env": {
"POSTHOG_API_KEY": "phx_YOUR_API_KEY_HERE",
"POSTHOG_HOST": "https://us.i.posthog.com",
"POSTHOG_PROJECT": "YOUR_PROJECT_ID"
}
}
}
}
3. 手動で実行する(テスト用)
# Clone and build
git clone https://github.com/friendlygeorge/posthog-mcp-server.git
cd posthog-mcp-server
npm install
npm run build
# Run
POSTHOG_API_KEY=phx_... POSTHOG_PROJECT=12345 node dist/index.js
環境変数
| 変数 | 必須 | デフォルト | 説明 |
|---|---|---|---|
POSTHOG_API_KEY | ✅ | — | PostHog の個人用 API キー(phx_...) |
POSTHOG_HOST | ❌ | https://us.i.posthog.com | PostHog インスタンスの URL(EU の場合は https://eu.i.posthog.com を使用) |
POSTHOG_PROJECT | ❌ | "" | デフォルトのプロジェクト ID。空の場合、呼び出しごとに指定する必要があります。 |
セルフホストの PostHog
独自のインフラストラクチャで PostHog を実行する場合は、POSTHOG_HOST にインスタンスの URL を設定します:
POSTHOG_HOST=https://posthog.yourcompany.com
クエリの例
設定後、AI アシスタントに次のように尋ねます:
- 「直近20件のページビューイベントを表示して」
- 「今週、最もアクティブなユーザーは誰?」
- 「サインアップコンバージョン実験のステータスは?」
- 「ユーザー abc123 に対して new-checkout-flow フィーチャーフラグは有効?」
- 「有効なダッシュボードをすべて表示して」
- 「インサイト 42 を実行して、トレンドを表示して」
- 「現在有効なフィーチャーフラグをすべて一覧表示して」
- 「『Power Users』コホートには何人いる?」
API リファレンス
このサーバーは PostHog REST API(v1)をラップしています。詳しいドキュメント:
- PostHog API ドキュメント:https://posthog.com/docs/api
- MCP プロトコル:https://modelcontextprotocol.io
- PostHog:https://posthog.com
開発
npm install
npm run dev # Build and run
npm run build # Build only
npm start # Run built output
ライセンス
MIT © Nova
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。