MCP Google Ads Server
Provides tools for querying Google Ads campaign, keyword, search term, and geographic performance data, as well as managing negative keywords, campaign budgets, keyword bids, and running account audits via the Google Ads API.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
MCP Google Ads Server
An MCP (Model Context Protocol) server that lets AI models query Google Ads data, manage keywords, adjust budgets, and audit accounts — directly from Claude, GPT, or any MCP-compatible client.
Ships with a demo mode that returns realistic mock data, so you can explore the full API without any Google Ads credentials.
Architecture
graph LR
A[AI Client<br>Claude / GPT] -->|MCP Protocol| B[MCP Server]
B --> C{Mode?}
C -->|Demo| D[Mock Data<br>Realistic fixtures]
C -->|Live| E[Google Ads API<br>GAQL queries]
B --> F[Resources<br>accounts, doctrines, health]
B --> G[Tools<br>8 operations]Related MCP server: LoomaScale Google Ads
Tools
Tool | Description |
| Campaign performance: impressions, clicks, cost, conversions, CPA, ROAS |
| Search term report with wasted spend detection |
| Keyword-level data with quality scores and bid info |
| Geographic breakdown by city/region |
| Add negatives to campaigns or shared lists |
| Adjust daily budgets |
| Change CPC bids on individual keywords |
| Comprehensive audit: wasted spend, low QS, high CPA, doctrine compliance |
Resources
URI | Description |
| List of managed accounts with IDs and labels |
| Operational rules engine (10 doctrines) |
| Health score, alerts, and recommendations |
| Server mode and connection info |
Quick Start
1. Install
pip install -e .2. Run in Demo Mode
mcp-google-adsNo configuration needed — demo mode is the default. The server returns realistic mock data modeled on home-service advertising (TV mounting, handyman services).
3. Connect to Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"google-ads": {
"command": "mcp-google-ads"
}
}
}4. Connect to Claude Code
Add to your project's .mcp.json:
{
"mcpServers": {
"google-ads": {
"type": "stdio",
"command": "mcp-google-ads"
}
}
}Live Mode
To query real Google Ads data, set credentials in .env:
cp .env.example .env
# Fill in your Google Ads API credentialsThen start with demo mode disabled:
MCP_DEMO_MODE=0 mcp-google-adsRequired credentials:
GOOGLE_ADS_DEVELOPER_TOKEN— from your Google Ads API CenterGOOGLE_ADS_CLIENT_ID/CLIENT_SECRET— OAuth2 app credentialsGOOGLE_ADS_REFRESH_TOKEN— generated via OAuth2 flowGOOGLE_ADS_LOGIN_CUSTOMER_ID— your MCC account IDGOOGLE_ADS_CUSTOMER_IDS— comma-separated managed account IDs
Example Session
You: What are my top campaigns by ROAS?
Claude: I'll check your campaign metrics.
> get_campaign_metrics(date_range="LAST_30_DAYS")
Here are your campaigns ranked by ROAS:
1. Brand - Exact Match — 11.5x ROAS, $1,247 spend, 48 conversions
2. Emergency - Phrase Match — 5.4x ROAS, $892 spend, 12 conversions
3. Local - City Targeting — 3.1x ROAS, $2,100 spend, 22 conversions
4. Services - Broad Modified — 2.7x ROAS, $3,456 spend, 31 conversions
5. Competitor Conquest — 0.3x ROAS, $1,890 spend, 2 conversions ⚠️
The Competitor Conquest campaign is bleeding money at $945/conversion.
I'd recommend pausing it or adding tighter negative keywords.Project Structure
src/mcp_google_ads/
├── __init__.py # Package metadata
├── server.py # MCP server — tools, resources, entry point
└── demo_data.py # Realistic mock data fixturesAuthor
Ruslan Danelian — premium.ruslandanelian.com
I build MCP servers, Google Ads API automation, and AI agent systems for production use. This project is a sanitized example of the tooling I operate daily across 8 live ad accounts.
License
MIT — see LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
Run Google Ads and Meta Ads from ChatGPT or Claude: audit wasted spend, create and manage campaigns.
Open-source ad agent for LinkedIn Ads and Google Ads. Drafts campaigns, audiences and reports.
Hosted Google Ads MCP for Claude and ChatGPT. Preview every write. No developer token.
Live Google Ads, GA4, Search Console, Meta Ads and GBP data in Claude, ChatGPT and any MCP client
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceProvides comprehensive access to Google Ads API v20, enabling AI assistants to manage campaigns, accounts, assets, and reporting through natural language. It features automatic retry logic, GAQL query support, and advanced functionality for Performance Max and Demand Gen campaigns.11MIT

LoomaScale Google Adsofficial
AlicenseNot gradedqualityBmaintenanceMCP server for Google Ads. Audit spend, find wasted budget, create campaigns, monitor performance, and optimize ads directly from ChatGPT, Claude, or any MCP-compatible client.1MIT- AlicenseAqualityBmaintenanceEnables LLMs and AI agents to query Google Ads accounts and reporting data through the Google Ads API, including customer lookups, resource metadata inspection, and reference material on metrics, segments, and release notes. Tools and resources can be selectively enabled and namespaced via a configuration file, with authentication handled through Application Default Credentials or an OAuth proxy.3Apache 2.0
- AlicenseNot gradedqualityCmaintenanceEnables Claude, ChatGPT, Copilot, and Cursor to read Google Ads data—campaigns, ad groups, ads, keywords, search terms, budgets, conversion actions, change history, and custom GAQL queries—through 17 read-only MCP tools. It supports OAuth-authenticated access to real accounts without requiring a developer token, keeping all operations read-only and auditable.20 npmAGPL 3.0