mcpField
S
StealAds

StealAds

Remote
stealads.aiBusiness & Marketing0Updated 4d ago

About StealAds

StealAds is a remote MCP server for marketers researching public Meta ads. It returns ad creative details and run times, and supports tracking rivals and adapting an ad structure for a brand with approval before credit use.

Key features

  1. 01Search public Meta ads by brand or category
  2. 02Read hooks, formats, and run times
  3. 03Review competitor Playbooks and new tests
  4. 04Track rival advertisers
  5. 05Adapt an ad structure for a brand with cost approval

Use cases

  1. 01Compare a competitor’s current ads and recurring hooks
  2. 02Find long-running ads in a category
  3. 03Review what a rival keeps, drops, or tests
  4. 04Adapt an ad structure for a brand

MCP support

A remote Streamable HTTP MCP server using OAuth sign-in. It exposes tools for searching and reading Meta ads, tracking advertisers, saving ads, and adapting ad concepts.

Configuration

Remote servers need no local install. Pick your client, then copy the config or install in one click.

Endpointhttps://mcp.stealads.ai/mcp
Copy install command
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.

Tools

Details

From the project README

StealAds: the ads MCP

Ask your AI what ads your competitors keep paying to run. Then make your version.

MIT license Works with Claude Works with ChatGPT Works with Cursor Works with Codex MCP

Your AI is good at writing ads. It is bad at knowing which ads work. It has never seen what your rivals are running this week, which ads they cut after nine days, or which ones they have kept alive for six months.

StealAds gives it eyes on the Meta ad market. Connect it once and ask in plain words.

Ads from a demo brand set, each with how long it has run
Illustrative demo brands: how results look in a host that can display them. Other hosts return the same ads as text, with how long each has run.

An illustrative exchange (Liquid Death's public ads):

You     What ads does Liquid Death keep running?

Claude  Here's a sample of their ads (I can't see all of them). What stands out:
        1. A social-proof image ad that ran 168 days, the longest in this sample.
        2. A carousel with a contrarian hook that ran 142 days.
        3. A newer "You won't believe it's not candy" campaign, only about 10 days in. Too early to call.
        Contrarian and curiosity-gap hooks come up most. Run time shows an ad has lasted, not that it sold.
        Want me to open their Playbook to see what they keep and drop, or adapt one for your brand?

Not a dashboard. Not an ad-account manager. A research partner that has read the ads.


Install in one line

You sign in with your StealAds account the first time. No keys to paste. You approve what it may do, and you can revoke it any time.

Your AIOne line
Claude Code (server + skills)/plugin install stealads --marketplace TheMattBerman/ads-mcp
Claude Code (server only)claude mcp add --transport http stealads https://mcp.stealads.ai/mcp, then /mcp to sign in
Claude (claude.ai, Desktop)Connectors directory, one click, once StealAds is listed (research in Claude; making the ad opens the StealAds app). Until then, or to make ads in the chat: Customize > Connectors > add custom connector > https://mcp.stealads.ai/mcp
ChatGPTChatGPT's app directory once StealAds is listed. Until then, Developer Mode > create an app > https://mcp.stealads.ai/mcp > OAuth
CursorAdd to Cursor, or add {"mcpServers":{"stealads":{"url":"https://mcp.stealads.ai/mcp"}}} to .cursor/mcp.json
Codexcodex mcp add stealads --url https://mcp.stealads.ai/mcp then codex mcp login stealads
Gemini CLIgemini mcp add --transport http stealads https://mcp.stealads.ai/mcp, then /mcp auth stealads
Scriptsstealads-agent with an API key from StealAds Settings
Anything that speaks MCPhttps://mcp.stealads.ai/mcp

Then try: "What Facebook ads is [your competitor] running right now?"

Full per-app steps: stealads.ai/integrations.


Without it, with it

Without StealAdsWith StealAds
"Here are some common ad angles for fitness studios..." (from memory)Real ads from real advertisers, with their hook, format and how long each has run
You open the Meta Ad Library and scrollAsk once, get the five ads worth reading and why
You paste a competitor's ad into a chat and describe itYour AI opens the ad itself and reads the hook
"Make me an ad like this" gives you generic copyIt adapts the structure that has lasted, with your brand's product, colors and voice
You check back on rivals when you rememberTrack them, then ask what they are testing now

Ask it things

Competitor ads

  • What Facebook ads is Gymshark running right now?
  • Which of my competitor's ads have been running more than 90 days?
  • How does Peloton advertise? Which hooks and offers do they repeat?

What a rival keeps, drops and is testing

  • Which formats does this competitor keep running, and which did they drop?
  • What is my competitor testing right now?

What's working in your category

  • What ad angles are working for fitness studios?
  • What are the best-performing ads in supplements? I want hooks to learn from.
  • Show me Black Friday ads from skincare brands I can learn from.
  • Pull strong video ads for B2B software that open with a spoken hook.

