mcpField
S
send-email-campaign

send-email-campaign

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

send-email-campaign について

接続済みのメールプラットフォームで、ターゲットを絞ったメールキャンペーンの準備、承認、送信を行うマーケティングスキルです。コンテンツ、到達性、ブランドの語調、コンプライアンスを確認し、実送信前に明示的な承認を求めます。

主な機能

  1. 01キャンペーン内容のパーソナライズ
  2. 02件名のバリエーションをテスト
  3. 03迷惑メールと法令遵守のリスク確認
  4. 04予約送信と A/B テスト
  5. 05配信とエンゲージメントの監視

活用シーン

  1. 01セグメント別の商品告知を送信
  2. 02キャンペーン前に件名を比較
  3. 03対象者に合わせてメールを予約
  4. 04配信結果と初期反応を確認

MCP 対応

接続されたメールプラットフォームの MCP サーバーを使い、テストメールの送信とキャンペーンの実行を行います。実送信にはユーザーの明示的な承認が必要です。

インストール

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

$npx skills add https://github.com/indranilbanerjee/digital-marketing-pro --skill send-email-campaign

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

詳細

/digital-marketing-pro:send-email-campaign

スクリプトの場所。 ホストが ${CLAUDE_PLUGIN_ROOT} を設定していない場合、スクリプトはこのプラグインの scripts/ フォルダー内にあり、skills/ の隣に配置されています。Python 3.10 以降で実行してください。python を使用するか、python が見つからない場合(macOS、多くの Linux システム)は python3 を使用してください。

目的

ブランドに接続されたメールプラットフォームを通じて、パーソナライズ、A/B 件名、コンプライアンスチェック、配信到達性のモニタリングを備えた、ターゲットを絞ったメールキャンペーンを作成して送信します。コンテンツの検証から送信の実行、送信後のモニタリングまで、全プロセスに対応し、受信者リストの規模に応じた段階的なリスク管理を行います。メールが受信トレイに届く前に、すべての送信がスパム、コンプライアンス、ブランドボイスの各チェックを通過するようにします。

実行ゲート(必須 — 省略不可)

  1. ライブシステムに触れる前に、受信者/費用/変更内容/コンプライアンスを含む完全なプレビューを実行サマリーとして提示します。
  2. ユーザーは yes(または同等の明示的な承認)を入力する必要があります。曖昧、暗示的、部分的、または承認がないなど、これ以外の入力の場合は実行をキャンセルします。
  3. 曖昧な入力で処理を進めてはいけません。失敗した実行を自動で再試行してはいけません。再実行の前に、失敗を人間が確認する必要があります。
  4. ユーザーが yes と入力した後に限り、次のコマンドを記録します。python "${CLAUDE_PLUGIN_ROOT}/scripts/approval-manager.py" --brand {slug} --action create-approval --data '{"type":"send-email","platform":"<platform>","content_summary":"<one line from the Execution Summary>","risk_level":"<tier>"}'、続いて python "${CLAUDE_PLUGIN_ROOT}/scripts/approval-manager.py" --brand {slug} --action approve --id {approval_id}。どちらかのコマンドでエラーが発生した場合は、停止してエラーを報告してください。別のツールで回避してはいけません。この記録は、このアクションについて承認手順が実行されたことを証明しますが、誰が yes と入力したかは証明できません。
  5. 実行します。connector_executor.py 経由で送信する書き込み処理には --approval-id が必要で、一致する未使用かつ有効期限内の記録がある場合にのみ実行されます(/digital-marketing-pro:execute-action を参照)。接続済み MCP サーバーのツール経由で行う書き込み処理は、このコードによるチェックの対象外です。入力された yes と、ホストの権限確認プロンプトに依存します。その後、python "${CLAUDE_PLUGIN_ROOT}/scripts/approval-manager.py" --brand {slug} --action mark-executed --id {approval_id} --data '{"execution_result":"success"}'(または failure)を実行します。

必要な入力

