mcpField
B
brevo-automation

brevo-automation

github.com/davepoonマーケティング・グロース3.7k119 回インストール1 日前に更新
リポジトリ

brevo-automation について

Composio の Brevo ツールキットと Rube MCP を通じて、Brevo のメールマーケティングを自動化するスキルです。キャンペーンやテンプレートの管理、送信者の確認、A/B テストの設定に対応します。

主な機能

  1. 01メールキャンペーンの一覧と更新
  2. 02テンプレートの作成・編集・削除
  3. 03認証済み送信者の確認
  4. 04キャンペーンの A/B テスト設定

活用シーン

  1. 01メールキャンペーンの絞り込みと確認
  2. 02キャンペーン内容や送信時刻の変更
  3. 03メールテンプレートの管理
  4. 04件名の A/B テスト設定

MCP 対応

Rube MCP 経由で Composio の Brevo ツールキットを呼び出します。利用前にツールを確認し、Brevo に接続する必要があります。

インストール

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

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

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

詳細

Rube MCP による Brevo の自動化

Rube MCP を通じて Composio の Brevo ツールキットを利用し、Brevo(旧 Sendinblue)のメールマーケティング業務を自動化します。

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

前提条件

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

セットアップ

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

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

主なワークフロー

1. メールキャンペーンを管理する

使用する場面:メールキャンペーンの一覧表示、確認、更新をユーザーが希望する場合

ツールの実行順序:

  1. BREVO_LIST_EMAIL_CAMPAIGNS - フィルターを指定してすべてのキャンペーンを一覧表示します[必須]
  2. BREVO_UPDATE_EMAIL_CAMPAIGN - キャンペーンの内容または設定を更新します[任意]

一覧表示の主なパラメーター:

  • type:キャンペーンの種類('classic' または 'trigger')
  • status:キャンペーンのステータス('suspended'、'archive'、'sent'、'queued'、'draft'、'inProcess'、'inReview')
  • startDate/endDate:日付範囲フィルター(YYYY-MM-DDTHH:mm:ss.SSSZ 形式)
  • statistics:含める統計情報の種類('globalStats'、'linksStats'、'statsByDomain')
  • limit:1 ページあたりの結果数(最大 100、デフォルトは 50)
  • offset:ページネーションのオフセット
  • sort:並べ替え順序('asc' または 'desc')
  • excludeHtmlContent:true に設定すると、レスポンスのサイズを小さくできます

更新の主なパラメーター:

  • campaign_id:数値のキャンペーン ID(必須)
  • name:キャンペーン名
  • subject:メールの件名
  • htmlContent:HTML メール本文(htmlUrl と同時には指定できません)
  • htmlUrl:HTML コンテンツの URL
  • sender:name、email、または id を含む送信者オブジェクト
  • recipients:listIds と exclusionListIds を含むオブジェクト
  • scheduledAt:送信予定日時(YYYY-MM-DDTHH:mm:ss.SSSZ)

注意点:

  • startDate と endDate は両方とも指定する必要があります。両方指定するか、どちらも指定しないでください
  • 日付フィルターが機能するのは、status が渡されていない場合、または 'sent' に設定されている場合のみです
  • htmlContent と htmlUrl は同時には指定できません
  • キャンペーンの sender メールアドレスは、Brevo で認証済みである必要があります
  • A/B テストのフィールド(subjectA、subjectB、splitRule、winnerCriteria)には abTesting: true が必要です
  • scheduledAt にはタイムゾーンを含む完全な ISO 8601 形式を使用します
2. メールテンプレートの作成と管理

使用する場面:ユーザーがメールテンプレートの作成、編集、一覧表示、削除を希望する場合

ツールの順序:

  1. BREVO_GET_ALL_EMAIL_TEMPLATES - すべてのテンプレートを一覧表示します[必須]
  2. BREVO_CREATE_OR_UPDATE_EMAIL_TEMPLATE - 新しいテンプレートを作成するか、既存のテンプレートを更新します[必須]
  3. BREVO_DELETE_EMAIL_TEMPLATE - 使用されていないテンプレートを削除します[任意]

一覧表示の主なパラメーター:

  • templateStatus:アクティブ(true)または非アクティブ(false)のテンプレートで絞り込みます
  • limit:1ページあたりの結果数(最大 1000、デフォルト 50)
  • offset:ページネーションのオフセット
  • sort:並べ替え順('asc' または 'desc')

作成/更新の主なパラメーター:

  • templateId:更新する場合に指定します。新規作成の場合は省略します
  • templateName:テンプレートの表示名(作成時に必須)
  • subject:メールの件名(作成時に必須)
  • htmlContent:HTML テンプレートの本文(10 文字以上。htmlUrl とどちらか一方を使用)
  • sender:name と email、または id を含む送信者オブジェクト(作成時に必須)
  • replyTo:返信先のメールアドレス
  • isActive:テンプレートを有効化または無効化します
  • tag:テンプレートのカテゴリタグ

