Skip to main content

Ad Radar

dev.ad-radar/ad-radarVersion 1.2.0

Search winning Meta ads with $50k+ in estimated spend, read hooks and scripts, and draft briefs.

Status

Responds558 msAnswered our handshake without sign-in.

Registry data may be out of date

We could not refresh it, so this page shows the last copy.
Last checked
Nov 14, 2026, 14:24 UTC
Latency
558 ms
Remotes responding
1 of 1
Sign-in
No sign-in
Hosting
Hosted outside the EU (detected)
Registry data as of
Nov 14, 2026, 22:14 UTC

Data from the official MCP Registry, checked by run.zero. How we check

Connect

Streamable HTTP
https://app.ad-radar.dev/api/mcpResponds558 ms
No sign-in

Claude Code

claude mcp add --transport http ad-radar https://app.ad-radar.dev/api/mcp

Claude Desktop and claude.ai

Settings > Connectors > Add custom connector
Name: ad-radar
Remote MCP server URL: https://app.ad-radar.dev/api/mcp

Cursor

{
  "mcpServers": {
    "ad-radar": {
      "url": "https://app.ad-radar.dev/api/mcp"
    }
  }
}

VS Code

code --add-mcp '{"name":"ad-radar","type":"http","url":"https://app.ad-radar.dev/api/mcp"}'

Built your own server? run.zero hosts MCP servers on European infrastructure.

Host your own MCP server on run.zero

Tools

6 tools

Tools of Ad Radar
Read-only
Idempotent
Open world
advertiser_hooksReturns the hooks, hook mechanisms and angles an advertiser uses most, counted over all of its ads in the library. advertiserId is the advertiser id shown in search_ads rows.NoYesYesNo
get_adReturns the full record of one ad: headline, body, CTA, full transcript, metrics, spendEstimate (an ESTIMATE based on engagement, not real spend; spendLowerBound = it is a minimum, "at least"), delivery status, winnerObservation (when we first observed it above $50k), media (public URLs), links (post, Ad Library, landing page, board), tags (the same dimension and slug search_ads shows), publisher platforms and landing domain. The transcript is in English: when the ad runs in another language (e.g. Spanish), transcript is the English translation, translatedFrom names the language and transcriptOriginal holds the original script. Text fields are null when they aren't available for that ad; the links always point to the original.NoYesYesNo
get_swipe_promptReturns a prompt template built from one ad, written for the user to run on their own product. The result is JSON with the template text in the template field. kind='swipe' is a template that maps the ad's beats, checks the fit with the user's product, drafts a full version with the same structure and adds alternative hooks. kind='analysis' is a template that breaks down why the ad works (audience, funnel, psychology, weak spots) and how its structure applies to a business. product and niche are written into the template; without product the template keeps a placeholder for it.NoYesYesNo
list_taxonomyLists the taxonomy dimensions of the Ad Radar library (awareness, angle, hook_pattern, vformat, pformat, landing...) with their valid values. These slugs are the values the tags filter of search_ads accepts.NoYesYesNo
search_adsSearches the Ad Radar library of Facebook and Instagram ads from the Meta Ad Library (every ad has at least $50k estimated spend), with the same filters as the Ad Radar board. By default it returns only active ads, sorted by score, as compact rows. Each row has an adKey, which get_ad and get_swipe_prompt accept. Valid tag dimensions and slugs are the ones list_taxonomy returns. headline and body are null when the ad's text isn't available (the tags still describe the ad); in rows they are cut at 140 and 280 characters, while get_ad returns them whole. Every other value in a row matches what get_ad returns for that ad. spendEstimate is an estimate based on engagement, not reported spend; spendLowerBound true means the value is a minimum ("at least").NoYesYesNo
winning_patternsReturns, for each taxonomy value, how many times more often it appears among winning ads than on average (lift), with adoption (ads, advertisers) and example ads; the same data as the 'What to do now' block of the Ad Radar analytics page. doThis lists the values above average, lower the values below. exampleAdKeys are adKeys that get_ad accepts.NoYesYesNo

Details

Registry status
Active
Published
Oct 20, 2026
Updated
Oct 20, 2026
Repository
Not given
Categories (suggested)
Marketing and SEOSuggested categories are assigned automatically from the registry text and may be wrong. Verified operators can correct them.
GDPR
Not declared

Are you the operator? Claim this listing