Open source · Self-hosted · v0.1

Ad ops for the
AI-native stack

Opus Pigeon is an MCP server that gives Claude and GPT read/write access to Google Ads & Meta Ads — safely, on your infrastructure.

21+
MCP tools
2
Ad platforms
PAUSED
Safe defaults
claude_desktop_config.json
{
  "mcpServers": {
    "ads-ops": {
      "command": "node",
      "args": ["…/ads-ops-mcp/dist/index.js"],
      "env": { /* .env credentials */ }
    }
  }
}
Works with
Claude Desktop Claude Code Google Ads API Meta Marketing API Any MCP client

Why Opus Pigeon

Thin bridge, full control

The model reasons. This server executes — with guardrails built in.

💬

Conversational ad ops

Ask in natural language: pull GAQL reports, create campaigns, update budgets. No dashboard hopping.

🛡️

Safe by default

All write operations create resources as PAUSED. Go live only after explicit approval.

🔌

MCP native

Stdio transport. Zero HTTP overhead. Plugs into any MCP-compatible client instantly.

🔗

Multi-account OAuth

Connect multiple Google accounts. Token & account selection handled internally.

Unified cross-platform layer

ads_list_accounts, ads_get_campaigns, ads_get_campaign_performance — one interface for Google & Meta.

Tool surface

21 tools, two platforms

Google Ads 12 tools
  • Account & campaign listing
  • GAQL performance reports
  • RSA & ad group creation
  • Keywords & negatives
  • Budget & CPC bid updates
Meta Ads 9 tools
  • Ad account listing
  • Campaign / ad set / ad CRUD
  • Insights reporting
  • Creative & ad creation
  • Budget & status updates
Example session
you  Summarize last 7 days Google Ads performance
ai   → google_ads_get_performance_report
       12 campaigns · $4.8K spend · 3.2% CTR

you  Create a Search campaign, keep it paused
ai   → google_ads_create_campaign
       status: PAUSED · awaiting approval

Setup

Running in minutes

  1. Clone & install Node 18+, npm install, copy .env.example
  2. Configure credentials Google OAuth + developer token, Meta access token
  3. Add to MCP client Point Claude Desktop at dist/index.js
# install
git clone <repo> ads-ops-mcp
cd ads-ops-mcp
npm install
cp .env.example .env

# build & run
npm run build
npm start

# dev mode
npm run dev

Own your ad ops stack

No third-party credits. No vendor lock-in. Your keys stay on your machine.

Start building