mcpField
P
posthog-automation

posthog-automation

github.com/davepoonデータ・データベース3.7k114 回インストール1 日前に更新
リポジトリ

posthog-automation について

posthog-automationは、Rube MCPとComposioのPostHogツールキットを通じてPostHog操作を自動化するスキルです。プロダクト分析とフィーチャーフラグ管理のワークフロー向けです。

主な機能

  1. 01分析イベントの送信
  2. 02条件や日付によるイベント絞り込み
  3. 03フィーチャーフラグの確認と作成
  4. 04組織プロジェクトのページネーション付き一覧
  5. 05現在のユーザーと権限の取得

活用シーン

  1. 01PostHogにユーザー行動イベントを記録
  2. 02プロジェクトのイベントデータを確認
  3. 03プロジェクトのフラグと配信ルールを設定
  4. 04APIユーザーと組織の情報を確認

MCP 対応

このスキルはRube MCP経由でComposioのPostHogツールキットを呼び出します。クライアントでRube MCPへの接続とPostHog接続の有効化が必要です。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/davepoon/buildwithclaude --skill posthog-automation

インストール後、Claude Code で/posthog-automationを入力して読み込まれたか確認します。

詳細

Rube MCP を使った PostHog の自動化

Rube MCP 経由で Composio の PostHog ツールキットを利用し、PostHog のプロダクト分析とフィーチャーフラグ管理を自動化します。

ツールキットのドキュメント:composio.dev/toolkits/posthog

前提条件

  • Rube MCP に接続されている必要があります(RUBE_SEARCH_TOOLS が利用可能)
  • RUBE_MANAGE_CONNECTIONS で有効な PostHog 接続が必要です(ツールキットは posthog)
  • 現在のツールスキーマを取得するため、必ず最初に RUBE_SEARCH_TOOLS を呼び出してください

セットアップ

Rube MCP の入手方法:クライアント設定で https://rube.app/mcp を MCP サーバーとして追加します。API キーは不要です。エンドポイントを追加するだけで動作します。

  1. RUBE_SEARCH_TOOLS が応答することを確認し、Rube MCP が利用可能であることを検証します
  2. ツールキットに posthog を指定して RUBE_MANAGE_CONNECTIONS を呼び出します
  3. 接続が ACTIVE でない場合は、返された認証リンクに従って PostHog 認証を完了します
  4. ワークフローを実行する前に、接続ステータスが ACTIVE と表示されていることを確認します

主なワークフロー

1. イベントをキャプチャする

使用する場面:分析トラッキング用のイベントデータを PostHog に送信したい場合

ツールの順序:

  1. POSTHOG_CAPTURE_EVENT - 1 件以上のイベントを PostHog に送信します[必須]

主なパラメーター:

  • event:イベント名(例:'$pageview'、'user_signed_up'、'purchase_completed')
  • distinct_id:ユーザーの一意な識別子(必須)
  • properties:イベント固有のプロパティを含むオブジェクト
  • timestamp:ISO 8601 形式のタイムスタンプ(省略可能。デフォルトはサーバー時刻)

注意点:

  • すべてのイベントで distinct_id が必須です。ユーザーまたはデバイスを識別します
  • PostHog のシステムイベントには $ プレフィックスを使用します(例:'$pageview'、'$identify')
  • カスタムイベントでは $ プレフィックスを使用しないでください
  • プロパティは自由形式ですが、イベント間で一貫したスキーマを維持してください
  • イベントは非同期で処理されます。通常、取り込みの遅延は数秒です
2. イベントを一覧表示して絞り込む

使用する場面:キャプチャしたイベントを閲覧または検索したい場合

ツールの順序:

  1. POSTHOG_LIST_AND_FILTER_PROJECT_EVENTS - フィルターを指定してイベントをクエリします[必須]

主なパラメーター:

  • project_id:PostHog のプロジェクト ID(必須)
  • event:イベント名で絞り込みます
  • person_id:人物 ID で絞り込みます
  • after:この ISO 8601 タイムスタンプ以降のイベント
  • before:この ISO 8601 タイムスタンプ以前のイベント
  • limit:返すイベントの最大数
  • offset:ページネーションのオフセット

注意点:

  • project_id は必須です。まず LIST_PROJECTS で特定してください
  • 日付フィルターには ISO 8601 形式を使用します(例:'2024-01-15T00:00:00Z')
  • イベント数が多い場合はページネーションが必要です。offset と limit を使用してください
  • デフォルトでは、結果は新しい順に返されます
  • イベントのプロパティはネストされています。慎重に解析してください
3. フィーチャーフラグを管理する

使用する場面:フィーチャーフラグを作成、表示、または管理したい場合

ツールの順序:

  1. POSTHOG_LIST_AND_MANAGE_PROJECT_FEATURE_FLAGS - 既存のフィーチャーフラグを一覧表示します[必須]
  2. POSTHOG_RETRIEVE_FEATURE_FLAG_DETAILS - フラグ設定の詳細を取得します[任意]
  3. POSTHOG_CREATE_FEATURE_FLAGS_FOR_PROJECT - 新しいフィーチャーフラグを作成します[任意]

主なパラメーター:

  • 一覧表示の場合:project_id(必須)
  • 詳細の取得の場合:project_id、id(フィーチャーフラグ ID)
  • 作成の場合:
    • project_id:対象プロジェクト
    • key:フラグキー(例:'new-dashboard-beta')
    • name:人が読みやすい名前
    • filters:ターゲティングルールとロールアウトの割合
    • active:フラグを有効にするかどうか

