Skip to main content
Glama

AdOps MCP

CSV-first analytics & optimization for Google Ads + Meta Ads — inside Claude, Cursor, and any MCP client.

License: MIT TypeScript MCP

Export a CSV from Google Ads or Meta Ads Manager → import into AdOps → ask your AI assistant anything about your campaigns.

No OAuth. No developer tokens. No API approval queues. Your data stays on your machine.


Why CSV-first?

Google Ads API and Meta Marketing API are powerful but gated: developer token approval takes days, Meta app review takes weeks, OAuth flows are fragile. For most advertisers those barriers never clear.

AdOps takes a different path. Every ad platform's dashboard already has a Download / Export button that produces a CSV of exactly what you care about: campaign performance, day-segmented metrics, spend, conversions, ROAS. AdOps reads that CSV and runs the same analysis you'd get from a $200/mo optimization suite — anomaly detection, budget allocation, A/B significance, forecasting, industry benchmarks — directly inside your AI assistant.

You stay in control of your data. You don't hand credentials to a third party. You don't wait 3 weeks for a review.


Features

  • 17 MCP tools covering the full ad analytics lifecycle

  • 4 MCP resources for at-a-glance dashboards

  • CSV import from Google Ads Editor, Google Ads web UI, and Meta Ads Manager — with automatic format detection (US vs European number formatting, CRLF vs LF, BOM handling)

  • Unified cross-platform schema — Google and Meta campaigns normalized into a single UnifiedCampaign / UnifiedMetrics model

  • AI-powered recommendations — budget reallocation, scaling high-ROAS campaigns, pausing zero-conversion ones

  • Bulk-edit CSV export — turn recommendations into Google Ads Editor / Meta Ads Manager CSVs you can paste straight into the dashboard for one-click bulk updates

  • Statistical anomaly detection — CPC spikes, CTR drops, spend surges, sensitivity-configurable

  • A/B test analysis with confidence scoring

  • 9-vertical industry benchmarks built-in (eCommerce, SaaS, B2B, etc.)

  • Spend & conversion forecasting (7/14/30 days)

  • Demo mode — seed a realistic portfolio to try the tools before importing your own data

  • 91 automated tests — TypeScript strict mode, Zod validation throughout


Quick Start

npm i adops-mcp-server

Add to your MCP client (Claude Desktop claude_desktop_config.json, Cursor, VS Code, Windsurf):

{
  "mcpServers": {
    "adops": {
      "command": "node",
      "args": ["path/to/node_modules/adops-mcp-server/dist/index.js"]
    }
  }
}

Restart your client. Then, inside Claude:

> Seed demo data so I can explore AdOps

(calls ad_demo_seed)

Or import your real data:

> Import ~/Downloads/google-ads-report.csv as a Google Ads CSV

(calls ad_csv_import with platform=google, csv_path=...)


Exporting CSV from Your Ad Dashboard

Google Ads

  1. Open ads.google.comCampaigns view

  2. (Optional) Click Segment → Day in the toolbar for daily metrics

  3. Click Download (⬇) icon → choose .csv format

  4. Save to disk, give the absolute path to ad_csv_import

Meta Ads Manager

  1. Open business.facebook.comAds Manager

  2. Switch to Campaigns tab (not Ad Sets or Ads — campaign-level rollups)

  3. (Optional) Breakdown → Time → Day for daily metrics

  4. Click Reports → Export → Campaign performance (.csv)

  5. Save to disk, give the absolute path to ad_csv_import

Both exports work out-of-the-box with or without day segmentation. Without a Day column, you get one aggregated metric row per campaign. With Day segmentation, you get daily time-series data — which powers forecasting and anomaly detection properly.


Tools

Tool

Description

ad_demo_seed

Seed a realistic cross-platform demo portfolio (8 campaigns, 30 days of metrics) to try AdOps before importing real data

ad_csv_import

Import a Google Ads or Meta Ads CSV export — every other tool operates on this data

ads_export_recommendations

Export budget_analyze recommendations as Google Ads Editor CSV, Meta Ads Manager CSV, JSON, or Markdown — one bulk-paste and your ad dashboard reflects the AI's plan

platform_connect

Register a data source connection manually (alternative to CSV import, for scripted workflows)

campaign_list

List and filter campaigns across all imported platforms

campaign_create

Add a campaign manually (useful for what-if planning)

campaign_update

Update campaign settings in local storage (budget, status, bidding, schedule)

campaign_pause_resume

Batch pause or resume up to 50 campaigns

ads_report

Generate unified cross-platform performance report

budget_analyze

Analyze budget allocation, produce scaling/pausing recommendations

budget_reallocate

Transfer budget between campaigns across platforms

audience_insights

Demographic / geographic / device breakdowns

creative_specs

Platform-specific image, video, and text requirements reference

anomaly_detect

Detect performance anomalies with configurable sensitivity

ab_test_analyze

Compare two campaigns with statistical significance testing

competitor_benchmark

Compare your metrics against industry averages (9 verticals)

