Conversational ad ops
Ask in natural language: pull GAQL reports, create campaigns, update budgets. No dashboard hopping.
Opus Pigeon is an MCP server that gives Claude and GPT read/write access to Google Ads & Meta Ads — safely, on your infrastructure.
{
"mcpServers": {
"ads-ops": {
"command": "node",
"args": ["…/ads-ops-mcp/dist/index.js"],
"env": { /* .env credentials */ }
}
}
}
Why Opus Pigeon
The model reasons. This server executes — with guardrails built in.
Ask in natural language: pull GAQL reports, create campaigns, update budgets. No dashboard hopping.
All write operations create resources as PAUSED. Go live only after explicit approval.
Stdio transport. Zero HTTP overhead. Plugs into any MCP-compatible client instantly.
Connect multiple Google accounts. Token & account selection handled internally.
ads_list_accounts, ads_get_campaigns, ads_get_campaign_performance — one interface for Google & Meta.
Tool surface
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
.env.example
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
No third-party credits. No vendor lock-in. Your keys stay on your machine.