mcpField
S
segment-automation

segment-automation

github.com/sickn33データ・データベース48.8k66 回インストール今日更新
リポジトリ

segment-automation について

segment-automation は、Rube MCP 経由で Composio の Segment ツールキットを使い、Segment の顧客データ業務を自動化するスキルです。イベントや ID の送信、バッチ処理、グループ・ページのトラッキング、ソース設定に対応し、同意や ID 変更、配信状態への注意点も扱います。

主な機能

  1. 01track と page イベントの送信
  2. 02identify によるユーザー属性の設定
  3. 03複数の Segment メッセージのバッチ送信
  4. 04ユーザーとグループの関連付け
  5. 05ID のリンクとソース設定の確認

活用シーン

  1. 01下流の宛先向けアプリイベントの記録
  2. 02ユーザープロフィールへの属性設定
  3. 03複数のトラッキング呼び出しの一括送信
  4. 04ユーザーと組織やグループの関連付け

MCP 対応

Rube MCP を介して Composio の Segment ツールキットにアクセスします。ワークフローには有効な Segment 接続と最新のツールスキーマが必要です。

インストール

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

$npx skills add https://github.com/sickn33/agentic-awesome-skills --skill segment-automation

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

詳細

Rube MCP による Segment の自動化

Rube MCP 経由で Composio の Segment ツールキットを使用して、Segment 顧客データプラットフォームの操作を自動化します。

前提条件

  • Rube MCP が接続されていること(RUBE_SEARCH_TOOLS が利用可能)
  • ツールキット segment を指定して RUBE_MANAGE_CONNECTIONS 経由で有効な Segment 接続があること
  • 現在のツールスキーマを取得するため、必ず最初に RUBE_SEARCH_TOOLS を呼び出してください

セットアップ

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

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

ソース、ID、プライバシーの範囲

対象となるソース/ワークスペース/環境と、下流の送信先を正確に確認してください。テストイベントによって顧客へのメッセージが送信されたり、本番メトリクスが汚染されたりする可能性があるため、承認済みのテストソースと合成 ID を使用してください。トレイト/コンテキストの送信には、送信先が設定されているだけでなく、適切な同意とデータ共有の承認が必要です。ID のマージ/ソース更新をプレビューし、不確実な再試行を行う前に、安定したメッセージ ID を照合してください。削除/null トレイトやエイリアスの動作について、実際のスキーマと送信先の仕様を確認してください。受け付けられたことは、配信されたことを意味しません。

主なワークフロー

1. イベントをトラッキングする

使用する場合:ユーザーが下流の送信先向けにイベントデータを Segment に送信したい場合

ツールの順序:

  1. SEGMENT_TRACK - 単一のトラックイベントを送信します[必須]

主なパラメーター:

  • userId:ユーザー識別子(anonymousId がない場合は必須)
  • anonymousId:匿名識別子(userId がない場合は必須)
  • event:イベント名(例:'Order Completed'、'Button Clicked')
  • properties:イベント固有のプロパティを含むオブジェクト
  • timestamp:ISO 8601 タイムスタンプ(任意。デフォルトはサーバー時刻)
  • context:コンテキストメタデータを含むオブジェクト(IP、ユーザーエージェントなど)

注意点:

  • userId または anonymousId の少なくとも一方が必要です
  • event 名は必須で、一貫した命名規則に従う必要があります
  • プロパティは自由形式のオブジェクトです。イベント間でスキーマが一貫するようにしてください
  • タイムスタンプは ISO 8601 形式である必要があります(例:'2024-01-15T10:30:00Z')
  • イベントは非同期で処理されます。API が正常に応答しても、意味するのは受け付けられたことであり、配信されたことではありません
2. ユーザーを識別する

使用する場合:ユーザーが Segment のユーザープロフィールにトレイトを関連付けたい場合

ツールの順序:

  1. SEGMENT_IDENTIFY - ユーザートレイトと ID を設定します[必須]

主なパラメーター:

  • userId:ユーザー識別子(anonymousId がない場合は必須)
  • anonymousId:匿名識別子
  • traits:ユーザープロパティを含むオブジェクト(メールアドレス、名前、プランなど)
  • timestamp:ISO 8601 タイムスタンプ
  • context:コンテキストメタデータ

