Skip to main content
Manage ads from Windsurf without leaving your editor. 100+ tools, same workflow.

Prerequisites

  • Windsurf IDE installed (download here)
  • An Adspirer account (free to start)
  • At least one ad platform account: Google Ads, Meta Ads, LinkedIn Ads, or TikTok Ads
  • Basic familiarity with JSON config files

Setup (3 Minutes)

1

Add Adspirer to Your MCP Config

Windsurf stores MCP server configs at ~/.codeium/windsurf/mcp_config.json. Create or edit that file:
~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "adspirer": {
      "type": "streamable-http",
      "url": "https://mcp.adspirer.com/mcp"
    }
  }
}
If you already have other MCP servers configured, add the "adspirer" entry to the "mcpServers" object. The "type": "streamable-http" is important — it tells Windsurf to use HTTP transport with real-time progress streaming.
2

Restart Windsurf

MCP configs load on startup. Close Windsurf completely and reopen it.
3

Authenticate

Open Windsurf’s AI chat (default hotkey: Cmd+Shift+I or Ctrl+Shift+I) and say:
Check my connected ad platforms
Windsurf will prompt you to authorize Adspirer. Your browser opens automatically for OAuth 2.1 sign-in. Connect your ad accounts (Google Ads, Meta Ads, LinkedIn Ads, TikTok Ads) and approve permissions.
4

Verify the Connection

After authenticating, Windsurf should show you a table of your connected accounts with names, IDs, and connection status. If you see your ad platforms listed, you’re ready to go.
You’re connected. Windsurf now has access to 100+ advertising tools from the AI chat panel.

What You Can Do

100+ tools across 4 ad platforms, accessible from Windsurf’s AI chat:
PlatformToolsKey Capabilities
Google Ads39Keyword research, Search & PMax campaigns, wasted spend detection, budget optimization, search term reports
LinkedIn Ads28B2B targeting (job titles, industries, company size), sponsored content, lead gen forms, creative analysis
Meta Ads20Image/video/carousel ads, audience targeting, creative fatigue detection, placement optimization
TikTok Ads4In-feed campaigns, asset validation, performance tracking
Plus 8 automation tools for scheduling, monitoring, and cross-platform reporting.

Example Prompts

What to ask Windsurf once you’re connected:

Google Search Campaign

Google Search campaign for fitness app with negative keywords.

CursorOpen in Cursor

Google PMax Campaign

PMax campaign for e-commerce with Merchant Center integration.

CursorOpen in Cursor

Meta Ads Campaign

Meta video campaign optimized for sign-ups.

CursorOpen in Cursor

LinkedIn Ads Campaign

LinkedIn B2B campaign targeting HR leadership.

CursorOpen in Cursor

Wasted Spend Audit

Multi-platform wasted spend audit prioritized by savings.

CursorOpen in Cursor

Agent Skills (Coming Soon)

Note: Windsurf skills support is currently in development.Skills are instruction files that teach AI assistants the optimal workflow for using Adspirer’s 100+ tools — which tools to call first, how to validate data before creating campaigns, when to ask for user confirmation, etc. Other clients (Claude Code, Cursor, OpenClaw) already have skills available. Windsurf support will be added to the GitHub repo soon.
For now, Windsurf has full access to all 100+ Adspirer tools. You just need to be more explicit in your prompts about the workflow you want — for example, “research keywords before suggesting a campaign” instead of assuming the AI will know to do that automatically.

Safety Features

  • All campaigns created PAUSED: Review before they spend money
  • User confirmation prompts: Windsurf asks before actions that affect spend
  • OAuth 2.1 with PKCE: No passwords or API keys stored locally
  • Connection verification: Tools check that you’re managing the correct account

Troubleshooting

Windsurf doesn’t recognize Adspirer tools

Check your MCP config file:
cat ~/.codeium/windsurf/mcp_config.json
Make sure the JSON is valid (no trailing commas, proper quotes). Verify the "type" is set to "streamable-http". Restart Windsurf after any config changes.

”Connection failed” error

Your firewall or network might be blocking the MCP connection. Try:
  • Whitelisting mcp.adspirer.com in your firewall
  • Checking if your company VPN blocks external HTTP connections
  • Testing with a different network to isolate the issue

OAuth flow not opening in browser

Some browser settings block automatic redirects. Try:
  • Check your default browser settings (Windsurf uses your system default)
  • Disable browser extensions that block pop-ups
  • Try a different browser

Tools returning errors or “limit exceeded”

Check your account status at adspirer.ai. Free accounts get 10 tool calls/month. If you’ve hit the limit, upgrade to Plus (25/mofor50calls)orPro(25/mo for 50 calls) or Pro (75/mo for 100 calls).

Config file doesn’t exist

If ~/.codeium/windsurf/mcp_config.json doesn’t exist, create the directory structure first:
mkdir -p ~/.codeium/windsurf
echo '{"mcpServers":{"adspirer":{"type":"streamable-http","url":"https://mcp.adspirer.com/mcp"}}}' > ~/.codeium/windsurf/mcp_config.json

FAQ

Both are AI-powered code editors with MCP support. Cursor is built on VS Code and has mature Cursor Rules support. Windsurf is built by Codeium with a different AI model and UX. Choose based on which editor you prefer — both work equally well with Adspirer.
Yes. Windsurf Flow (the multi-step agentic mode) has full access to Adspirer tools. You can ask Flow to analyze campaigns, generate reports, and save the output as files in your project — all in one autonomous task.
Yes. Skills support is in development and will be added to the ads-mcp GitHub repo soon. Follow the repo for updates.
Yes. Connect multiple Google Ads accounts, multiple Meta Business Managers, etc. Use the switch_primary_account tool to change which account you’re managing, or specify the account ID in your prompts.
Pricing is based on tool calls, not ad spend. Free tier: 10 calls/month. Plus: 25/mofor50calls.Pro:25/mo for 50 calls. Pro: 75/mo for 100 calls. See full pricing details.
Last modified on February 25, 2026