mcpField
M
meta-ad-creative-generation

meta-ad-creative-generation

github.com/eachlabsマーケティング・グロース44469 回インストール今日更新
リポジトリ

meta-ad-creative-generation について

meta-ad-creative-generationは、each::senseを使ってFacebookやInstagramの広告枠に合わせた画像・動画素材を作るスキルです。フィード、Stories、Reels、カルーセル、商品広告に対応し、反復編集や複数案の作成も案内します。

主な機能

  1. 01フィード、Stories、Reels向け素材
  2. 02カルーセル広告と商品広告
  3. 03静止画と動画の生成
  4. 04広告枠の比率とサイズの案内
  5. 05反復編集とテスト案の作成

活用シーン

  1. 01オンラインストアの商品広告を作成
  2. 02縦型StoriesやReelsの広告を制作
  3. 03A/Bテスト用の複数案を生成

インストール

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

$npx skills add https://github.com/eachlabs/skills --skill meta-ad-creative-generation

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

同梱ファイルreferences/SSE-EVENTS.md

詳細

Meta広告クリエイティブの生成

each::senseを使って、コンバージョン率の高いMeta(FacebookとInstagram)広告クリエイティブを生成します。このスキルでは、Metaの広告掲載枠、フォーマット、ベストプラクティスに最適化された画像や動画を作成します。

特徴

  • フィード広告:Facebook/Instagramのフィード向け静止画と動画
  • ストーリーズとリール:没入感のある掲載枠向けの縦型9:16コンテンツ
  • カルーセル広告:商品紹介向けの複数画像
  • 動画広告:エンゲージメントを高める短尺動画コンテンツ
  • 商品広告:ライフスタイルの文脈を取り入れた、Eコマース向けクリエイティブ
  • ブランド認知度:リーチキャンペーン向けの目を引くビジュアル
  • リード獲得:明確なCTAを備えた訴求力のあるビジュアル

クイックスタート

curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a Facebook feed ad for a fitness app showing someone working out with energetic vibes, include space for headline text"}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'

Meta広告のフォーマットとサイズ

掲載枠アスペクト比推奨サイズ用途
フィード(画像)1:11080x1080商品広告、ブランド認知度
フィード(画像)4:51080x1350縦方向のスペースを広く確保し、エンゲージメントを向上
フィード(動画)1:1または4:51080x1080または1080x1350商品のデモ、推薦コメント
ストーリーズ/リール9:161080x1920全画面の没入型広告
カルーセル1:11080x1080商品カタログ、特徴
右側の列1.91:11200x628デスクトップのサイドバー広告

使用例

1. 商品広告(Eコマース)
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a 1:1 Facebook product ad for wireless earbuds. Show the earbuds on a clean minimal background with lifestyle context - someone at a gym or running. Modern, premium feel. Leave space at top for headline."}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'
2. Instagramストーリーズ広告
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a 9:16 Instagram Stories ad for a skincare brand. Show a woman with glowing skin, soft natural lighting, minimalist aesthetic. Leave safe zones at top and bottom for UI elements."}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'
3. Facebook動画広告
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a 5 second 1:1 video ad for a coffee subscription service. Show steaming coffee being poured, cozy morning vibes, warm color grading. Eye-catching for autoplay without sound."}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'
4. カルーセル広告(複数商品)
# First image
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a 1:1 carousel ad image 1 of 4 for a furniture store. Show a modern sofa in a stylish living room. Clean, aspirational lifestyle photography style."}],
    "model": "eachsense/beta",
    "stream": true,
    "session_id": "carousel-furniture-001"
  }'

# Second image (same session for consistency)
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create carousel image 2 of 4. Show a dining table set in the same style as the previous image. Maintain consistent lighting and aesthetic."}],
    "model": "eachsense/beta",
    "stream": true,
    "session_id": "carousel-furniture-001"
  }'
5. リール広告(縦型動画)
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a 9:16 vertical video ad for Instagram Reels. Fashion brand summer collection - show a model walking on a beach in a flowing dress, cinematic slow motion, golden hour lighting. 5 seconds."}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'
6. アプリインストール広告
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a 4:5 Facebook ad for a meditation app. Show a peaceful person meditating in nature, soft morning light, calming colors (blues and greens). Include visual space for app store badges and CTA button."}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'
7. レストラン/食品広告
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a 1:1 Facebook ad for an Italian restaurant. Show a delicious pasta dish with steam rising, rustic table setting, warm inviting atmosphere. Food photography style, make it look appetizing."}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'
8. リード獲得広告(B2B)
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a 1:1 Facebook lead gen ad for a B2B SaaS product. Show a professional working on a laptop with data visualizations, modern office environment, confident and productive mood. Corporate but not boring."}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'
9. UGC風広告
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a UGC-style 9:16 video ad for a teeth whitening product. Show a young woman doing a selfie-style testimonial, authentic iPhone footage look, bathroom mirror setting, before/after reveal moment. 10 seconds."}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'
10. リターゲティング広告(商品画像付き)
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a 1:1 retargeting ad for sneakers. Show white sneakers prominently with a lifestyle background (urban street scene). Add visual urgency - style that says limited time offer. Clean product focus."}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max",
    "image_urls": ["https://example.com/product-sneakers.jpg"]
  }'

