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 18, 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.
MCPBundles publishes this directory for MCP discovery. Except where we host or operate an offering, third-party services run under their own terms. Product and company names on this page are used in a descriptive, identifying way (including under nominative fair use where applicable); they remain the property of their owners. Nothing here grants you rights in those marks, and nothing here is an offer to sell a third party's services. Terms
Google Ads is used here only to identify this integration; MCPBundles is not affiliated with or endorsed by Google Ads or its owner.
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 55 of 55
Showing 55 of 55 tools from the public preview. Connect the server to inspect the full live tool list.
Google Ads Add Keywords
google_ads_add_keywordsAdd 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.
Open in StudioGoogle 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.
Capabilities
55 tools · 1 groups
20 read · 17 write · 9 interactive · 9 other
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