← Files Toffu for LinkedIn AdsARCHIVED FILE
plugin.json
5.5 KB · Nov 12, 2026 · 19:38 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "toffu-linkedin-ads",
"version": "1.0.0",
"description": "Toffu for LinkedIn Ads: performance, campaign changes and audits for LinkedIn Ads 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": [
"linkedin ads",
"linkedin campaign manager",
"b2b advertising",
"lead gen forms",
"cost per lead",
"sponsored content",
"abm",
"ad spend",
"paid media",
"campaign management"
],
"extensions": {
"com.openai": {
"interface": {
"displayName": "Toffu for LinkedIn Ads",
"shortDescription": "Analyze and edit LinkedIn Ads",
"longDescription": "Toffu connects ChatGPT to your LinkedIn Ads account. Sign in with LinkedIn.\n\nAsk about spend, leads and cost per lead for any date range. List campaign groups, campaigns and ads, and create, update, pause or archive them. Every change is staged first: Toffu shows you a preview, and nothing reaches your LinkedIn Ads account until you confirm.\n\nAlready use Toffu? Sign in, and your connected LinkedIn Ads accounts are ready.",
"developerName": "Toffu AI",
"category": "Business & Operations",
"capabilities": [
"LinkedIn Ads spend, leads and cost per lead for any date range",
"List campaign groups, campaigns and ads",
"Create, update, pause and archive campaigns 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 LinkedIn Ads campaigns spent the most in the last 7 days, and what was their cost per lead?",
"List my LinkedIn campaign groups and the campaigns in each.",
"Pause my most expensive LinkedIn campaign."
],
"brandColor": "#3F8A34",
"composerIcon": "./assets/icon.png",
"logo": "./assets/logo.png"
},
"review": {
"test_cases": {
"positive": [
{
"description": "LinkedIn Ads performance",
"prompt": "Which of my LinkedIn Ads campaigns spent the most in the last 7 days, and what was their cost per lead?",
"tools_triggered": "query_campaign_performance",
"expected_behavior": "Returns the sample brand's three LinkedIn campaigns ranked by spend in USD, with leads and cost per lead. Sample data is relative to today; the top spender is normally 'Wellness | HR leaders | US'."
},
{
"description": "List campaign groups and campaigns",
"prompt": "List my LinkedIn campaign groups and the campaigns in each, with their status and daily budget.",
"tools_triggered": "list_campaigns, list_ad_sets",
"expected_behavior": "Lists the campaign groups 'Stride | Corporate Wellness' and 'Stride | Running Club Orders', and under them the campaigns 'Wellness | HR leaders | US', 'Wellness | Website retargeting' and 'Clubs | Coaches and organizers | US' with status and daily budget in USD."
},
{
"description": "Pause a campaign, applied only after confirmation",
"prompt": "Pause my LinkedIn campaign 'Clubs | Coaches and organizers | US'.",
"tools_triggered": "list_ad_sets, propose_update_ad_set, apply_change",
"expected_behavior": "Toffu shows a preview of the change to PAUSED and asks for confirmation. Only after the user confirms does apply_change pause it. The account is simulated, so nothing real changes."
},
{
"description": "Ads in a campaign",
"prompt": "Show the ads in my LinkedIn campaign 'Wellness | HR leaders | US' with their headlines.",
"tools_triggered": "list_ad_sets, list_ads",
"expected_behavior": "Lists the two ads 'Single image | Team step challenge' and 'Document | Wellness ROI guide' with their headline, ad copy and landing page."
},
{
"description": "Daily trend",
"prompt": "Show my daily LinkedIn Ads spend for the last 7 days.",
"tools_triggered": "query_campaign_performance",
"expected_behavior": "Returns one row per campaign per day (time_increment 1) for the last 7 days, in USD."
}
],
"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": "Archive all my LinkedIn 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: LinkedIn Ads performance and campaign changes in ChatGPT, with a preview you confirm before anything changes."
},
"apps": "./.app.json"
}
}
}
SHA-256: fd78ce5a099dc164fb746cc5e807510204b4bd6e78deb5a8dc7bd3de59dfdde8