ユーザーは以下を提供する必要があります(または、入力を求められます)。

  • メールの内容:件名、プレビューテキスト(40~90文字)、HTML 構造を含む本文、メイン CTA — または、ブラッシュアップする下書き
  • 配信先リストまたはセグメント:配信先リスト名、セグメント ID、または配信対象の条件 — リストのクリーニング状況(最終クリーニング日)の確認を含む
  • メールプラットフォーム:使用するメールサービス — SendGrid、Klaviyo、Customer.io、Brevo、Mailchimp のいずれか — 対応する MCP サーバーが接続されている必要があります
  • パーソナライズ項目:パーソナライズに使用する動的フィールド — 名、会社名、製品への関心、最終購入商品、所在地、またはデータがない場合の代替値を設定したカスタム差し込みタグ
  • A/B テストのバリエーション:任意 — スプリットテスト用の件名またはコンテンツのバリエーションを 2~3 種類。希望するテスト割合(10~50%)、テスト期間、勝者の判定指標(開封率またはクリック率)を指定します
  • 配信時刻:即時配信、タイムゾーンを指定した予約日時、またはセグメントごとの過去のエンゲージメントデータに基づく配信時間最適化を使う「最適」
  • 返信先アドレス:プラットフォームで設定されているデフォルトの送信者と異なる場合の返信先メールアドレス
  • 送信者名と差出人アドレス:表示名と差出人アドレス — 認証済みの送信ドメイン(SPF、DKIM、DMARC)と一致している必要があります
  • 配信停止の処理:配信停止リンクの配置、ワンクリック配信停止ヘッダーへの準拠(Gmail/Yahoo の 2024 年のルールにより、一括配信者に必須)、およびプリファレンスセンターへのリンクを確認します
  • UTM トラッキング:メール本文内のすべてのリンクに付与する Google Analytics の UTM パラメーター(source、medium、campaign)、またはブランドの命名規則に基づく自動生成
  • 抑制リスト:プラットフォームのグローバル抑制リストに加えて、この配信から除外するメールアドレスまたはドメイン
  • メールテンプレート:任意 — 使用するプラットフォームのテンプレート ID、または提供された内容とブランドのスタイルに基づく一からの作成
  • プリヘッダーテキストの方針:プレビューテキストを件名の補足、期待を高める内容、または件名を広げる内容のどれにするか — 受信トレイの一覧表示でメールがどのように見えるかに影響します
  • フォールバックコンテンツ:HTML を表示しないクライアント向けのメールのプレーンテキスト版、または HTML 本文からの自動生成