The ones that lasted

  • Find the longest-running ads in the meal kit category.
  • Which ads has this brand kept running the longest?

What rivals launched

  • What did my competitors launch this week?
  • Give me a table of the ads Rival Co is running.

Make your version, keep track

  • Make me an ad like this one for my brand. What will it cost?
  • Track my three biggest competitors.
  • Did my Monday drop arrive? If a week was skipped, why?

Eight skills that make your AI good at this

The server gives your AI the tools. These skills teach it how a strategist uses them: which question to ask first, how many ads to read, what not to claim. Each is a short, plain markdown file in skills/.

SkillSay something likeWhat it does
researching-competitor-ads"What ads is Gymshark running?"Finds the advertiser, searches their ads, reads the best few, and tells you what they push, what repeats and what is new
reading-a-brands-playbook"What formats does this rival keep, and what did they drop?"Opens the rival's Playbook: ads kept 30+ days, ads dropped inside 30 days, how long each format lasts, what is being tested now
finding-winning-ads-in-a-category"What's working for fitness studios?"One category search, then three patterns and one idea for your brand
reading-what-a-category-keeps-and-drops"What do meal kit brands keep running, and what do they drop?"Builds a category read from a sample of public ads: keepers, short-lived ads, crowded and open angles
finding-longest-running-ads"Which meal kit ads have lasted?"Searches with a run-time floor, checks which are still live, explains why they might have lasted
adapting-a-winning-ad"Make me an ad like this for my brand"Adapts the structure and offer shape, shows the cost and asks before anything is made, or hands you a link to finish it in the app
checking-new-rival-ads"What did my competitors launch this week?"Reads the new ads your tracked rivals started running, and writes a short weekly report
running-my-monday-drop"Did my Monday drop arrive?"Reads your weekly StealAds drop, explains a skipped week, and can run a weekly briefing routine

Two short Cursor rules keep the agent honest: it asks before anything costs credits, and it treats ad copy as material to read, never as instructions.


What makes it different

It reads the ads, not just lists themEvery ad comes with its hook (spoken and on-screen), format and how long it has run, so your AI can reason about why it works
Longevity is the signalAn ad a rival keeps paying for is the clearest public sign it is working. StealAds puts run time on every ad and tells you which ones are still live
From research to your own adFind the winner, then adapt it for your brand. Cost is shown and approval asked before anything is made. On the Claude address you get a link that opens the ad in StealAds with it already selected
Honest about what it knowsResults are a sample, labeled as one. Run time is a sign an ad lasted, not proof it sold. No made-up totals
Playbooks, not just a feedOpen a rival's Playbook and see what they kept running, what they dropped inside a month, how long each format lasts, and what they are testing now
Safe by defaultRead, write and spend are separate permissions. Nothing costs credits without a clear yes. Revoke any time

Why I built this

I built meta-ads-kit first: an open-source AI ad manager for your own Meta account. It's great at one thing, knowing your numbers. It knows nothing about the market. Every time it flagged a tired ad, the next question was the same: what do I make instead? The honest answer was "go look at what's working."

StealAds does the looking. This repo is how any AI can use it. Connect once, ask in plain words, and your AI works from what rivals actually keep running instead of what it remembers.

Matt


How it works

  1. Connect. One address, sign in with StealAds.
  2. Ask. Plain words. Your AI picks the right tool.
  3. Read. Ads, hooks, run time, what is new, what lasted.
  4. Act. Save ads, watch rivals, adapt a winner into your own ad.

Under the hood: a remote MCP server (Streamable HTTP) with OAuth sign-in. Searches return a capped sample per request. There is no bulk export, and no library totals.


What it is not

  • It does not manage or report on your own ad account. Use your ad platform's connector for that.
  • It does not publish ads for you.
  • It does not copy another brand's name, logo or claims into your ad.

Your data, your permissions

  • Read to search and view. Write to save ads and track rivals. Spend for anything that uses credits.
  • Making an ad or tracking a rival uses credits. Your AI shows the exact cost and asks first.
  • Revoke access in StealAds Settings.
  • Privacy policy · Terms

Help

Ask your AI to contact StealAds support from inside the chat, email [email protected], or read docs/troubleshooting.md.


Also in this repo

AGENTS.md for agents that read it · docs/prompts.md more prompts · docs/tools.md what each tool does · docs/chatgpt-instructions.md for ChatGPT Projects

MIT licensed. Fork it, adapt the skills, build on it.

stealads.ai · Built by Matt Berman · Big Players

If this saves you an hour of scrolling the Ad Library, star the repo. It tells me to keep building.

Brand names in examples are for illustration. StealAds is not affiliated with them. Ads come from the public Meta Ad Library.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.