diagnose-underperforme…
Diagnose why a specific Google Ads or Meta Ads campaign / ad set / ad is underperforming and prescribe the next concrete action.…
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 the user wants a new PMax campaign.
Claude Code
$ npx -y skills add markifact/markifact-mcp --skill launch-pmax --agent claude-code
Codex
$ npx skills add markifact/markifact-mcp --skill launch-pmax -a codex -y
Cursor
$ npx skills add markifact/markifact-mcp --skill launch-pmax -a cursor -y
Gemini CLI
$ npx skills add markifact/markifact-mcp --skill launch-pmax -a gemini-cli -y
GitHub Copilot
$ npx skills add markifact/markifact-mcp --skill launch-pmax -a github-copilot -y
OpenCode
$ npx skills add markifact/markifact-mcp --skill launch-pmax -a opencode -y
Windsurf
$ npx skills add markifact/markifact-mcp --skill launch-pmax -a windsurf -y
name: launch-pmax description: 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 the user wants a new PMax campaign.
Stand up a complete PMax campaign with one fully-loaded asset group and (when applicable) Merchant Center listing scope. Always start **paused**.
1. Account name (substring) — required. 2. Goal: `Sales` (ROAS-driven, usually with Merchant Center) or `Leads` (CPA-driven). Required. 3. Daily budget. Required. 4. Bidding: `MAXIMIZE_CONVERSIONS` (default for leads/no history), `MAXIMIZE_CONVERSION_VALUE` (default for sales), or with target (`TARGET_CPA` / `TARGET_ROAS`). Required. 5. Geo + language. Required. 6. Final URL(s). Required. 7. Brand name + 1-line value prop. Required. 8. **Asset inventory the user can provide**: logos (1:1 + 4:1), images (landscape, square, portrait), videos (optional but Google will auto-generate if missing). Ask which they have; you'll generate text assets, but Google won't accept text-only PMax for most goals. 9. **For Sales**: Merchant Center ID + product scope (all products, by brand, by product type, by custom label). Required. 10. **Audience signals** (optional but recommended): existing customer lists, website visitors, custom segments by interest/intent. These are *hints*, not targeting.
1. **Discover** with `find_operations`. Look for: `gads_select_accounts`, `gads_create_campaign`, `gads_create_pmax_asset_group`, `gads_create_image_asset`, `gads_create_headline_asset`, `gads_create_description_asset`, `gads_update_audience_signals`, `gads_update_listing_groups`, `gads_pmax_channel_split`, `gads_search_geo_targets`. 2. **Inspect each** with `get_operation_inputs`. 3. **Resolve account**: `gads_select_accounts` with substring match. 4. **Resolve geo**: `gads_search_geo_targets`. 5. **Create campaign** (PAUSED). Set `advertising_channel_type=PERFORMANCE_MAX`, the bidding strategy + target, daily budget, geo + language. For Sales: link the Merchant Center ID. 6. **Create asset group** under the campaign → returns `asset_group_id`. 7. **Upload image assets** with `gads_create_image_asset` for each user-provided image and logo. Capture the returned asset IDs. 8. **Create text assets** with `gads_create_headline_asset` and `gads_create_description_asset` — generate the variety described in the rules below. 9. **Attach assets to the asset group** as the create-asset ops require (see each op's schema — some accept an `asset_group_id` directly). 10. **Audience signals** — `gads_update_audience_signals` with chosen segments. Skip if user has none, but explain that it slows ramp-up. 11. **Listing groups** (Sales only) — `gads_update_listing_groups` to scope which products PMax can advertise. Default: all products. Refine if the user wants brand/category exclusions. 12. **Confirm**: campaign id, asset group id, asset count by type, audience signal count, listing scope. Remind user it's paused.
Use the `safe-write-operations` skill from step 5 onward.
| Item | Value | |---|---| | Account | <name> (id) | | Campaign | <name> (id, PAUSED) | | Asset group | <name> (id) | | Headlines / long / desc / long-desc | counts | | Logos / images / videos | counts | | Audience signals | <n> segments | | Listing scope | all products / <filters> | | Daily budget / bidding | <values> |
End with: *"Unpause when ready. Check `gads_pmax_channel_split` after 7 days to see where spend is going."*
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.…
Edit a Meta ad's creative content — landing page URL, primary text, headline, description, CTA, link description — across one ad…
Launch a complete Google Ads Search campaign — campaign, ad group, responsive search ads, keywords, sitelinks, callouts, and…
Launch a complete Meta Ads campaign — campaign, ad set, and ad(s) — built paused and ready to review. Use when the user wants a…
Senior performance-marketing operator with hands-on access to the user's ad accounts via Markifact. Use proactively for anything…
Reference — what Markifact is, what the MCP server exposes, and the discover→inspect→run pattern. Always loaded into the…
When the user wants to plan, design, or implement an A/B test or experiment, or build a growth experimentation program. Also use…
Comprehensive SEO analysis for any website or business type. Full site audits, single-page analysis, technical SEO (crawlability,…
Turn the current project website into a short, polished, shareable launch video using Hyperframes. Use when someone says "/brag",…
Full website GEO+SEO audit with parallel subagent delegation. Orchestrates a comprehensive Generative Engine Optimization audit…