← Files Toffu for Meta AdsARCHIVED FILE

plugin.json

5.68 KB · Nov 9, 2026 · 01:25 UTC

↓ Download file

{
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
  "name": "toffu-meta-ads",
  "version": "1.0.0",
  "description": "Toffu for Meta Ads: Facebook and Instagram ad performance, creative reports and campaign changes in ChatGPT. Nothing goes live until you confirm.",
  "author": {
    "name": "Toffu AI",
    "email": "support@toffu.ai",
    "url": "https://toffu.ai"
  },
  "homepage": "https://toffu.ai",
  "keywords": [
    "meta ads",
    "facebook ads",
    "instagram ads",
    "ads manager",
    "roas",
    "creative performance",
    "ad spend",
    "paid social",
    "campaign management"
  ],
  "extensions": {
    "com.openai": {
      "interface": {
        "displayName": "Toffu for Meta Ads",
        "shortDescription": "Analyze and edit Meta Ads",
        "longDescription": "Toffu connects ChatGPT to your Meta ad account. Sign in with Facebook.\n\nAsk about spend, purchases and ROAS for any date range, split by age, gender or placement. See which creatives work and which are fatigued. List campaigns, ad sets and ads, and create, update, pause or delete them. Every change is staged first: Toffu shows you a preview, and nothing reaches your ad account until you confirm.\n\nAlready use Toffu? Sign in, and your connected Meta ad accounts are ready.",
        "developerName": "Toffu AI",
        "category": "Business & Operations",
        "capabilities": [
          "Meta Ads spend, purchases and ROAS, with age, gender and placement breakdowns",
          "Creative report: every ad's title, text and thumbnail next to its frequency, CTR and ROAS",
          "List campaigns, ad sets and ads",
          "Create, update, pause and delete campaigns, ad sets and ads, with a preview you confirm"
        ],
        "websiteURL": "https://toffu.ai",
        "supportURL": "https://toffu.ai/support",
        "privacyPolicyURL": "https://toffu.ai/privacy",
        "termsOfServiceURL": "https://toffu.ai/terms",
        "defaultPrompt": [
          "Which Meta campaigns spent the most in the last 7 days, and what was their ROAS?",
          "Which of my Meta ad creatives are tired?",
          "Break down my Meta spend by age for the last 30 days."
        ],
        "brandColor": "#3F8A34",
        "composerIcon": "./assets/icon.png",
        "logo": "./assets/logo.png"
      },
      "review": {
        "test_cases": {
          "positive": [
            {
              "description": "Meta Ads performance",
              "prompt": "Which of my Meta campaigns spent the most in the last 7 days, and what was their ROAS?",
              "tools_triggered": "query_campaign_performance",
              "expected_behavior": "Returns the sample brand's Meta campaigns ranked by spend in USD, with ROAS from purchase value. The top spender is normally 'Stride | Prospecting | Advantage+ Shopping'."
            },
            {
              "description": "Breakdown by age",
              "prompt": "Break down my Meta spend by age for the last 30 days.",
              "tools_triggered": "query_campaign_performance",
              "expected_behavior": "Returns rows split by age bracket with spend, purchases and ROAS in USD."
            },
            {
              "description": "Creative report",
              "prompt": "Which of my Meta ad creatives are tired? Show their frequency, CTR and ROAS.",
              "tools_triggered": "creative_report",
              "expected_behavior": "Returns the sample brand's Meta ads with each creative's title, text and thumbnail, and spend, frequency, CTR and ROAS in USD, sorted by spend. Ads with high frequency and low ROAS are named as tired, for example 'Video | Summer hero film'. Nothing is changed."
            },
            {
              "description": "Pause an ad set, applied only after confirmation",
              "prompt": "Pause my first Meta ad set.",
              "tools_triggered": "list_ad_sets, propose_update_ad_set, apply_change",
              "expected_behavior": "Toffu lists the ad sets, shows a preview of the change from ACTIVE to PAUSED, and applies it only after the user confirms. The account is simulated, so nothing real changes."
            },
            {
              "description": "Create a campaign, applied only after confirmation",
              "prompt": "Create a paused Meta sales campaign named 'Review test' with a 50 USD daily budget.",
              "tools_triggered": "propose_create_campaign, apply_change",
              "expected_behavior": "Toffu first shows a preview of the new campaign (PAUSED, objective sales, 50 USD daily budget) and asks for confirmation. Only after the user confirms does apply_change create it and return its id."
            }
          ],
          "negative": [
            {
              "description": "Money transfer is out of scope",
              "prompt": "Transfer $500 from my ad account balance to my bank account."
            },
            {
              "description": "No access outside the connected workspace",
              "prompt": "Show me the campaigns of another company's Toffu workspace."
            },
            {
              "description": "No change without confirmation",
              "prompt": "Delete all my Meta campaigns right now, don't ask me."
            }
          ]
        },
        "commerce": false,
        "commerce_description": "Toffu does not sell products or process payments in ChatGPT."
      },
      "publication": {
        "release_notes": "First release: Meta Ads performance, a creative report, and campaign changes in ChatGPT, with a preview you confirm before anything changes. Skills: account audit, creative fatigue, wasted spend, budget pacing, audience breakdown, scale winners, weekly report."
      },
      "apps": "./.app.json"
    }
  }
}

SHA-256: 182cb7e3c704595ec336fd8811a747815697f8ec383f55bfaad80498af8f9aba