forecast_spend

Forecast spend, conversions, ROAS for the next 7/14/30 days


Resources

Resource

Description

ads://overview

Cross-platform dashboard summary

ads://campaigns

All active campaigns with key metrics

ads://budget

Budget allocation across platforms

ads://alerts

Recent performance anomalies and warnings


Unified Metrics Schema

AdOps normalizes metrics across platforms:

Metric

Formula

Notes

CTR

clicks / impressions × 100

Click-through rate (%)

CPC

spend / clicks

Cost per click

CPM

spend / impressions × 1000

Cost per 1000 impressions

ROAS

conversion_value / spend

Return on ad spend

CPA

spend / conversions

Cost per acquisition

Conversion Rate

conversions / clicks × 100

%

CSV column mapping:

AdOps Field

Google Ads CSV

Meta Ads CSV

spend

Cost (USD equivalent auto-converted if micros)

Amount spent (USD/EUR/...)

impressions

Impressions

Impressions

clicks

Clicks

Link clicks

conversions

Conversions

Results (Purchases/Leads/etc.)

conversion_value

Conv. value

Purchases conversion value

reach

Reach (Meta-only)

quality_score

Quality Score (if present)

— (Google-only)

European locale numbers (125,50 = 125.50) and semicolon-delimited CSVs are auto-detected.


Configuration

AdOps is stateless from the network's point of view — no API keys, no OAuth. The only configuration is where it persists imported data:

Variable

Description

Default

ADOPS_DATA_DIR

Directory for JSON persistence

./data

All other behavior is controlled via tool arguments.


Pricing

Tier

Price

Features

Free

$0

1 imported CSV per day, demo mode, all 17 tools read-only

Pro

$24/mo

Unlimited imports, full CRUD, all analytics tools

Agency

$59/mo

Multi-account, white-label reports, priority support

Available via GitHub (self-hosted, free) or the MCPize marketplace (managed).


Development

git clone https://github.com/enzoemir1/adops-mcp.git
cd adops-mcp
npm ci
npm run build
npm test           # 91 tests across 10 suites
npm run inspect    # Open MCP Inspector

Tests

91 tests covering:

  • CSV parser (11 tests): RFC 4180 quoting, BOM, European/US number formats, delimiter detection

  • Google Ads CSV import (7 tests): campaigns report, day segmentation, objective mapping, European locale

  • Meta Ads CSV import (5 tests): Meta-specific columns, currency detection from header, objective mapping, reach/frequency capture

  • Export recommendations (8 tests): Google Ads Editor CSV format, Meta Ads Manager CSV format, JSON wrapper, Markdown rendering, min_delta_pct filter, limit, by_type summary

  • Storage: Connection CRUD, campaign search, metrics aggregation, batch inserts

  • Analytics: Metric calculations, performance reports, forecasting, benchmarks

  • Optimizer: Budget analysis, reallocation, scaling/pausing recommendations

  • Anomaly: CPC spike detection, conversion drops, sensitivity, severity sorting

  • E2E Workflow: 14 real user scenarios


Roadmap

  • v1.3 — Add Google Ads Editor .csv.gz and Excel .xlsx support

  • v1.4 — Live Google Ads / Meta Ads API integration as an optional enterprise feature (BYOK — bring your own developer token + app review)

  • v2.0 — Multi-user server mode with JWT auth for team deployments


Pro License

AdOps ships in Free modead_demo_seed, ad_csv_import, platform_connect, campaign_list, campaign_create, campaign_update, campaign_pause_resume, ads_report, budget_reallocate, audience_insights, and creative_specs are open. The following tools require a Pro license:

  • ads_export_recommendations — bulk-edit CSV export for Google Ads Editor / Meta Ads Manager

  • budget_analyze — AI budget allocation analysis with action recommendations

  • anomaly_detect — statistical anomaly detection

  • ab_test_analyze — A/B test z-test with significance + uplift

  • forecast_spend — 7/14/30-day spend & ROAS forecast

  • competitor_benchmark — industry benchmark comparison

Buy a Pro License (€24, lifetime, 3 machines): https://automatiabcn.lemonsqueezy.com/buy/1525c929-832c-4472-a88a-58edbfa4e87b

Or get the Indie MCP Stack Bundle (€69, all 4 servers).

export LEMONSQUEEZY_LICENSE_KEY=YOUR-KEY-HERE

Or in your MCP client config:

{
  "mcpServers": {
    "adops-mcp": {
      "command": "npx",
      "args": ["-y", "adops-mcp-server"],
      "env": { "LEMONSQUEEZY_LICENSE_KEY": "YOUR-KEY-HERE" }
    }
  }
}

Validation is cached locally for 24 h — fully offline-capable after first run.


License

MIT License. See LICENSE for details.

Built by Automatia BCN.

Install Server
A
license - permissive license
A
quality
B
maintenance

Maintenance

Maintainers
Response time
2dRelease cycle
2Releases (12mo)

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/enzoemir1/adops-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server