Map a competitor's whole ad strategy
Competitor researchRead-only
One brand, one message: volume, formats, audiences, landing pages, and the ads doing the heavy lifting.
Give me a full breakdown of what competitor.com is running on Meta right now.
Resolve the exact advertiser name first so we're looking at the right brand, then pull their Brand Spy overview for the last 90 days.
I want to know:
- How many ads are live, and how that compares to the 90 days before
- The split between video and static, and which one they put the most reach behind
- Who they're targeting (age, gender, top countries)
- Which landing pages they send traffic to
- Their 10 highest-reach ads, with the headline, primary text, and format for each
Finish with 5 bullets on what their strategy actually is, and where the obvious gap is that I could attack.
- search_adscan_top_companies
- get_adscan_brand_overview
- search_adscan_saved_ads
- adscan_query
Build a competitor board from just my website
Competitor researchWrite access
You give it your domain. It finds who you compete with, pulls their ads, and hands back a shareable board.
Build me a competitor inspiration board for yourbrand.com.
Work it out yourself:
1. Figure out what we actually sell from the site, then find our 8 closest advertising competitors
2. Show me the list with a one-line reason for each, and drop anyone who is clearly a marketplace or a giant retailer rather than a real competitor
3. Pull up to 5 of the best ads per competitor from AdScan
4. Create a board called "yourbrand.com competitors" with whatever ads you already have, and give me the share link
5. Only then queue scrapes for the competitors that had nothing cached. Don't sit and poll for them, just tell me to check back
Finish with the 3 angles that show up across multiple competitors that we are not running.
- find_competitors_for_website
- find_adscan_competitor_ads
- create_adscan_board_with_ads
- scrape_missing_adscan_competitors
- check_adscan_competitor_scrapes
Scrape a competitor's live ads on demand
Competitor researchWrite access
Paste an Ads Library link. It scrapes, waits for the job to finish, and summarizes what came back.
Scrape this Meta Ads Library page and tell me what you find: https://www.facebook.com/ads/library/?active_status=active&ad_type=all&country=US&is_targeted_country=false&media_type=all&search_type=page&view_all_page_id=20531316728
Kick off the scrape, then poll the job every 20 seconds until it reaches a terminal state. Don't guess at the results while it's still running. If I've hit the daily scrape limit, say so instead of retrying.
When it's done, pull the scraped ads for that advertiser and show me the top 10 by estimated reach with headline, primary text, format, and how long each has been running.
Then answer three things:
- Which creative format are they leaning on hardest?
- Which hooks repeat across more than one ad?
- Which ads have been live the longest, and what does that tell us?
- scrape_meta_ads_library
- get_adscan_scrape_status
- get_scrape_results
Who is advertising on this keyword right now
Competitor researchRead-only
A live Ads Library sweep for any keyword. Nothing queued, nothing to wait for.
Search the live Meta Ads Library for ads mentioning "cold plunge" in the US.
Give me up to 25 ads and group them by advertiser. For each advertiser tell me how many ads they have running and what the core promise of their messaging is.
Then flag which of these advertisers are new to me: brands running 5+ ads that I probably haven't been watching. For those, check whether AdScan already tracks them so I know if I can go deeper without scraping.
- search_meta_ads_library_keyword
- search_adscan_top_companies
What changed at a competitor this month
Competitor researchRead-only
Diff a brand against itself: new ads, killed ads, and the creative they're actually betting on.
Compare what competitor.com was running last month against what they're running now.
Resolve their exact advertiser name first, then pull their timeline and overview for both windows and tell me:
- Which ads launched in the last 30 days
- Which ads they stopped running
- Whether total ad volume is going up or down
- Whether the format mix shifted (more video? more static?)
- Any new landing page or offer that showed up
Keep it to a short brief I could read in two minutes, and end with one sentence on what they seem to be testing into.
- search_adscan_top_companies
- get_adscan_brand_overview
- adscan_query
- search_adscan_saved_ads
Find the biggest spenders in my category
Competitor researchRead-only
Sort the AdScan library by estimated spend so you only look at ads with real money behind them.
Find the highest-spend ads in the supplements category in AdScan.
Only show me ads with meaningful estimated spend behind them, and dedupe by advertiser so one brand can't take over the whole list.
For the top 15, give me the advertiser, the format, the hook in the first three seconds (or the headline for statics), and the estimated spend.
Then group them into the 3 or 4 creative patterns you see repeating, and tell me which pattern has the most money behind it.
- search_adscan_saved_ads_by_spend
- search_adscan_saved_ads
- get_adscan_ad_details
Find more ads like my best performer
Creative inspirationWrite access
Feed it a winning ad and it searches AdScan for the same angle across other brands.
Pull my best performing Meta ad from the last 30 days by ROAS, then go find ads like it.
Use the winning ad's copy, headline, and landing page as the source, and search AdScan for ads running the same angle at other brands. Video only.
Show me 20 results with a one-line note on why each one is related, then save the good ones to a board called "Angles that work".
Finally: what is the through-line between my winner and the best of what you found?
- list_ad_accounts
- get_top_ads
- search_adscan_related_ads
- create_adscan_board_with_ads
Break down why the top ads in my niche work
Creative inspirationWrite access
Concept breakdowns with verbatim hooks and the reasoning behind them, backed by real ads.
I sell a premium dog food subscription. Find the best-performing ads in that space and break down why they work.
For each concept I want:
- The format and how the first 3 seconds are structured
- The exact hook, word for word
- The objection it's handling
- Why it works, in plain language
- A link to the real ad so I can watch it
Give me 6 concepts, no two using the same mechanism, and rank them by how easily we could shoot them ourselves.
- generate_creative_inspiration
- search_adscan_saved_ads
- get_adscan_ad_details
Steal the hook patterns, not the ads
Creative inspirationRead-only
Reads a brand's whole ad copy library and pulls out the reusable formulas.
Pull every ad copy variant competitor.com is running and find the patterns. Resolve their exact advertiser name first.
Don't just list the copy. I want the formulas:
- The opening line structures they reuse
- Which proof points show up over and over (numbers, guarantees, testimonials, comparisons)
- The CTA phrasing they've settled on
- Anything they say in every single ad, which usually means it's tested and it works
Then write me 10 new hooks for yourbrand.com using those same structures but our own positioning. Nothing copy-pasted.
- search_adscan_top_companies
- adscan_query
- get_adscan_brand_overview
Generate a static ad from a proven layout
Creative inspirationWrite access
Reference ad in, on-brand static out, straight into your media library.
Find a high-performing static ad in AdScan for the skincare category that uses a before/after layout.
Use it as the structural reference and build me a static ad for yourbrand.com. Same layout logic and hierarchy, completely our own copy, colors, and claims. Nothing lifted from theirs.
Check how many AI credits I have first, show me the generated prompt before you spend any, then wait for the image to finish and show me the result.
- search_adscan_saved_ads
- get_ai_credits
- build_ai_static_ad_prompt
- generate_ai_image
- wait_for_ai_image
The Monday morning standup
ReportingRead-only
Last week vs the week before, the movers, and the one thing to do about it.
Give me my Monday standup for last week across every ad account I have connected.
Structure it like this:
1. Headline numbers: spend, revenue, ROAS, CPA, and how each moved vs the week before
2. Biggest movers: the 3 campaigns that improved most and the 3 that got worse, with the numbers
3. New ads: anything launched last week and whether it's working yet
4. Waste: the ads that spent real money and returned nothing
Keep the whole thing under 400 words. End with the single highest-impact thing I should do today.
- list_ad_accounts
- query_reports
- get_daily_spend
- get_top_ads
Find the ads quietly wasting budget
ReportingRead-only
Spend with nothing to show for it, ranked by how much you'd get back.
Find everything wasting money in my Meta account over the last 14 days.
I care about three kinds of waste:
- Ads that spent over $100 with zero purchases
- Ads whose CPA is more than double the account average
- Anything that's spending but has delivery errors or a broken creative
For each one give me the ad name, spend, what it returned, and how confident you are that it should be paused.
Sort by wasted spend, biggest first, and total up how much I'd save per week if I paused all of them. Don't pause anything yet, just show me the list.
- list_ad_accounts
- query_reports
- get_delivery_errors
- list_ads
Creative fatigue check
ReportingRead-only
Catches the ads that are decaying before the weekly report does.
Check my top 20 spending Meta ads for creative fatigue.
For each one compare the last 7 days against the 7 days before: CPA, CTR, CPM, and frequency.
Flag anything where CTR is dropping while frequency climbs, that's the fatigue signal I care about.
Give me three buckets: fresh and scale it, watch it, and it's done. For anything in the last bucket, tell me how long it ran and what it spent so I know what a full lifecycle looks like for us.
- list_ad_accounts
- query_reports
- get_insights_breakdown
Build the dashboard once, reuse it forever
ReportingWrite access
Describe the view you want and it saves the report and dashboard for you.
Build me a saved weekly performance report and a dashboard to go with it.
The report should cover all my Meta accounts, broken down by campaign, with spend, purchases, revenue, ROAS, CPA, CTR, and CPM for the last 7 days.
Then start an empty dashboard called "Weekly review" and add these widgets:
- Spend and ROAS trend over the last 90 days
- Top 10 ads by revenue
- Spend split by campaign
- A creative format breakdown
Show me the fields you plan to use before you save anything, then give me the links to both when they exist.
- get_report_fields
- build_report_config
- create_custom_report
- create_custom_dashboard
- add_dashboard_widget
Drive folder to live ads
LaunchingWrite access
Duplicates the right ad set, launches your creative into it, and waits for the batch to land.
Launch the videos in this Drive folder as new Meta ads: https://drive.google.com/drive/folders/158inTYAGT7hZfCWqxODFkhag2GocZjAW
Here's how I want it done:
1. Show me the videos you found first
2. Find the best existing campaign to duplicate and tell me why you picked it, then duplicate it and its ad set
3. Look up the ad set inside the new duplicated campaign and use that as the launch target
4. Launch each video as its own single ad there, using my saved AdManage defaults for page, Instagram account, CTA, and link
5. Launch them PAUSED so I can review
6. Poll the batch until it finishes and give me the ad IDs plus the Ads Manager link
If anything is missing before you can launch, ask me rather than guessing.
- browse_google_drive
- list_campaigns
- duplicate_campaign
- list_adsets
- get_launch_defaults
- launch_ads
- get_batch_status
Relaunch last month's winners
LaunchingWrite access
Finds what worked, rebuilds it in a fresh ad set, and keeps the social proof.
Find my 5 best Meta ads from the last 30 days by ROAS, with at least $500 spend each, and relaunch them into a fresh ad set.
Before you do anything, show me the 5 ads with their numbers so I can confirm.
Then duplicate the ad set they're sitting in so they get a clean delivery start, and copy the ads into it reusing the existing posts, so the likes and comments carry over instead of resetting to zero.
Name the new ads so I can tell them apart from the originals, leave everything paused, and show me the new ad IDs when you're done.
- list_ad_accounts
- get_top_ads
- get_source_ad_setup
- duplicate_adset
- duplicate_ad
Prep it as a draft, don't launch
LaunchingWrite access
All the setup work done for you, nothing goes live until you say so.
Set up a Meta launch as a draft using the creative in this folder: https://drive.google.com/drive/folders/158inTYAGT7hZfCWqxODFkhag2GocZjAW
Do all the setup: pick a sensible target campaign and ad set, apply my saved defaults, write primary text and headlines for each creative based on what the video is actually showing, and name everything consistently.
Save it as a draft. Do not launch it.
Then show me exactly what you set up, ad by ad, so I can review the copy and fix anything before I hit go myself.
- browse_google_drive
- create_draft
- get_draft
- list_drafts
Auto-pause the losers
AutomationWrite access
A threshold that kills spend on ads that have clearly failed, dry-run before it goes live.
Set up a performance threshold that pauses any Meta ad that has spent more than $150 over the last 3 days with zero purchases.
Skip ads that are less than 3 days old, they haven't had a fair run yet.
Before you create anything:
- Check what automations I already have so we don't end up with two of them fighting each other
- Preview the threshold and show me exactly which ads it would pause right now, with their spend
Only create it after I've seen that list, and set it to run once a day rather than continuously.
- list_automations
- preview_performance_threshold
- create_performance_threshold
Scale the winners automatically
AutomationWrite access
A budget rule that raises spend on ad sets that are working, with a hard ceiling.
Set up a rule that raises daily budget by 20% on any ad set holding a ROAS above 2.5 over the last 3 days with at least $200 spend. Cap the daily budget at $500 so it can't run away.
Before you create it:
- Show me the rules I already have so this doesn't collide with one
- Use my last 30 days of reporting to show me which ad sets meet that condition today, and roughly how often they would have qualified
If it looks like this would fire on almost everything, tell me and suggest a tighter threshold instead of creating it.
Have it check once a day, and show me where I can see its history afterwards.
- list_rules
- query_reports
- create_rule
- get_rule_history
Audit what my automations actually did
AutomationRead-only
Every automated change last week, and whether it was the right call.
Show me everything my AdManage automations AND my native Meta rules did in the last 7 days. They're two separate systems, so check both.
For each action: what fired, which ad or ad set it hit, when, and what the entity's performance looked like at that moment.
Then grade it. Was pausing that ad right, or did I just kill something that was about to turn around? Did a budget increase actually earn its money back?
Finish with any rule that's misfiring and what I should change about it. Be blunt, I'd rather turn a rule off than keep trusting it.
- list_automations
- list_automation_executions
- list_rules
- get_rule_history
- query_reports