注意点:

  • userId または anonymousId の少なくとも一方が必要です
  • トレイトは置き換えられるのではなく、既存のトレイトにマージされます
  • トレイトを削除するには、null を設定します
  • 新規ユーザーの場合は、track 呼び出しの前に Identify 呼び出しを行ってください
  • 送信先で適切に設定されていない限り、トレイトに PII を含めないでください
3. 一括操作

使用する場面:複数のイベント、identify、その他の呼び出しを1回のリクエストで送信したい場合

ツールの順序:

  1. SEGMENT_BATCH - 複数のSegment呼び出しを1回のリクエストで送信します[必須]

主なパラメーター:

  • batch:メッセージオブジェクトの配列。各オブジェクトには以下を含めます。
    • type:メッセージの種類('track'、'identify'、'group'、'page'、'alias')
    • userId / anonymousId:ユーザー識別子
    • 種類に応じた追加フィールド(event、properties、traits など)

注意点:

  • バッチ内の各メッセージには、有効な type フィールドが必要です
  • バッチの最大サイズ制限が適用されます。現在の上限はスキーマで確認してください
  • バッチ内のメッセージはそれぞれ独立して処理されるため、1つの失敗が他のメッセージに影響することはありません
  • 各メッセージは、それぞれの種類で必要な条件を個別に満たす必要があります(例:track にはイベント名が必要です)
  • 複数の呼び出しを送信する方法として、バッチが最も効率的です。個別の呼び出しよりも優先してください
4. ユーザーをグループに追加する

使用する場面:ユーザーを会社、チーム、組織に関連付けたい場合

ツールの順序:

  1. SEGMENT_GROUP - ユーザーをグループに関連付けます[必須]

主なパラメーター:

  • userId:ユーザー識別子(anonymousId がない場合は必須)
  • anonymousId:匿名識別子
  • groupId:グループ/組織の識別子(必須)
  • traits:グループのプロパティを含むオブジェクト(name、industry、size、plan)
  • timestamp:ISO 8601形式のタイムスタンプ

注意点:

  • groupId は必須です。会社または組織を識別します
  • グループのtraitsは、そのグループの既存のtraitsと統合されます
  • ユーザーは複数のグループに所属できます
  • グループのtraitsはユーザープロフィールではなく、グループプロフィールを更新します
5. ページビューを記録する

使用する場面:Segmentでページビューイベントを記録したい場合

ツールの順序:

  1. SEGMENT_PAGE - ページビューイベントを送信します[必須]

主なパラメーター:

  • userId:ユーザー識別子(anonymousId がない場合は必須)
  • anonymousId:匿名識別子
  • name:ページ名(例:'Home'、'Pricing'、'Dashboard')
  • category:ページカテゴリ(例:'Docs'、'Marketing')
  • properties:ページ固有のプロパティを含むオブジェクト(url、title、referrer)

注意点:

  • userId または anonymousId の少なくとも一方が必要です
  • name と category は省略可能ですが、適切な分析のために指定することをおすすめします
  • 標準プロパティには url、title、referrer、path、search があります
  • page呼び出しは自動化されることが多く、手動での使用はサーバーサイドのページトラッキングに適しています
6. ユーザーをエイリアス化し、ソースを管理する

使用する場面:匿名ユーザーと特定済みユーザーを統合したい場合、またはソース設定を管理したい場合

ツールの順序:

  1. SEGMENT_ALIAS - 2つのユーザーIDを関連付けます[省略可能]
  2. SEGMENT_LIST_SCHEMA_SETTINGS_IN_SOURCE - ソースのスキーマ設定を表示します[省略可能]
  3. SEGMENT_UPDATE_SOURCE - ソース設定を更新します[省略可能]

主なパラメーター:

  • ALIASの場合:
    • userId:新しいユーザー識別子(特定済みのID)
    • previousId:以前のユーザー識別子(匿名ID)
  • ソース操作の場合:
    • sourceId:ソース識別子

