Run Meta Ads from Windsurf
Manage Meta Ads (Facebook + Instagram) campaigns inside Windsurf (IDE) — 36 tools, OAuth setup in about 5 minutes, no dashboard switching.
-
36 Meta Ads tools, all in Windsurf
-
Paused-by-default. Cannot delete campaigns.
-
OAuth setup in ~2 minutes
See it in action
› Pull my Meta Ads performance for the last 30 days. Show spend, conversions, CPA, and ROAS by campaign. Flag any campaigns with ROAS below 2.0.
Meta performance audit — A monthly audit that surfaces which campaigns to keep, kill, or scale.
Overview
Adspirer is the MCP server that connects Windsurf (IDE) to your Meta Ads ad accounts, turning campaign management into a chat conversation. Codeium Windsurf — IDE with native MCP support. On the platform side, 36 tools cover manage Facebook, Instagram, Messenger, and Audience Network campaigns. Adspirer reads and writes — pull performance reports, audit launch new campaigns, launch new campaigns, pause underperformers, and reallocate budget — all from chat. New campaigns are always created paused so you can review before they go live, Adspirer cannot delete existing campaigns by design, and the free tier (15 tool calls / month, no credit card) is enough to run a full audit before you pay. Setup takes about 5 minutes via a JSON config entry.
Safety guarantees
-
New campaigns always created paused for review
-
Adspirer cannot delete existing campaigns
-
Budget changes need explicit confirmation
-
OAuth 2.1 + PKCE — passwords never seen
How it works
How it works
Windsurf
You ask in chat
Adspirer
36 tools, paused-by-default
Meta Ads
Live data, paused for review
Step 01
Connect
Paste the MCP URL into Windsurf, OAuth into Meta Ads.
Step 02
Manage
Ask in chat. Adspirer routes through 36 Meta Ads tools.
Step 03
Scale
Switch accounts in chat. Same audits across every client.
What you can do
36 tools across Meta Ads. The ones you'll use most:
-
Launch new campaigns — Build image, video, carousel, DCO, or Reels campaigns from a brief. Adspirer validates creative against Meta's requirements, plans the ad sets, and creates everything paused so you review before going live.
-
Pause underperformers — Pause individual ads, ad sets, or full campaigns by name from chat. Resume them later just as easily — Adspirer cannot delete existing campaigns (hard-coded safety).
-
Audit creative fatigue — Surface ads that have been running 14+ days with declining CTR — Adspirer recommends which creatives to refresh before they tank performance.
-
Find wasted spend — Flag campaigns running under your ROAS threshold so you can pause or reallocate budget. Works across active and paused campaigns.
-
Research audiences — Search Meta's targeting catalog by interest, demographic, or behavior. Browse existing custom audiences (lists, lookalikes, website, engagement) before building new ones.
-
Pull lead-form submissions — List configured lead forms and pull recent submissions, grouped by campaign — route them into your CRM workflow without leaving chat.
-
Optimize placements & budget — Compare CPA across Feed, Stories, Reels, Marketplace, and Audience Network. Reallocate budget toward winning ad sets — Adspirer never increases an existing budget without explicit confirmation.
-
Diagnose anomalies — When CPA spikes or CTR drops, ask why. Adspirer inspects audience changes, creative rotation, and platform-level events to explain the cause and recommend a fix.
Campaign types
Every Meta Ads format Adspirer supports — request one in chat.
Image campaigns
Single-image ads across Feed, Stories, and Marketplace. 1080×1080 minimum, validated before launch.
Video campaigns
Video ads up to 240s, 1:1 / 4:5 / 9:16 aspect ratios. MP4 or MOV, validated against Meta's spec.
Carousel campaigns
2–10 cards per ad, each with their own creative + headline + link. Great for product catalogs.
Reels campaigns
Vertical video for Instagram Reels and Facebook Reels. 9:16 aspect, optimized for mobile feeds.
Lead Gen Forms
On-platform forms that capture leads inside Facebook / Instagram — no landing page needed.
DCO (Dynamic Creative Optimization)
Provide multiple creative variants; Meta auto-mixes images, headlines, and descriptions to find winners.
More prompts to try
Same as Cursor — useful for engineering teams that ship features and ads from one editor.
Creative fatigue check — Catch fatigued ads before they drag down ad-set performance.
Lead-form pull — Quick pull of lead-gen data without leaving chat.
Diagnose a CPA spike — Anomaly diagnosis that explains *why*, not just *that*.
Launch an image campaign — End-to-end image campaign creation, with creative validation first.
Optimize placements — Move spend toward the placements that are actually converting for you.
Who this is for
Each Monday, ask Windsurf to pull last week's Meta Ads performance, surface campaigns running below your ROAS threshold, and recommend creative refreshes for fatigued ads.
Replaces a 60–90 minute manual review with a 5-minute chat, and surfaces problems before they tank ad-set performance.Switch context between client accounts in chat. Run the same audit prompt across each, paste the chat into your weekly client report. Multi-account is built in — no extra seats per account.
Cuts cross-account reporting from a half-day per account to ~10 minutes total.Brief Windsurf in plain English with budget, audience, and creative URL. Windsurf validates inputs against Meta Ads's requirements, builds the campaign paused, and walks you through what to review before launching.
No need to learn Meta Ads's dashboard UI; campaign goes live correctly the first time.Compare & decide
Adspirer vs alternatives
For running Meta Ads from Windsurf.
| Adspirer | DIY MCP server | Legacy SaaS dashboard | |
|---|---|---|---|
| Setup time | ~5 minutes via a JSON config entry | 2–4 hours building MCP server | 30–60 min onboarding + sales call |
| Cost — entry tier | Free (15 calls / mo) | Hosting + maintenance | $200–500 / mo minimum |
| Works inside Windsurf | Yes — a JSON config entry | Yes (if you build it correctly) | No — external dashboard only |
| Multi-account | Yes — switch in chat | Manual per-account auth | Yes — but each account billed |
| Read + Write | Full read + write (create / pause / update) | Whatever you build | Mostly read-only or seat-gated writes |
| Safety: cannot delete | Hard-coded — no delete tool | Up to you | Varies |
| Pricing transparency | Public — $0 / $49 / $99 / $199 | Self-hosted | Often quote-only |
Pricing
Start free. Upgrade if you outgrow it.
Configure
Required: Windsurf Pro. Most users finish in about two minutes.
Show setup steps for Windsurf
Add Adspirer to Windsurf MCP config
In Windsurf settings, add an MCP server with URL https://mcp.adspirer.com/mcp and OAuth authentication.
FAQ
Setup
Capabilities
Workflows
Compare
Safety & control
Related integrations
Same Windsurf, different platform — or same Meta Ads, different AI client.
Windsurf × other platforms
Meta Ads × other AI clients
- ChatGPT × Meta Ads →
- Claude × Meta Ads →
- Claude Code × Meta Ads →
- Cursor × Meta Ads →
- Codex CLI × Meta Ads →
- Gemini CLI × Meta Ads →
- OpenClaw × Meta Ads Soon
- Manus × Meta Ads Soon
Go deeper
Ready to connect Windsurf to Meta Ads?
Start free — 15 tool calls per month, no credit card. Setup takes about 2 minutes.
Try Adspirer free