Google Ads MCP Server (Read & Write)
Pricing
from $80.00 / 1,000 results
Google Ads MCP Server (Read & Write)
MCP server exposing 60+ Google Ads tools: campaign creation, reporting, optimization, and deep analytics for agencies and technical advertisers. Bring your own Google Ads credentials
Pricing
from $80.00 / 1,000 results
Rating
0.0
(0)
Developer
Ankit Sharma
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
7 days ago
Last modified
Categories
Share
Google Ads MCP Server
A hosted MCP (Model Context Protocol) server that gives AI agents full control over your Google Ads account β create campaigns, edit ads, optimize bids, analyze performance, and auto-fix issues, all through natural language.
68 tools across 8 categories: Create, Read, Update, Extensions, Analysis, Optimization, Deep Analytics, and Auto-Actions.
π’ How it works (hosted β no server needed)
This Actor runs the MCP server for you in Standby mode. Connect any MCP client to one URL β no Docker, no VPS, no setup.
Endpoint (after you start the Actor):
https://<your-run>.apify.actor/mcp
Add it to Claude Desktop, Cursor, or Cline as a Streamable HTTP MCP server, then just ask in plain English:
- "List my campaigns."
- "Create a search campaign with a $20/day budget."
- "Which keywords are wasting spend?"
π What you provide β your own Google Ads credentials
This is a bring-your-own-credentials tool. Enter these in the Actor's Input (they stay private to your run):
| Field | Where to get it |
|---|---|
| Client ID | Google Cloud Console β APIs & Services β Credentials β OAuth 2.0 Client |
| Client Secret | Same OAuth client as above |
| Developer Token | Google Ads β Tools β API Center (needs a Manager / MCC account) |
| Refresh Token | Generated once via OAuth (see below) |
| Login Customer ID (optional) | Your MCC customer ID, digits only, no dashes |
β οΈ You need a Google Ads Manager (MCC) account and an approved developer token. A plain Google Ads user without these cannot use this tool. It is built for agencies and technical advertisers.
Step-by-step credential setup
- Create a Google Cloud project β enable the Google Ads API.
- OAuth consent screen β User type: External β add your Google account as a Test user β then PUBLISH the app ("In production").
- π΄ Critical: in Testing mode, your refresh token expires after 7 days. Setting the app to In production makes it permanent. You do not need Google to fully "verify" the app β just click through the unverified-app warning once.
- Create OAuth credentials β OAuth client ID β Web application β redirect URI
http://localhost:8080/β copy the Client ID + Secret. - Get a developer token in Google Ads β Tools β API Center (requires an MCC account; may take a day or two to approve).
- Generate a refresh token β sign in with the Google account that has access to your ad account, approve, and copy the printed refresh token.
- Paste all values into the Actor Input and start it.
π΅ Pricing
Pay-per-usage: $0.08 per tool call, plus Apify platform usage for the running server. No monthly commitment β cancel anytime.
π§° Tools (highlights)
CREATE
| Tool | Description |
|---|---|
create_campaign_budget | Create a daily budget |
create_search_campaign | Create a new search campaign linked to a budget |
create_ad_group | Create an ad group inside a campaign with CPC bid |
add_keywords | Add keywords with match types: EXACT, PHRASE, BROAD |
create_responsive_search_ad | Create RSA with up to 15 headlines and 4 descriptions |
READ / DISCOVER
| Tool | Description |
|---|---|
list_accessible_customers | List all Google Ads account IDs you can manage |
search_ads | Execute any GAQL query for custom data retrieval |
get_campaign_performance | Campaign metrics: impressions, clicks, cost, CTR, conversions |
get_ad_performance | Ad-level metrics (includes policy status and disapprovals) |
get_search_terms | See the actual search terms that triggered your ads |
generate_keyword_ideas | Native Keyword Planner: search volumes, competitor keywords, CPCs |
UPDATE
| Tool | Description |
|---|---|
update_campaign_status | Set campaign to ENABLED, PAUSED, or REMOVED |
update_campaign_budget_amount | Change daily budget amount |
update_ad_group_bid | Change Max CPC bid on an ad group |
update_responsive_search_ad | Edit headlines/descriptions of an existing RSA |
update_keyword_bid | Change CPC bid on a specific keyword |
remove_keyword | Delete a keyword from an ad group |
EXTENSIONS
| Tool | Description |
|---|---|
add_negative_keywords | Block irrelevant search terms at campaign level |
set_ad_schedule | Only show ads during specific hours |
add_call_extension | Add a phone number to ads for call leads |
ANALYSIS
| Tool | Description |
|---|---|
analyze_wasted_spend | Find keywords burning money with zero conversions |
analyze_keyword_performance | Categorize keywords: Top / Average / Underperformers |
analyze_search_terms | Find negative keyword opportunities |
analyze_time_performance | Find peak and dead hours for ad scheduling |
analyze_geo_performance | See which locations convert vs. waste money |
OPTIMIZATION
| Tool | Description |
|---|---|
get_optimization_score | Account health score (0β100) with an action plan |
analyze_budget_efficiency | Evaluate ROI and recommend budget reallocation |
analyze_ad_copy_performance | Compare ad variations and find winners/losers |
generate_account_report | Full account health report in one call |
auto_create_campaign | All-in-one: builds an entire campaign from scratch (PAUSED) |
DEEP ANALYTICS
| Tool | Description |
|---|---|
deep_campaign_analysis | Z-tests, CPA trends, and statistical proof per campaign |
anomaly_detector | Real-time disaster shield using rolling Z-scores |
quality_score_doctor | Diagnoses root causes of high CPCs |
ad_fatigue_detector | Linear regression to catch dying ads before CTR drops |
budget_efficiency_curve | Finds the inflection point of diminishing returns |
keyword_profitability_matrix | Scores keywords by profit potential |
AUTO-ACTIONS
| Tool | Description |
|---|---|
auto_pause_wasted_keywords | Pause keywords exceeding a waste threshold |
auto_adjust_bids | +15% on top performers, β30% on underperformers |
auto_add_negative_keywords | Add negatives from wasted search terms |
π¬ Example prompts
Campaign management
- "Create a new campaign named 'Product Launch' with a budget of $10/day."
- "Pause campaign 'Summer Sale' in account 1234567890."
One-shot campaign builder
- "Build a complete campaign for my plumbing business at mysite.com with a $25/day budget and a call extension at 555-1234."
Discovery & Keyword Planner
- "What keywords is www.competitor.com using?"
- "What is the search volume and CPC for 'emergency plumber'?"
Optimization & analysis
- "What's my account optimization score?"
- "Show me wasted spend in the last 30 days."
- "Which locations are wasting my money?"
Deep analytics
- "Run a deep campaign analysis."
- "Are any of my ads suffering from fatigue?"
- "Generate a keyword profitability matrix."
Auto-actions
- "Auto-pause all keywords that spent over $5 with zero conversions."
- "Auto-adjust bids based on performance."