ベストプラクティス

画像広告
  • テキストのオーバーレイ:テキストは最小限に抑えます。Metaは、テキストの占有率を20%未満にすることを推奨しています
  • セーフゾーン:ストーリーズ/リールのUI要素に備えて、上下に14%の余白を設けます
  • 視線の焦点:重要なビジュアル要素を中央に配置します
  • コントラスト:フィードで目立つよう、コントラストの強い色を使います
  • ブランドカラー:広告全体で一貫したブランドアイデンティティを保ちます
動画広告
  • 最初の3秒で惹きつける:すぐに注目を集めます
  • 音声なしを前提にデザインする:キャプションやビジュアルストーリーテリングを使います
  • ループしやすくする:短い動画は自然につながるループにします
  • モバイルファースト:モバイル向けに縦型または正方形でデザインします
カルーセル広告
  • ビジュアルの一貫性:すべてのカードで同じスタイルを保ちます
  • ストーリー展開:画像同士につながりのある流れを作ります
  • 最初の画像で惹きつける:1枚目のカードを最も魅力的にします

Meta広告向けプロンプトのヒント

Meta広告クリエイティブを作成するときは、プロンプトに以下の詳細を含めます。

  1. フォーマット:アスペクト比(1:1、4:5、9:16)を指定します
  2. 掲載枠:フィード、ストーリーズ、リールのどれ向けかを明記します
  3. 商品/サービス:広告する内容を明確に説明します
  4. ターゲットオーディエンス:この広告の対象者を指定します
  5. 雰囲気/スタイル:エネルギッシュ、落ち着いた、高級感のある、遊び心のある、など
  6. テキストスペース:必要に応じて、見出し/CTA用のスペースを指定します
  7. ブランドガイドライン:色やスタイルの好みを指定します
プロンプトの構成例
"Create a [aspect ratio] [placement] ad for [product/service].
Show [visual description] with [mood/style].
Target audience: [demographic].
[Additional requirements like text space, brand colors, etc.]"

モードの選択

生成を始める前に、ユーザーに確認します。

「速くて安価なものと、高品質なもののどちらを希望しますか?」

モード最適な用途速度品質
max最終版の広告クリエイティブ、A/Bテストで勝った案遅い最高
ecoすばやい下書き、コンセプトの検討、大量テスト速い良好

複数ターンでのクリエイティブの反復

session_idを使って、広告クリエイティブを反復します。

# Initial creative
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a 1:1 Facebook ad for a watch brand, luxury feel"}],
    "model": "eachsense/beta",
    "stream": true,
    "session_id": "watch-ad-project"
  }'

# Iterate based on feedback
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Make it more dramatic with darker background, add some bokeh lights"}],
    "model": "eachsense/beta",
    "stream": true,
    "session_id": "watch-ad-project"
  }'

# Request variation
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create 2 more variations of this ad with different angles"}],
    "model": "eachsense/beta",
    "stream": true,
    "session_id": "watch-ad-project"
  }'

A/Bテスト用の一括生成

テスト用に複数のバリエーションを生成します。

# Variation A - Lifestyle focus
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a 1:1 ad for protein powder - lifestyle shot with athlete in gym"}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "eco"
  }'

# Variation B - Product focus
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a 1:1 ad for protein powder - clean product shot with ingredients"}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "eco"
  }'

# Variation C - Benefit focus
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a 1:1 ad for protein powder - before/after transformation style"}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "eco"
  }'

エラー処理

エラー原因解決策
Failed to create prediction: HTTP 422残高不足eachlabs.aiでチャージします
コンテンツポリシー違反禁止されたコンテンツMeta広告ポリシーに準拠するようプロンプトを調整します
タイムアウト複雑な生成処理クライアントのタイムアウトを最低10分に設定します

Related Skills

  • each-sense - Core API documentation
  • google-ad-creative-generation - Google Ads creatives
  • tiktok-ad-creative-generation - TikTok ad creatives
  • product-photo-generation - E-commerce product shots

コメント