プロセス

  1. ブランドコンテキストを読み込む:~/.claude-marketing/brands/_active-brand.json を読み、アクティブなスラッグを確認してから、~/.claude-marketing/brands/{slug}/profile.json を読み込みます。ブランドのトーン、対象市場のコンプライアンスルール(skills/context-engine/compliance-rules.md)、業界のコンテキストを適用します。また、~/.claude-marketing/brands/{slug}/guidelines/_manifest.json にガイドラインがあるか確認し、存在する場合は制限事項を読み込みます。~/.claude-marketing/sops/ に代理店の標準業務手順(SOP)があるか確認します。ブランドが存在しない場合は、「先にブランドを設定しますか(/digital-marketing-pro:brand-setup)?」と尋ねるか、デフォルト設定で続行します。
  2. メールプラットフォームの接続を確認する:接続されているメール MCP サーバーを確認し、ユーザーが指定したプラットフォームと一致することを確認します。送信ドメインが認証済みであること(SPF、DKIM、DMARC レコード)を確認します。未接続または未認証の場合は、設定手順を案内します。
  3. メールの件名を評価する:すべての件名案に対して email-subject-tester.py を実行し、長さ(最適値は 30~50 文字)、パワーワード、パーソナライズトークンの有効性、絵文字の使用状況、予測開封率を評価します。しきい値を下回る案がある場合は、改善案を提示します。
  4. スパムスコアを確認する:spam-score-checker.py を実行し、件名と本文に含まれるスパム誘発語、過剰な大文字使用、感嘆符、テキストに対するリンクの比率、テキストに対する画像の比率、認証の整合性を分析します。配信上のリスクがあれば、具体的な対処手順とともに警告します。
  5. 送信時刻を最適化する — 優先順位:ユーザーが「最適」なタイミングを選択した場合:(a)接続済みのメールプラットフォームに受信者ごとの送信時刻最適化機能があれば、それを使用します。これはどのような全体向けの時間帯よりも優れています(スクリプトの sto_note に方針が記載されています)。(b)リストに送信履歴(タイムスタンプ+開封+受信者)がある場合は、JSON に書き出し、python "${CLAUDE_PLUGIN_ROOT}/scripts/send-time-optimizer.py" --industry {industry} --audience-type {b2b|b2c|mixed} --history {file} を実行して、実測開封率とサンプル数に基づくファーストパーティの時間帯を順位付けします。(c)それ以外の場合は、同じコマンドを --history なしで実行します。日付が明記された母集団ベースライン(baseline_as_of と「中」以下に制限された上限値)が返されます。ベースラインが古い場合は、終了コード 3 で処理が拒否されます。受信者リストのタイムゾーン分布も考慮します。
  6. プラットフォーム固有のペイロードを作成する:対象プラットフォームの API 要件に従ってメールペイロードを構成します。フィールドの対応付け、テンプレートのレンダリング、差し込みタグの構文(例:{{first_name}} と {first_name})、A/B テスト設定のパラメーター、スケジュール設定 API の形式については、skills/context-engine/platform-publishing-specs.md を参照します。
  7. リストの規模と同意の遵守を確認する:受信者数とセグメントの定義を確認します。適用される管轄区域において、リストに適切なオプトイン同意フラグが設定されていることを確認します。配信停止の仕組みが機能すること、ワンクリック配信停止ヘッダーがあること、実在する郵送先住所が記載されていることを確認し、CAN-SPAM(米国)、GDPR(EU)、CASL(カナダ)、およびブランドの対象市場に適用されるその他の規制への準拠を確認します。
  8. ブランドのトーンを評価する:メール本文に対して brand-voice-scorer.py を実行し、ブランドのトーンやメッセージのガイドラインとの整合性を確認します。ブランド基準から逸脱しているコピーがあれば指摘します。
  9. 承認記録を作成する:approval-manager.py --action create-approval を使用して、--data の JSON に段階別のリスクレベルを含めた記録を作成します。受信者が 1,000 人未満の場合は {"type":"send-email","platform":"<platform>","content_summary":"...","risk_level":"medium"}、1,000~10,000 人の場合は "high"、10,000 人を超える場合は "critical" を指定します。--risk-level フラグはありません。正確なコマンドについては、上記の実行ゲートを参照してください。キャンペーンの詳細、スコア、コンプライアンス状況をすべて含む送信概要を作成します。
  10. キャンペーンの概要を提示する:ユーザーが確認できるよう、完全な概要を表示します。件名とスコア、プレビューテキスト、受信者数とセグメント名、送信時刻、サンプル受信者データを使ったパーソナライズのプレビュー、スパムスコア、ブランドトーンのスコア、コンプライアンスチェックリストを含めます。明示的な確認を待ちます。
  11. テストメールを送信する:最初の承認後、MCP サーバー経由でユーザーのアドレス(および追加のテストアドレス)にテストメールを送信します。デスクトップとモバイルの両方で正しく表示されること、パーソナライズトークンが正しく置換されること、リンクが機能すること、画像が読み込まれることを確認するようユーザーに依頼します。
  12. MCP 経由で全件送信を実行する:テストの確認後、接続済みのメールプラットフォーム MCP を通じてキャンペーンの送信を開始します。A/B テストの分割設定、スケジュール設定、プラットフォーム固有の送信オプション(開封の追跡、クリックの追跡、Google Analytics の UTM タグ付け)を処理します。
  13. 配信状況を監視する:送信後、最初の 1 時間は 15 分間隔でプラットフォーム API をポーリングし、バウンス率、配信率、一時的なバウンス、恒久的なバウンス、スパム報告などの配信指標を追跡します。バウンス率が 3%を超える場合、またはスパム報告率が 0.1%を超える場合は、ユーザーに警告します。
  14. 初期エンゲージメントのシグナルを取得する:1 時間後と 4 時間後に、開封率とクリック率のデータを取得します。同じセグメントにおけるブランドの過去の平均値と比較します。A/B テストを実施している場合は、どの案が優勢かを報告します。
  15. 実行内容を記録する:execution-tracker.py を実行し、タイムスタンプ、プラットフォーム、キャンペーン ID、リストサイズ、件名、A/B テスト設定、送信時刻、初期配信指標、コンプライアンス確認状況とともに、送信イベントを記録します。今後のメール戦略の最適化に役立てるため、件名のパフォーマンスに関するインサイトを保存します。

