diagnose-underperforme…
Diagnose why a specific Google Ads or Meta Ads campaign / ad set / ad is underperforming and prescribe the next concrete action. Use when the user says…
Pause fatigued ads and ship fresh creative variants in their place. Works on both Meta and Google Ads. Use when CTR is dropping, frequency is climbing, or the user says "creative is tired" / "let's refresh ads". Always starts new variants paused.
> /plugin marketplace add markifact/markifact-mcp > /plugin install markifact@markifact
How it fires
How this command gets triggered: by you, by Claude, or both.
/rotate-creativeContext preview
What this command does when you run it.
Pause fatigued ads and ship fresh creative variants in their place. Works on both Meta and Google Ads. Use when CTR is dropping, frequency is climbing, or the user says "creative is tired" / "let's refresh ads". Always starts new variants paused.
description: Pause fatigued ads and ship fresh creative variants in their place. Works on both Meta and Google Ads. Use when CTR is dropping, frequency is climbing, or the user says "creative is tired" / "let's refresh ads". Always starts new variants paused. disable-model-invocation: true argument-hint: [scope, e.g. "Meta campaign Spring Sale" or "Google ad group X"]
Identify creative that's stopped performing, pause it, and ship variants. Preserve learning where possible. Always start new ads **paused** for review.
1. Account name (substring) — required. 2. Platform — Meta or Google Ads (or both, if user says "all my ads") — required. 3. Scope — campaign / ad set / ad group, or "all active" — required. 4. Lookback window — default 30 days. 5. Fatigue thresholds — defaults below; allow override:
6. Minimum sample size before pausing — default ≥ 100 clicks AND ≥ 7 days of data. Refuse to pause anything below this. 7. Variant strategy — `tweak` (small copy/headline change), `angle` (new hook/benefit), or `format` (e.g. image → video). Default `angle`. 8. How many variants per fatigued ad — default 2.
1. **Discover** ops: `meta_ads_select_accounts`, `meta_ads_list_ads`, `meta_ads_get_report`, `meta_ads_list_report_fields`, `meta_ads_update_ad_status`, `meta_ads_duplicate_ad`, `meta_ads_get_ad_creative`, `meta_ads_create_ad_creative`, `meta_ads_replace_ad_creative`, `meta_ads_create_single_image_ad` / `_carousel_ad` / `_video_ad` / `_flexible_ad`. 2. **Inspect.** 3. **Resolve account** (substring). 4. **Pull ad-level report** for the scope, current period vs prior period of equal length. Required fields: spend, impressions, clicks, CTR, conversions, frequency, ad_id, ad_name, adset_id, campaign_id. 5. **Apply thresholds** → list of fatigued ads. Drop anything under the sample-size floor. 6. **For each fatigued ad, build a variant**:
7. **Show user a preview**: each fatigued ad → its proposed variant(s), reasoning. Wait for approval. 8. **Execute**: a. Create the variants (PAUSED). b. Pause the originals via `meta_ads_update_ad_status`. 9. **Confirm** counts.
1. **Discover**: `gads_select_accounts`, `gads_get_report`, `gads_list_report_fields`, `gads_update_ad_status`, `gads_update_asset_status`, `gads_create_responsive_search_ad`, `gads_edit_responsive_search_ad`, `gads_create_responsive_display_ad`, `gads_create_demand_gen_*_ad`. 2. **Inspect.** 3. **Resolve account.** 4. **Pull ad / asset report** at the right granularity. For Search, pull at the ad level + asset performance. For PMax, pull asset group asset performance. 5. **Apply thresholds** (drop low-sample). For Search RSAs, also flag any with ad strength `Poor` / `Average`. 6. **For each fatigued RSA**:
7. **Show user the proposed RSAs / assets** before creating. 8. **Execute**: a. Create new ads (PAUSED). For PMax assets, add as ENABLED but the asset group continues running. b. For old ads: pause via `gads_update_ad_status` once the new variant is live (don't pause until the replacement exists). 9. **Confirm.**
Use `safe-write-operations` for every status flip and every create. Batch into one approval where possible.
Manage Google Ads, Meta Ads, TikTok Ads, LinkedIn Ads, Microsoft Ads, Reddit Ads, Pinterest Ads, Snapchat Ads, Amazon Ads, DV360, GA4, BigQuery, Google Search Console, Google Business Profile, Google Merchant Center, Facebook, Instagram, LinkedIn, Shopify,
Diagnose why a specific Google Ads or Meta Ads campaign / ad set / ad is underperforming and prescribe the next concrete action. Use when the user says…
Edit a Meta ad's creative content — landing page URL, primary text, headline, description, CTA, link description — across one ad or many. Use when the user…
Launch a complete Google Ads Search campaign — campaign, ad group, responsive search ads, keywords, sitelinks, callouts, and negatives — built paused and ready…
Launch a complete Meta Ads campaign — campaign, ad set, and ad(s) — built paused and ready to review. Use when the user wants a new Facebook/Instagram campaign.
Launch a Google Ads Performance Max campaign with a complete asset group, audience signals, and (for ecom) listing groups. Built paused for review. Use when…
Find wasted spend in Google Ads search terms and add negatives at the right scope (account list, campaign, or ad group). Use when the user says "find junk…