mcpField
S
subject-line-lab

subject-line-lab

github.com/cognyaiマーケティング・グロース11146 回インストール2 週間前に更新
リポジトリ

subject-line-lab について

subject-line-labは、メールマーケティング担当者向けのCogny MCPスキルです。過去の配信実績から件名の傾向を分析し、キャンペーンのテーマやリストに合わせた候補を作成します。

主な機能

  1. 01最大100件の配信を分析
  2. 02件名の特徴と開封率を比較
  3. 03プラスとマイナスの傾向を順位付け
  4. 04件名候補を20件作成
  5. 05傾向と分析結果をCognyのコンテキストに保存

活用シーン

  1. 01開封率に関連する件名の傾向を確認
  2. 02次回キャンペーンの件名を作成

MCP 対応

Cogny MCP経由で接続済みESPの配信履歴を参照し、傾向の要約と分析結果をCognyのコンテキストに保存します。Klaviyo、Mailchimp、Rule、Get a Newsletterに対応します。

インストール

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

$npx skills add https://github.com/cognyai/claude-code-marketing-skills --skill subject-line-lab

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

詳細

件名ラボ

やみくもな A/B テストはもうやめましょう。このスキルは、実際の直近 100 件以上の配信を読み込み、あなたのリストで開封率と相関する件名のパターンを見つけ、次回のキャンペーン向けに最適化した候補を 20 件生成します。

必要なもの: Cogny MCP と、接続済みの ESP(Klaviyo、Mailchimp、Rule、または Get a Newsletter)。登録はこちら

使用方法

/subject-line-lab — パターンを分析し、汎用的な候補を生成します /subject-line-lab "Black Friday doors open" — パターンを分析し、特定のキャンペーントピック向けの候補を生成します

前提条件の確認

接続されている ESP を検出します。両方の名前空間を確認してください(Cloud 集約型の mcp__cogny__<svc>__* と、ESP ごとの Solo/Lite の mcp__<svc>__*)。

  • Klaviyo → mcp__cogny__klaviyo__* または mcp__klaviyo__*
  • Mailchimp → mcp__cogny__mailchimp__* または mcp__mailchimp__*
  • Rule → mcp__cogny__rule__* または mcp__rule__*
  • Get a Newsletter → mcp__cogny__get_a_newsletter__* または mcp__get_a_newsletter__*

どれも接続されていない場合:

This skill requires a connected ESP via Cogny MCP.
Connect Klaviyo, Mailchimp, Rule, or Get a Newsletter at https://cogny.com

複数接続されている場合は、分析する ESP をユーザーに確認します(または、それぞれをラベル付きで分析します)。

ESP ツールアダプター

各 ESP で件名の履歴の取得方法は異なります。接続されているサービスに応じて適切なツールを使用してください。

ESP配信履歴ツール備考
Klaviyolist_campaigns (channel=email) の後に get_campaignツール名はプレフィックスなしです。開封数やクリック数の詳細な指標には list_events を使用します。
Mailchimptool_list_reports の後に tool_get_reportレポートが、配信ごとの開封数やクリック数の正確な情報源です。
Ruletool_list_campaigns の後に tool_get_campaign_statistics統計ツールは開封数、クリック数、バウンス数を返します。
Get a Newslettertool_list_sent の後に tool_get_sent と tool_get_report「キャンペーン」というオブジェクトはありません。list_sent で件名と日付を確認し、指標は配信ごとに get_report で取得します。

手順

1. 配信履歴を取得する

接続されている ESP から、直近のキャンペーン配信 100 件(または取得可能な件数)を取得します。各配信について、以下を記録します。

  • 件名
  • プリヘッダー(取得可能な場合)
  • 配信日時(受信者の現地時間が取得可能な場合)
  • 受信者数
  • ユニーク開封数 → 開封率
  • ユニーククリック数 → CTR
  • セグメント/リスト名
  • キャンペーンの種類(プロモーション、ニュースレター、告知、トランザクション関連)

トランザクション配信と自動化されたフローメールは、傾向を歪めるため除外します。一斉配信キャンペーンに絞って分析します。

2. 基準値を算出する
  • サンプル全体の開封率の中央値
  • 開封率の平均値(平均値と中央値の差が 20%を超える場合は、偏りとしてフラグを付けます)
  • サンプルサイズの警告 — 配信数が 30 件未満の場合は、「サンプル数が少ないため、パターンが偶然の可能性があります」とユーザーに警告します
3. 件名の特徴を抽出する

各件名について、以下の特徴をタグ付けします(キーワード/正規表現のヒューリスティックを使用し、機械学習は不要です)。

構造:

  • 長さ(文字数):<30/30-50/50-70/>70
  • 単語数
  • タイトルケース/センテンスケース/すべて大文字/小文字
  • ?/!/. で終わる/句読点なし