出力

以下を含む構造化された送信確認:

  • 送信確認:キャンペーン ID、プラットフォーム、送信ステータス(送信済み、予約済み、または A/B テスト中)、タイムゾーン付きのタイムスタンプ
  • リストの詳細:受信者数、セグメント名、同意確認ステータス、リストの衛生状態に関するメモ
  • 件名のスコア:各バリエーションのスコア内訳 — 長さ、パワーワード、パーソナライズの効果、予測開封率、スパムリスクの指標
  • スパムスコアレポート:全体的な到達性リスク評価(低/中/高)、検出されたスパム指標の具体的なフラグ、および対処手順
  • ブランドボイススコア:メールコンテンツとの整合性スコア、トーンの一貫性に関するメモ、および推奨されるコピーの調整
  • 送信時刻:実際の送信時刻とその根拠 — ユーザー指定、タイムゾーン付きの予約、またはエンゲージメントデータに基づく最適化
  • A/B テストの設定:該当する場合 — バリエーションの説明、分割割合、テスト期間、勝者を決める指標、自動送信する勝者の設定
  • 到達性レポート:初回配信率、バウンス率(ハードバウンスとソフトバウンス)、スパム苦情率、およびブランドの業界分野における業界ベンチマークとの比較
  • コンプライアンスチェックリスト:CAN-SPAM、GDPR、CASL、配信停止の仕組み、ワンクリック配信停止ヘッダー、住所、認証ヘッダー(SPF、DKIM、DMARC)、送信者 ID の合否
  • 初期エンゲージメントシグナル:1 時間後と 4 時間後の開封率およびクリック率のスナップショット。ブランドの過去の平均値と業界ベンチマークとの比較を含む
  • パーソナライズのプレビュー:異なるマージタグ値とフォールバック値を持つ代表的な受信者 2~3 人について、メールの表示例を示すサンプル
  • UTM トラッキングの概要:ブランドの分析プラットフォームでのアトリビューショントラッキングに用いる、すべてのメールリンクに適用された完全な UTM パラメーター
  • 実行ログエントリー:監査証跡とパフォーマンスのベンチマーク用に、すべてのキャンペーンメタデータを含む送信アクションのタイムスタンプ付き記録

使用するエージェント

  • email-specialist — 件名の最適化、コンテンツのパーソナライズ戦略、到達性分析、スパムスコアリング、送信時刻の最適化、コンプライアンス確認、ブランドボイスのスコアリング、統計的有意性のしきい値を設定した A/B テストの設計、プレヘッダーテキストの戦略
  • execution-coordinator — リストサイズに基づく段階的なリスク管理を備えた承認ワークフロー、デスクトップとモバイルにおけるテスト送信の調整、プラットフォーム API の実行、リアルタイムアラートによる到達性のモニタリング、初期エンゲージメントシグナルの取得、インサイトのアーカイブを伴う実行ログの記録

コメント