注意点:

  • フィーチャーフラグの key はプロジェクト内で一意である必要があります
  • フラグキーにはケバブケースを使用してください(例:'my-feature-flag')
  • filters は、プロパティとロールアウトの割合を使ってターゲティンググループを定義します
  • active: true でフラグを作成すると、条件に一致するユーザーに対して直ちに有効になります
  • PostHog のポーリング機構により、フラグの変更は数秒以内に反映されます
4. プロジェクトを管理する

使用する場面:PostHog のプロジェクトや組織の一覧表示、または内容の確認をしたい場合

ツールの順序:

  1. POSTHOG_LIST_PROJECTS_IN_ORGANIZATION_WITH_PAGINATION - すべてのプロジェクトを一覧表示します[必須]

主なパラメーター:

  • organization_id:組織の識別子(認証方法によっては省略可能です)
  • limit:1 ページあたりの結果数
  • offset:ページネーションのオフセット

注意点:

  • プロジェクト ID は数値です。ほとんどの他のエンドポイントでパラメーターとして使用します
  • 組織 ID が必要な場合があります。PostHog の設定を確認してください
  • ページネーションはオフセット方式です。結果が空になるまで繰り返してください
  • プロジェクト設定には API キーと設定の詳細が含まれます
5. ユーザープロフィールと認証

使用する場面:現在のユーザーの詳細を確認したい場合、または API アクセスを検証したい場合

ツールの順序:

  1. POSTHOG_WHOAMI - 現在の API ユーザー情報を取得します[任意]
  2. POSTHOG_RETRIEVE_CURRENT_USER_PROFILE - 詳細なユーザープロフィールを取得します[任意]

主なパラメーター:

  • どちらの呼び出しにも必須パラメーターはありません
  • 現在認証済みのユーザーの詳細、権限、組織情報を返します

注意点:

  • WHOAMI は簡易的な確認機能です。API の接続確認に使用してください
  • ユーザープロフィールには、所属する組織と権限が含まれます
  • これらのエンドポイントで、API キーのアクセスレベルとスコープを確認できます

よくあるパターン

ID の解決

組織 -> プロジェクト ID:

1. Call POSTHOG_LIST_PROJECTS_IN_ORGANIZATION_WITH_PAGINATION
2. Find project by name in results
3. Extract id (numeric) for use in other endpoints

フィーチャーフラグ名 -> フラグ ID:

1. Call POSTHOG_LIST_AND_MANAGE_PROJECT_FEATURE_FLAGS with project_id
2. Find flag by key or name
3. Extract id for detailed operations
フィーチャーフラグのターゲティング

フィーチャーフラグでは、高度なターゲティングが可能です:

{
  "filters": {
    "groups": [
      {
        "properties": [
          {"key": "email", "value": "@company.com", "operator": "icontains"}
        ],
        "rollout_percentage": 100
      },
      {
        "properties": [],
        "rollout_percentage": 10
      }
    ]
  }
}
  • グループは順番に評価されます。最初に一致したグループによってロールアウトが決まります
  • プロパティは、ユーザーの特性に基づいてユーザーを絞り込みます
  • ロールアウトの割合によって、一致したユーザーのうちフラグを表示するユーザーの割合が決まります
ページネーション
  • イベント:offset と limit を使用します(オフセット方式)
  • フィーチャーフラグ:offset と limit を使用します(オフセット方式)
  • プロジェクト:offset と limit を使用します(オフセット方式)
  • 結果の配列が空になるか、limit より小さくなるまで続けます

既知の注意点

プロジェクト ID:

  • ほとんどの API エンドポイントで必須です
  • まずプロジェクト名を数値 ID に解決してください
  • 1 つの組織に複数のプロジェクトが存在する場合があります

イベント名:

  • システムイベントには $ プレフィックスが付きます($pageview、$identify、$autocapture)
  • カスタムイベントには $ プレフィックスを付けないでください
  • イベント名では大文字と小文字が区別されます。一貫性を保ってください

フィーチャーフラグ:

  • フラグキーはプロジェクト内で一意である必要があります
  • フラグキーにはケバブケースを使用してください
  • 変更は数秒以内に反映されます
  • フラグの削除は取り消せません。代わりに無効化することを検討してください

レート制限:

  • イベントの取り込みにはスループット制限があります
  • 効率化のため、可能な場合はイベントをバッチ処理してください
  • API エンドポイントには、1 分あたりのレート制限があります

レスポンスの解析:

  • レスポンスデータは、data または results キーの下にネストされている場合があります
  • ページネーションされたレスポンスには、count、next、previous フィールドが含まれます
  • イベントプロパティはネストされたオブジェクトです。慎重にアクセスしてください
  • 省略可能なフィールドに対するフォールバックを用意し、防御的に解析してください

クイックリファレンス

タスクツールスラッグ主なパラメーター
イベントを記録POSTHOG_CAPTURE_EVENTevent, distinct_id, properties
イベントを一覧表示POSTHOG_LIST_AND_FILTER_PROJECT_EVENTSproject_id, event, after, before
フィーチャーフラグを一覧表示POSTHOG_LIST_AND_MANAGE_PROJECT_FEATURE_FLAGSproject_id
フラグの詳細を取得POSTHOG_RETRIEVE_FEATURE_FLAG_DETAILSproject_id, id
フラグを作成POSTHOG_CREATE_FEATURE_FLAGS_FOR_PROJECTproject_id, key, filters
プロジェクトを一覧表示POSTHOG_LIST_PROJECTS_IN_ORGANIZATION_WITH_PAGINATIONorganization_id
自分の情報を取得POSTHOG_WHOAMI(none)
ユーザープロフィールPOSTHOG_RETRIEVE_CURRENT_USER_PROFILE(none)

Composio によって提供

コメント