注意点:

  • ALIASは一方向の操作で、元に戻せません
  • previousId は匿名/旧ID、userId は新しい/特定済みのIDです
  • エイリアス呼び出しに対応していない宛先もあります。宛先のドキュメントを確認してください
  • エイリアスは、実際の宛先のIDモデルで必要な場合にのみ使用してください。すべてのサインアップに取り消しできない統合が必要だと決めつけないでください
  • ソースの更新はデータ収集に影響する場合があります。変更内容を慎重に確認してください

一般的なパターン

ユーザーのライフサイクル

Segmentの標準的なユーザーライフサイクル:

1. Anonymous user visits -> PAGE call with anonymousId
2. User interacts -> TRACK call with anonymousId
3. User signs up -> IDENTIFY with stable userId; alias only if the configured destination identity flow requires it
4. User takes action -> TRACK call with userId
5. User joins org -> GROUP call linking userId to groupId
バッチの最適化

大量データの取り込みには:

1. Collect events in memory (array of message objects)
2. Each message includes type, userId/anonymousId, and type-specific fields
3. Call SEGMENT_BATCH with the collected messages
4. Check response for any individual message errors
命名規則

Segmentでは、一貫性のあるイベント命名を推奨しています。

  • イベント:「オブジェクト アクション」形式を使用します(例:'Order Completed'、'Article Viewed')
  • プロパティ:snake_caseを使用します(例:'order_total'、'product_name')
  • traits:snake_caseを使用します(例:'first_name'、'plan_type')

既知の注意点

ID の解決:

  • すべての呼び出しに userId または anonymousId を必ず含めてください
  • ユーザー ID を統合する際、ALIAS は 1 人のユーザーにつき 1 回だけ使用してください
  • ユーザーを適切に関連付けるため、トラッキングの前にユーザーを識別してください

データ品質:

  • イベント名はすべてのソースで一貫させてください
  • 下流システムとの互換性を保つため、プロパティには定義済みのスキーマを適用してください
  • 送信先が機密性の高い個人情報(PII)を受け入れる設定になっていない限り、送信しないでください

レート制限:

  • レート制限内に収めるため、一括操作には BATCH を使用してください
  • 個別の呼び出しには、ソースごとにレート制限が適用されます
  • バッチ呼び出しは効率が高く、スロットリングされる可能性も低くなります

レスポンスの解析:

  • 成功レスポンスが示すのは受け付けられたことまでであり、送信先への配信を意味するものではありません
  • レスポンスデータは data キーの下にネストされている場合があります
  • バッチレスポンスにエラーフィールドがないか確認し、個々のメッセージの失敗を把握してください

タイムスタンプ:

  • タイムゾーン付きの ISO 8601 形式で指定する必要があります(例:'2024-01-15T10:30:00Z')
  • タイムスタンプを省略すると、サーバーの受信時刻が使用されます
  • 過去のデータをインポートする場合は、明示的なタイムスタンプを含めてください

クイックリファレンス

タスクツールのスラッグ主なパラメーター
イベントのトラッキングSEGMENT_TRACKuserId, event, properties
ユーザーの識別SEGMENT_IDENTIFYuserId, traits
呼び出しの一括処理SEGMENT_BATCHbatch (メッセージの配列)
ユーザーのグループ化SEGMENT_GROUPuserId, groupId, traits
ページビューSEGMENT_PAGEuserId, name, properties
ID のエイリアス設定SEGMENT_ALIASuserId, previousId
ソースのスキーマSEGMENT_LIST_SCHEMA_SETTINGS_IN_SOURCEsourceId
ソースの更新SEGMENT_UPDATE_SOURCEsourceId
ウェアハウスSEGMENT_LIST_CONNECTED_WAREHOUSES_FROM_SOURCEsourceId

使用する場面

このスキルは、概要で説明されているワークフローやアクションを実行する際に適用できます。

制限事項

  • このスキルは、タスクが上記の説明範囲に明確に当てはまる場合にのみ使用してください。
  • 出力を、環境固有の検証、テスト、または専門家によるレビューの代わりとして扱わないでください。
  • 必要な入力、権限、安全上の境界、または成功基準が不明な場合は、作業を中止して確認を求めてください。

コメント