注意点:

  • templateId を指定するとツールは更新を行い、省略すると新規作成します
  • 作成時には templateName、subject、sender が必須です
  • htmlContent は 10 文字以上である必要があります
  • テンプレートのパーソナライズには {{contact.ATTRIBUTE}} 構文を使用します
  • 削除できるのは非アクティブなテンプレートのみです
  • htmlContent と htmlUrl は同時に指定できません
3. 送信者の管理

使用する場面:ユーザーが認証済みの送信者 ID を確認したい場合

ツールの順序:

  1. BREVO_GET_ALL_SENDERS - 認証済みの送信者をすべて一覧表示します[必須]

主なパラメーター:(必須項目なし)

注意点:

  • キャンペーンやテンプレートで使用するには、送信者の認証が完了している必要があります
  • 送信者の認証は Brevo のウェブインターフェースから行い、API からは行えません
  • キャンペーンやテンプレートの sender.id フィールドには送信者 ID を使用できます
4. A/B テストキャンペーンの設定

使用する場面:ユーザーがキャンペーンの A/B テスト設定を行う、または変更したい場合

ツールの順序:

  1. BREVO_LIST_EMAIL_CAMPAIGNS - 対象のキャンペーンを検索します[前提条件]
  2. BREVO_UPDATE_EMAIL_CAMPAIGN - A/B テスト設定を行います[必須]

主なパラメーター:

  • campaign_id:設定するキャンペーン
  • abTesting:A/B テストを有効にするには true を指定します
  • subjectA:バリエーション A の件名
  • subjectB:バリエーション B の件名
  • splitRule:テストの配分割合(1~99)
  • winnerCriteria:勝者の決定基準として 'open' または 'click' を指定します
  • winnerDelay:勝者を選定するまで待機する時間(1~168 時間)

注意点:

  • バリエーションのフィールドを設定する前に、A/B テストを有効にする必要があります(abTesting: true)
  • splitRule は、バリエーション A を受け取るコンタクトの割合です
  • winnerDelay は、残りのコンタクトに勝者を配信するまでのテスト時間を定義します
  • 'classic' キャンペーンタイプでのみ機能します

一般的なパターン

キャンペーンのライフサイクル
1. Create campaign (status: draft)
2. Set recipients (listIds)
3. Configure content (htmlContent or htmlUrl)
4. Optionally schedule (scheduledAt)
5. Send or schedule via Brevo UI (API update can set scheduledAt)
ページネーション
  • limit(ページサイズ)と offset(開始インデックス)を使用します
  • デフォルトの limit は 50 です。最大値はエンドポイントによって異なります(キャンペーンは 100、テンプレートは 1000)
  • ページごとに offset を limit 分増やします
  • レスポンスの count を確認し、利用可能な総数を特定します
テンプレートのパーソナライズ
- First name: {{contact.FIRSTNAME}}
- Last name: {{contact.LASTNAME}}
- Custom attribute: {{contact.CUSTOM_ATTRIBUTE}}
- Mirror link: {{mirror}}
- Unsubscribe link: {{unsubscribe}}

既知の注意点

日付形式:

  • すべての日付は、ミリ秒を含む ISO 8601 形式です:YYYY-MM-DDTHH:mm:ss.SSSZ
  • 正確な結果を得るには、日時形式でタイムゾーンを指定します
  • startDate と endDate はセットで指定する必要があります

送信者の認証:

  • すべての送信者メールアドレスは、使用前に Brevo で認証されている必要があります
  • 未認証の送信者を指定すると、キャンペーンの作成/更新に失敗します
  • 利用可能な認証済み送信者を確認するには、GET_ALL_SENDERS を使用します

レート制限:

  • Brevo API のレート制限はアカウントプランによって異なります
  • 429 レスポンスを受け取った場合は、バックオフを実装します
  • テンプレート操作の制限は、読み取り操作よりも厳しく設定されています

レスポンスの解析:

  • レスポンスデータは data または data.data の下にネストされている場合があります
  • フォールバックパターンを用いて、堅牢に解析します
  • キャンペーン ID とテンプレート ID は数値の整数です

クイックリファレンス

タスクツールスラッグ主なパラメーター
キャンペーンの一覧表示BREVO_LIST_EMAIL_CAMPAIGNStype, status, limit, offset
キャンペーンの更新BREVO_UPDATE_EMAIL_CAMPAIGNcampaign_id, subject, htmlContent
テンプレートの一覧表示BREVO_GET_ALL_EMAIL_TEMPLATEStemplateStatus, limit, offset
テンプレートの作成BREVO_CREATE_OR_UPDATE_EMAIL_TEMPLATEtemplateName, subject, htmlContent, sender
テンプレートの更新BREVO_CREATE_OR_UPDATE_EMAIL_TEMPLATEtemplateId, htmlContent
テンプレートの削除BREVO_DELETE_EMAIL_TEMPLATEtemplateId
送信者の一覧表示BREVO_GET_ALL_SENDERS(なし)

Composio によって提供されています

コメント