Skip to content

Put competitors' ads next to what works for the client on a Claude whiteboard

Builds a competitor board on a Claude whiteboard from the Get MCP Ads ad library (brand findings, messaging, sample creatives with their pictures) and the client's Meta account (the ads that beat their ad set among the 20 with the most spend): one panel per competitor theme, a "What works for us" panel, one big sourced number per panel on a shared line, and up to three proposed tests, each tied to the panel it comes from. Days running is never presented as results.

Recipe

Intent What two or three competitors say in their recent ads, each theme backed by one sourced number and two sample ads, next to the client's own ads that beat their ad set, ending on tests to decide.

Steps
10
Tools
0
Rules
4
Failure modes
4
skills/competitor-board-on-a-whiteboard.md

When to use it

Use it when

  • Someone asks what competitors do in their ads, for a competitive review, a swipe board, or to compare their creative with the client's before a brief or a season.
  • Before deciding a creative test, to put the market's angles next to what already works in the account.

Do not use it when

  • A full report on one brand: use the ad library's brand analysis in the conversation.
  • Comparing performance with competitors: the library has none of their spend or results.
  • Hosts without Claude's whiteboard artifact: answer in the conversation with the same reads.

What it needs first

Optional Meta Ads

No single source is required: this one reads across whatever you have connected.

Preconditions

  • The account is among the chosen accounts, confirmed via list_accounts.

Evidence every conclusion must carry

  • Every competitor number names its brand, range and the ad library; every client number its account, ad set and period.
  • Each test points to the panel and the fact it comes from.
Inputs
InputRequiredWhat it is
clientrequiredThe workspace and its Meta account, for the "What works for us" panel.
competitorsTwo or three brands. Without them, the workspace's followed brands, else a proposal from the ad library for the client's category.
windowRange of the competitors' ads.Default: last 30 days.

Procedure

In order. Every tool named is one the gateway ships, and links to its reference.

Steps

  1. Pick two or three competitors: the brands the person names, else ad_library_list_followed_brands, else ad_library_search_brands for the client's category and country, proposed to the person before building. One range for all (30 days by default); use 90 days only for a brand with fewer than 20 new ads in 30 days, and say so on its note.
  2. For each brand, read ad_library_get_brand_findings (new ads, still active, median days running, format split, recurring angle) and ad_library_get_brand_messaging (offer types and angles, with their counts). Pick two sample ads with ad_library_get_creatives: the dominant format and theme first, then one that shows the second fact cited, first seen in the range, still active, with distinct visuals.
  3. For the client, read the ad set with the most spend (or the one named) and its 20 ads with the most spend with get_account_entities, keep those that beat the ad set (CPA under and ROAS above its own), and count how many of the 20 share a theme in their names (a sale, an offer, a production).
  4. Download each picture: competitors' from the creative url (or the video poster), ours with get_creative_wall as the creative wall skill does. Upload them into the board. When a download fails, a white card the same size with the brand and "Picture unavailable", linked to the ad library page; never redraw or describe someone else's creative as an SVG.
  5. Lay out left to right, 32 apart, panels with padding 28: one panel per competitor theme (title in large bold written from its facts, a one-line subtitle, two pictures at one height of 340 each at its own ratio with 18 of tape room, captions 30 below with **Brand**, what the ad shows and whether it carries an offer, and "N days running"), then "What works for us" (rows 172 apart: a 120 thumbnail linked to Ads Manager, label, format, media and status, spend and CPA, ROAS large in green above the ad set's or terracotta below). Every panel reserves the tallest title and subtitle so pictures start on one line.
  6. End each panel on one big sourced number in title size, all on the same line (the tallest panel's content plus 24): ink for competitors, cobalt #4169FF for the client's, the one the takeaway is about. Under each, a yellow note that continues the number's sentence, with its own denominator ("185 of 196 tagged ads"), ending with its source in italics.
  7. Tests column, 440 wide, no panel: "Three tests to decide" and "Proposals that follow from this board, nothing decided yet.", then up to three green blocks 24 apart, each "**N. <test>**", the one fact behind it, and "*From: <panel title> (<brand>)*". Never people, roles or dates.
  8. Header: the brand line ("**Get MCP Ads** / Competitor board / <account> · <platform> · <brands>, <range>"), the title "What the others say, next to what works for us" at 30, the takeaway about the client at 110 (10 words at most), and at 168 the source rule: competitor ads come from the Get MCP Ads ad library, public Meta ads first seen in the range; days running is how long an ad ran, never its results; counts describe what the library observed, not each brand's full inventory. Footer, 56 below: our account, currency, period, the ad set's CPA and ROAS, the competitors and their range, what a click opens, then the brand line.
  9. Keep every text readable in light and dark: the board picks the ink of a text, and of an SVG's currentColor, from what lies directly under it (a filled card gives the card's ink, anything else, an SVG image included, the board's ink). So never write text over an SVG that lies on a filled card: a large labelled drawing (a timeline, a chart, ribbons with labels) sits on the board background, framed if needed by a hollow rounded shape stroked #8C8C8C, and filled cards hold only text written on them, pictures and small unlabelled marks.
  10. Brand the board with the Get MCP Ads mark, twice and nowhere else: an image element 16 by 16 with "by": "claude" and this exact src: data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' data-look='clean'><path d='M4.5 1.5v21M19.5 1.5v21' stroke='currentColor' stroke-width='2.6' stroke-linecap='square' fill='none'/><circle cx='12' cy='12' r='4.2' fill='currentColor'/></svg>. For a small text line at (x, y), put the mark at (x − 2, y + 3) and the small ink text at (x + 20, y). Header, at y 0 above the title: "**Get MCP Ads** / <board name> / <scope>" (account or brand, platform, period, joined by " · "). Footer: 16 below the source line, "Data via [Get MCP Ads](https://getmcpads.com)".Never drop data-look='clean' (the bars turn into pen strokes), never upload the mark as a picture (pictures get a polaroid frame), never recolour it: accent colours belong to the data. No mark on cards and never larger than small text.

Decision rules

The observable condition, what it lets you conclude, and what takes the conclusion back.

  • When A competitor has fewer than 20 new ads in the rangeConclude Widen that brand to 90 days and say so on its note, or leave it out and say why; never build a theme on a handful of ads.
  • When The two sample ads of a brand share one visualConclude Pick another ad with a distinct visual from the brand's findings or listing; if none exists, say so in the caption.
  • When No ad of the client beats its ad setConclude Show the two closest to it in the "What works for us" panel, say they do not beat it, and propose no test built on them.
  • When The person asks which competitor ad works bestConclude Say the library observes public ads only: days running and repetition show what a brand keeps, never what performs.

Where the agent stops

The board decides nothing and changes nothing: the tests are proposals for the team, and following a brand or launching a test is a separate, confirmed step.

How it goes wrong quietly

The cases where the analysis is wrong and still looks right. Read them before trusting a number.

  • Writing a competitor's spend, results, CPA or ROAS, or saying one of its ads works.
  • Presenting days running or the number of ads as success.
  • Giving a percentage without its denominator, or a brand's whole inventory instead of what the library observed.
  • Writing a test as decided, with an owner or a date.

What the answer contains

What Competitor board on a whiteboard returns
SectionWhat it holds
WhiteboardCompetitor theme panels with sample ads, the client's ads that beat their ad set, one sourced number per panel, up to three tests to decide, and the brand.
NoteThe source rule for ad library data, the ranges, and what was left out and why.

Manage your ads from your AI assistant

Start for free

Free with 1 ad account, no card. Pro is free for 7 days.