内容:

  • 絵文字を含む(数、種類)
  • 数字を含む
  • % または $ または通貨記号を含む(プロモーションのシグナル)
  • パーソナライズ用トークン({{ first_name }}、[Firstname])を含む
  • 疑問文/平叙文/命令文
  • 一人称("I", "we", "my")と二人称("you", "your")
  • 緊急性を示す語:"today", "tonight", "last chance", "ends", "hours", "don't miss"
  • FOMO/希少性:"only", "limited", "few left", "selling fast"
  • 好奇心を誘う表現:"why", "how", "the truth about", "what I learned" で始まる
  • メリット訴求:成果を表す名詞で始まる
  • 社会的証明:"customers", "members"、人数を表す数値

時間:

  • 配信した曜日
  • 配信した時間帯(早朝/朝/正午ごろ/午後/夕方/深夜に分類)
4. 特徴ごとのリフトを計算する

各特徴について、以下を計算します。

  • サンプル内の件数
  • 特徴がある場合の平均開封率
  • 特徴がない場合の平均開封率
  • リフト(特徴がない場合の基準値に対する差分)
  • 有意性に関する注記 — 両グループの n が 10 以上で、相対リフトが 10% 以上の場合は「強」、それ以外は「弱」とします

特徴を絶対リフトの大きい順に並べます。

5. 効果的なパターンを特定する

上位 5 つのプラスのパターンと、上位 3 つのマイナスのパターンを具体的な数値とともに出力します。

Patterns that worked for your list (last 100 sends):

🟢 WINNERS
1. Subject lines ending in "?" → 34% open rate vs 21% baseline (+62%, n=14 strong)
2. Subject lines with numbers → 29% open rate vs 21% (+38%, n=22 strong)
3. Length 30-50 chars → 27% open rate vs 19% (+42%, n=31 strong)
4. First-person voice ("I", "we") → 26% open rate vs 22% (+18%, n=18 strong)
5. Sent Tue 09:00-11:00 → 28% open rate vs 22% (+27%, n=12 weak)

🔴 DRAGS
1. ALL CAPS words → 14% open rate vs 23% (-39%, n=8 weak)
2. Emoji at start → 18% open rate vs 24% (-25%, n=11 strong)
3. Urgency words ("last chance", "today only") → 16% open rate vs 22% (-27%, n=9 weak)

Your best historical subject: "<actual subject>" at <open rate>% (<date>)
Your worst: "<actual subject>" at <open rate>% (<date>)
6. 最適化した候補を生成する

キャンペーンのトピックが指定されている場合は、効果的なパターンに従い、マイナス要因を避けた件名の候補を 20 件生成します。トピックが指定されていない場合は、分析したパターンに基づき、汎用的なプロモーション/ニュースレターの候補を 20 件生成します。

形式:

Candidates for: "<topic>"
(tuned to: ends-in-?, has-number, 30-50 chars, first-person voice)

Preheader recommendation: 85-100 chars, don't duplicate subject, extend the hook.

1. "What <specific number> of our customers asked last week?" (52 chars)
   Preheader: "We pulled the top 5 questions and answered them in one place — you'll recognize #2."
2. ...
20. ...

──
A/B test plan:
- Primary variant: candidate #<N> (leans hardest into top pattern)
- Challenger: candidate #<M> (different angle to avoid pattern overfitting)
- Hold-out: your house-style baseline subject
Segment: X% / Y% / Z%
7. パターンをコンテキストとして保存する

今後のセッションで使用できるよう、効果的なパターンの要約を Cogny のコンテキストツリーに保存します。

{
  "path": "insights/email/subject-line-patterns",
  "body": "<the top 5 winners + top 3 drags, with numbers and date range>"
}
8. 分析結果を作成する

分析から明確な実行可能な知見(例:「直近の配信の 50% で、開封率に悪影響を与えている冒頭の絵文字が使われている」)が得られた場合は、分析結果を作成します。

{
  "title": "Emoji-at-start subjects are tanking opens (-25% vs baseline)",
  "body": "11 of last 100 sends started with emoji. Avg open 18% vs 24% non-emoji baseline. Recommend: move emoji to mid-subject or drop entirely on next 10 campaigns and re-measure.",
  "action_type": "subject_line_optimization",
  "expected_outcome": "Lift average open rate by 2-4 pp",
  "estimated_impact_usd": 0,
  "priority": "medium"
}

注意事項

  • リフトの数値は相関を示すものであり、因果関係ではありません。必ずサンプルサイズを示し、弱いシグナルにはその旨を明記してください。
  • ユーザーのリスト登録者数が 5,000 人未満の場合、開封数はばらつきやすくなります。最低 2 週間を対象に分析することを推奨し、注意喚起を行ってください。
  • Apple MPP は iOS Mail ユーザーの開封率を押し上げます。開封率が全体的に高く(すべて 40% 超など)、シグナルの信頼性が低下しているように見える場合は、その旨を記載し、補助指標として CTR を重視してください。

コメント