Connect your account, then chat with AI to run tools.
Research keywords, audit client accounts, clean search terms, and manage campaigns from chat — including agency logins where one Google sign-in reaches dozens of client accounts under a manager account.
Live probe refreshed Sep 14, 2026 · Endpoint host mcp.mcpbundles.com
Built for
PPC Agencies, Performance Marketing Teams, In-House Paid Search, Growth Teams, Multi-Client Account Managers
Connect Google Ads to any MCP client in minutes
You’ll sign in to MCPBundles when your client connects.
https://mcp.mcpbundles.com/bundle/google-adsThis server needs a sign-in. MCPBundles handles that setup once — then chat here with saved access and a log of what ran.
Opens MCPBundles Studio with this server selected. After sign-in, chat and run tools from the same thread.
Browse all toolsFind a client by name
Agency-first flow: name the client, confirm the account, then read performance.
Find the Google Ads account for Bright Smile Co in my connected accounts, then show last 30 days spend summary and top campaigns.
Monday client triage
Typical agency standup: pick the client, diagnose spend and edits in one thread.
For Riverside Dental, review budget pacing and flag campaigns overspending in the last 7 days. Summarize what changed recently.
Find keyword opportunities
Turns keyword research into a structured campaign planning brief.
Use Google Ads keyword ideas and keyword volume to find search terms for a B2B SaaS campaign, then group them by intent, CPC range, and competition level.
Clean search terms
Maps search-term waste into concrete optimization actions per client.
Analyze recent search terms for this client account, identify irrelevant queries that should be negative keywords, and explain whether each should be campaign-level or ad-group-level.
What is Google Ads MCP?
Google Ads MCP connects your Google Ads accounts to AI assistants so you can research keywords, clean search terms, triage client accounts, and manage campaigns from chat — including agency logins where one sign-in reaches many client accounts under a manager account.
What Google Ads work can MCPBundles do?
It can inspect accounts, campaigns, ad groups, keywords, ads, search terms, budgets, geo/device/schedule performance, change history, and custom queries when you need fields the standard reports omit. Supported write workflows include campaign, ad group, keyword, ad, negative-keyword, budget, and bid changes.
How do agency logins pick the right client account?
Name the client in chat. When the match is clear, the AI works on that account. When two names are close, it asks you to choose. For browsing many clients, ask for a filtered account list. Manager-account routing is handled after you connect Google — you do not configure it per client.
Related editorial
Google Ads for Agencies with AI
Name the client in chat, confirm the account, and run spend and search-term reports without clicking through the manager account tree.
Domain knowledge for Google Ads — workflow patterns, data models, and gotchas for your AI agent.
Hierarchy: Account → Campaign (+Budget) → Ad Group → Keywords/Ads. Resolve account_id before any account-scoped call.
One OAuth login can reach many client accounts under manager accounts.
Resolve first: (1) User names a client → search by name or ID fragment. (2) Single match → use that account_id; do not re-list. (3) Multiple matches → show list, user picks — never guess. (4) User gives an ID → use it unless account-not-found. (5) Do not auto-pick when default scope is unset.
Browse vs resolve: name search when one client was named; paginated account list only for exploration. Refresh discovery after linked/removed clients or MCC routing changes. Missing-ID errors include suggested_accounts — narrow by name before browsing all.
Two MCP App surfaces mount alongside chat:
Studio open: use the open-app action that mounts Browse — not paginated account discovery. Home offers tool chips (load pulse, campaigns, browse accounts) and chat prompts.
When the panel is open, read tools with ui.resourceUri forward results to the iframe — do not re-call the same read only to refresh the UI. Call the read that owns the data (account summary for pulse, search-term report for search terms, etc.); the widget routes on panel_view. Account selection uses the chat-visible select-account action.
Start here after account resolve: account summary for the date range · then drill with campaigns, keywords, search terms, pacing, or geo as needed.
Research: keyword ideas from seed keywords, a page URL, or an entire domain (site — competitor Keyword Planner mode: pass a competitor domain as site to pull their keyword themes) · volume, CPC, competition for exact terms (up to 10k keywords per volume call). Read: account summary · budget pacing · keywords · ads · ad policy/disapprovals · search terms · geo/device/schedule · change history · custom GAQL · web UI deep links (open overview, keywords, search terms in ads.google.com) · billing posture (setup + account budget + campaign daily guardrails) · account budget (credits, served, caps). Write: create campaign (default PAUSED) → ad group → keywords → upsert RSA ad (omit ad_id = create; ad_id + status = pause/unpause without recreate) → enable campaign; pause/enable one ad group; update budget/bids; add negatives (campaign, ad group, or shared negative lists); create/link shared sets; sitelinks/callouts/snippets at account or campaign level; upload image assets for Search image extensions; propose account spending cap (monthly-invoicing accounts only). Keyword status/bid changes: read keywords for the ad group first; update one criterion at a time; on concurrent_modification, re-read once — never bulk-retry the same update. Search terms → negatives: pull search terms for the date range → flag irrelevant queries → add negatives at campaign, ad group, or shared-list level with match type PHRASE (default) or EXACT for precision. Delete: campaign (cascades ad groups/ads, not budget) · ad group · keywords · orphaned budgets (reference_count=0 via GAQL).
New campaigns default PAUSED. Read billing posture before enabling spend. Read keywords/ads before mutating — update tools skip no-op changes. One keyword update per call; do not loop-retry removed resources or concurrent_modification responses.
Built-in reads cover most weekly PPC work. Use custom GAQL when you need segment splits the dedicated tools omit.
Performance Max network split:
Demand Gen placement split (pair ad_network_type with ad_sub_network_type):
Prefer the campaign network breakdown read for the same split without hand-written GAQL.
3–15 headlines (≤30 chars), 2–4 descriptions (≤90). Good+ strength: 11+ headlines, 4 descriptions, zero pins, ad-group keywords in 2–3 headlines, diverse lines (features/benefits/CTAs, social proof). Minimize pinning — each pin reduces combinations Google can test.
Upsert (create + edit): one RSA upsert tool — omit ad_id to create; pass ad_id to update. Set status=ENABLED or PAUSED to unpause/pause without removing the ad (keeps policy approval). Change headlines/descriptions/final_url on update only when creative must change (may re-review). Do not remove+recreate just to enable a paused approved ad. On create, pass synthetic_content_attestation=YES|NO when headlines/descriptions include AI-generated copy.
Remove is permanent — use upsert status=PAUSED for temporary stops. After remove, create again via upsert without ad_id (or stale DESTINATION_NOT_WORKING: remove, then upsert create with ignore_destination_check=true).
Three independent signals — do not conflate:
For disapprovals use ad policy status (approval, review, policy topics, strength, final URLs, RSA text). The performance-oriented ads report omits policy fields. GAQL nested fields need format="json"; format="table" may break on policy_summary.
DESTINATION_NOT_WORKING when the URL is live = stale crawl timestamp:
ignore_destination_check applies at create only; cannot patch or API-appeal existing ads (Policy Manager appeals are UI-only).
Showing 25 of 55 from the live probe.
Google Ads Add Keywords
Add keywords to a Google Ads ad group. Provide an array of keywords with text and match type (BROAD, PHRASE, EXACT). Optionally set a CPC bid per keyword, or omit to use the ad group's default bid. Review the search terms report first to discover keyword opportunities.
Google Ads Add Negative Keywords
Add negative keywords to block unwanted search queries from triggering ads. Add at campaign level (blocks across all ad groups) or ad group level (blocks in one ad group). Provide campaign_id for campaign-level negatives, or ad_group_id for ad-group-level. Review the search terms report first to identify irrelevant queries driving wasted spend. PHRASE match is recommended for most negatives (default).
Google Ads Add Shared Set Keywords
Add negative keywords to a shared negative keyword list. Keywords apply to every campaign linked to that shared set.
Google Ads Apply Recommendation
Apply Google Ads optimization recommendations by resource_name. List candidates from the recommendations read first. For budget recommendations, pass budget_amount to override the suggested daily cap (otherwise Google applies its recommended amount). Recommendations expire quickly — apply soon after listing. Remove redundant keywords is UI-only and cannot be applied via API.
Google Ads MCP connects your Google Ads accounts to AI assistants so you can research keywords, clean search terms, triage client accounts, and manage campaigns from chat — including agency logins where one sign-in reaches many client accounts under a manager account.
It can inspect accounts, campaigns, ad groups, keywords, ads, search terms, budgets, geo/device/schedule performance, change history, and custom queries when you need fields the standard reports omit. Supported write workflows include campaign, ad group, keyword, ad, negative-keyword, budget, and bid changes.
© 2026 ThinkChain Inc. All rights reserved.
Google Ads Create Ad Group
Create a new ad group under a Google Ads campaign. Set a default CPC bid that applies to all keywords in the group (keywords can override individually). After creating, add keywords to the new ad group. Ad group type must match the campaign type (e.g. SEARCH_STANDARD for Search campaigns).
Google Ads Create Asset
Create an ad extension asset (sitelink, callout, or structured snippet) and link it at account level (CUSTOMER) or one campaign (CAMPAIGN). Sitelinks add clickable links below ads. Callouts add short feature highlights. Structured snippets list categories of services/features. Use CAMPAIGN when extensions should not appear on every campaign in the account.
Google Ads Create Campaign
Create a new Google Ads campaign with budget and bidding strategy. Creates the budget and campaign in one call. Defaults to PAUSED status so you can review before enabling. After creating, add ad groups, then keywords to complete the Search setup.
Google Ads Create Conversion
Create a conversion action in Google Ads. Conversion actions define what counts as a conversion (signup, purchase, lead, etc.). After creation, use After creation, list conversion actions to get the conversion ID and label needed for GTM tags.
Google Ads Create Image Asset
Upload an image to Google Ads and link it as an image extension. Accepts a public https image_url or image_base64 (max 5 MB). Defaults to AD_IMAGE at account level so Search ads can show the visual. Recommended sizes: 1200x628 landscape or 1200x1200 square. List existing image assets in the account before uploading.
Google Ads Create Rsa Ad
Create a Responsive Search Ad (RSA). Prefer the upsert RSA ad tool for new work — it also updates existing ads (pause/unpause without losing approval). This create-only entry point omits ad_id and always inserts a new ad.
Google Ads Create Shared Set
Create a shared negative keyword list (SharedSet type NEGATIVE_KEYWORDS). Add keywords with add-shared-set-keywords, then link to campaigns.
Google Ads Dismiss Recommendation
Dismiss Google Ads optimization recommendations so they no longer appear in the account. Use the recommendations list to obtain resource_name values. Dismiss is reversible only by waiting for Google to regenerate the suggestion.
Google Ads Find Accounts
Resolve a Google Ads client account from a name fragment or account ID. Returns ranked matches and, when unambiguous, a resolved account_id to use with account-scoped tools. When the workspace panel is open, results update the panel automatically — do not call this tool again only to refresh the UI.
Google Ads Get Account Budget
Read Google Ads account-level budgets (formerly budget orders). Returns spending limit type (INFINITE or a fixed cap), credit adjustments, amount already served, and any pending budget proposal. For billing-type guidance and campaign daily guardrails, read billing posture first.
Google Ads Get Account Summary
Get an account-level performance summary for a Google Ads account. Returns total clicks, impressions, cost, CTR, average CPC, conversions, and a breakdown of performance by campaign. Use compare_to to see how metrics changed vs a prior period. Start here to get a quick overview before drilling into campaigns or keywords. When the workspace panel is open, results update the panel automatically — do not call this tool again only to refresh the UI.
Google Ads Get Active Account
Return the active Google Ads client account, if any.
Google Ads Get Ad Groups
Get ad groups from a Google Ads account with performance metrics. Pass ad_group_id to get a single ad group with full details, or omit to list ad groups. Filter by campaign_id to see ad groups within a specific campaign. Returns ad group name, status, type, campaign, and metrics (clicks, impressions, cost, CTR, CPC, conversions). When the workspace panel is open, results update the panel automatically — do not call this tool again only to refresh the UI.
Google Ads Get Ad Policy Status
Get ad policy compliance status for a Google Ads account — approval_status, review_status, policy topic violations, ad_strength, final URLs, and RSA headlines/descriptions (for recreate workflows). Prefer this read over the general ads listing when checking disapprovals; the ads listing is metrics-focused and omits policy fields. Filter with approval_status=DISAPPROVED to list blocked ads. For DESTINATION_NOT_WORKING after the landing page is fixed: remove the ad, recreate a responsive search ad
Google Ads Get Ads
Get ads from a Google Ads account with creative details and performance metrics. Returns ad type, headlines, descriptions, final URLs, display URL, and metrics (clicks, impressions, cost, CTR, CPC, conversions). Filter by campaign or ad group to compare ad creative performance. Responsive search ads include all headline and description assets. For policy approval, review status, or disapprovals, use the ad policy status read instead — this tool does not return policy fields. When the workspace p
Google Ads Get Billing Posture
Read billing setup, account-level budget (credits, served spend, caps), and configured campaign daily budgets in one call. Returns whether API account-budget proposals are likely to work (monthly invoicing) versus using campaign budgets and pauses (typical automatic payments). Call before proposing spend caps or enabling promo/test campaigns.
Google Ads Get Budget Pacing
Get budget utilization and pacing for Google Ads campaigns. Shows each campaign's daily budget, amount spent this month, delivery method, and whether spend is on track. Use this to identify campaigns that are overspending or underspending their budget. When the workspace panel is open, results update the panel automatically — do not call this tool again only to refresh the UI.
Google Ads Get Campaign Network Breakdown
Break down Performance Max and Demand Gen campaign spend by ad network placement. Uses segments.ad_network_type (Search, Display, YouTube, etc.) and, for Demand Gen, segments.ad_sub_network_type (Shorts, in-feed, in-stream). Use this when you need to see where automated campaigns spend — not available in standard device reports. When the workspace panel is open, results update the panel automatically — do not call this tool again only to refresh the UI.
Google Ads Get Campaign Performance
Get one campaign's performance detail — spend, trend, and device breakdown. Opens the detail panel; browse overlay uses the same tool on card tap. When the workspace panel is open, results update the panel automatically — do not call this tool again only to refresh the UI.
Google Ads Get Change History
Get recent changes made to a Google Ads account — who changed what and when. Shows change type (CREATE, UPDATE, REMOVE), affected resource, who made it, and timestamps. Essential for auditing account changes and diagnosing sudden performance shifts. Filter by resource type (CAMPAIGN, AD_GROUP, AD, CRITERION, CAMPAIGN_BUDGET) to narrow results.
Google Ads Get Device Performance
Get advertising performance broken down by device type — desktop, mobile, and tablet. Shows clicks, impressions, cost, CTR, CPC, and conversions for each device. Essential for understanding whether mobile or desktop drives better ROI and informing device bid adjustments. When the workspace panel is open, results update the panel automatically — do not call this tool again only to refresh the UI.
Name the client in chat. When the match is clear, the AI works on that account. When two names are close, it asks you to choose. For browsing many clients, ask for a filtered account list. Manager-account routing is handled after you connect Google — you do not configure it per client.
Campaign creation defaults to a safe planning flow: create budgets, campaigns, ad groups, keywords, and responsive search ads with explicit inputs, then keep campaigns paused until the user chooses to enable them.
Manager accounts are the umbrella; spend and conversions live on client accounts underneath. Name the client first, then run reports on that account. Refresh the account list if Google recently linked or removed a client.
Google's official MCP server is read-only — a few reporting tools and GAQL resources for agents that only need to query data. MCPBundles adds full campaign management (create, pause, keywords, RSAs, negatives, budgets), agency MCC account resolution, billing posture checks, policy workflows, and an interactive MCP App for browsing accounts and campaign detail from chat.
Use a custom query when a standard report does not show the exact fields you need — for example ad strength, policy status, or a specific metric combination. Most weekly PPC work uses the built-in reports.
Add the MCPBundles server URL to your MCP client configuration (Claude Desktop, Cursor, VS Code, etc.). The URL format is: https://mcp.mcpbundles.com/bundle/google-ads. Authentication is handled automatically.
Google Ads provides 55 tools that can be called by AI agents, along with a SKILL.md that gives your AI agent domain knowledge about when and how to use them.
Google Ads uses One-click sign in. Google Ads requires credentials. Connect via MCPBundles and authentication is handled automatically.
MCPBundles is an independent platform built on the open Model Context Protocol standard. Not affiliated with Anthropic PBC or Claude.
Other MCP servers in this category from the directory index
Brevo is the most intuitive all-in-one customer engagement platform: email and SMS marketing, automa...