Claude Code logo
Google Ads logo
AI Client · Claude Code Ad Platform · Google Ads 39 tools

Run Google Ads from Claude Code

Manage Search, Performance Max, Display, and YouTube from your terminal — 39 Google Ads tools, real CPC data, scriptable agent loops.

15 tool calls / month free · No credit card · Setup in ~2 minutes

Adspirer is the MCP server that connects Claude Code (Anthropic's terminal CLI) to your Google Ads accounts. Install in one command via the official `claude-plugins-official` marketplace (`/plugin install adspirer-ads-agent@claude-plugins-official`), authenticate once, and Claude Code can run all 39 Google Ads tools from the terminal — keyword research with real CPC data from Google Keyword Planner, Search and Performance Max campaign creation, search-term analysis, wasted-spend detection, negative-keyword management, and PMax search themes + audience signals. Because Claude Code runs in agent loops, you can drop a brief like "audit the last 30 days for wasted spend, generate a negatives list, write a markdown report" — walk away, come back to a finished file. The same setup works in cron, CI, and shell scripts. New campaigns always create paused; Adspirer cannot delete campaigns or modify budgets silently. Free tier covers 15 calls / month.

What you can do

39 tools across Google Ads. The eight you'll use most:

Launch Search & PMax campaigns

Build Google Search and Performance Max campaigns from a brief — Adspirer runs keyword research, drafts copy, validates assets, and creates the campaign **paused** so you review before going live.

Research keywords with real CPC

Pull live data from Google Keyword Planner via `research_keywords` — search volume, CPC estimates, and competition level for any seed keyword or business description.

Find wasted spend

Run `analyze_wasted_spend` to surface keywords that have spent your threshold (e.g., $50+) with zero conversions, then pause them or push them to negatives in one prompt.

Audit search terms

Use `analyze_search_terms` to see the actual queries that triggered your ads. The `raw_report` mode returns the literal search strings — perfect for finding negative-keyword opportunities.

Generate ad copy in-spec

`suggest_ad_content` writes headlines (≤30 chars) and descriptions (≤90 chars) that fit Google's exact limits, so RSAs never get rejected for length.

Pause & resume campaigns

Pause campaigns, ad groups, or keywords by name from chat — and resume them later. Adspirer **cannot delete** existing campaigns by design (hard-coded safety).

Tune PMax targeting

Add or remove search themes (up to 50 per asset group) and audience signals (in-market, affinity, custom, user lists) on existing PMax campaigns — without rebuilding from scratch.

Reallocate budget by ROAS

`optimize_budget_allocation` recommends shifts toward your best-ROAS campaigns. Adspirer never raises an existing campaign budget without your explicit confirmation.

Campaign types you can launch

Every Google Ads format Adspirer supports — request one in chat and Claude Code builds the campaign paused for review.

Search campaigns

Text ads on Google Search results. Highest-intent traffic — people actively searching for your keywords.

Performance Max

AI-driven campaigns running across Search, Display, YouTube, Gmail, Maps, and Discover from one asset group.

Display campaigns

Responsive Display Ads across 2M+ sites and apps. Full control over audiences, topics, placements, and keywords.

YouTube campaigns

Video ads on YouTube In-Feed, In-Stream, and Shorts via the Demand Gen format with YouTube-only channel controls.

Shopping campaigns

Product-feed-driven ads with images, prices, and merchant info — built for e-commerce catalogs.

Demand Gen

Visual, social-style ads across YouTube, Discover, and Gmail — designed to drive demand earlier in the funnel.

Sample prompts

Claude Code shines on multi-step agent tasks — drop a brief, walk away, get a report.

Google Ads performance audit — Monthly audit that surfaces underperformers and points you at the quick wins.

Google Ads performance audit
Pull my Google Ads performance for the last 30 days. Show spend, conversions, CPA, and ROAS by campaign. Highlight any campaigns with ROAS below 2.0 and tell me which to pause first.

Keyword research with CPC — Real Keyword Planner data with go/no-go recommendations against your CPA target.

Keyword research with CPC
Research keywords for emergency plumbing services in Chicago. Show me search volume, CPC estimates, and competition level. Suggest which keywords to target and which to avoid given a $25 CPA target.

Find wasted spend — Pinpoints non-converting keywords and routes them to pause or negatives.

Find wasted spend
Analyze my Google Ads for wasted spend over the last 30 days. Find keywords that have spent more than $50 with zero conversions. Recommend which to pause and which to add as negative keywords.

Launch a Search campaign — End-to-end Search campaign creation with keyword research and in-spec copy.

Launch a Search campaign
Create a Google Search campaign: - Business: Online pet supply store - Target keywords: organic dog food, natural dog treats, premium pet food - Location: United States - Budget: $40/day - Objective: Website conversions (purchases) Research the keywords first, generate ad copy that fits Google's character limits, then build the campaign — keep it paused.

Tune a PMax campaign — Adjust PMax targeting on a live campaign without rebuilding it.

Tune a PMax campaign
Show me the current search themes and audience signals on my "Adspirer-pmax-03" Performance Max campaign. Add new search themes for: AI ad management, automated advertising, MCP tools for ads. Then search for in-market audiences related to "advertising software" and add the best fit as an audience signal.

Diagnose a CPA spike — Anomaly diagnosis that explains why CPA moved, not just that it did.

Diagnose a CPA spike
My CPA on the "Adspirer-pmax-03" campaign jumped 60% in the last 7 days. Diagnose what changed — search terms, audience signals, asset rotation — and tell me what to fix.

Who this is for

Real workflows from people running Google Ads through Claude Code.

Growth engineer running Google Ads as part of a product team

Wire Claude Code into the Monday-morning standup: a cron job runs `/adspirer:wasted-spend`, writes findings to `reports/google/$(date).md`, opens a PR with the proposed negatives list. The team reviews the diff like any other code review.

Outcome: Treats Google Ads waste like a code review — every wasted-spend recommendation has a paper trail and a human approver, and nothing slips through the QBR cycle.

DTC team running Performance Max at scale

Drop a long brief: "for the spring catalog, build 4 PMax campaigns split by margin tier, target ROAS 350-500% per tier, here's the asset folder, validate everything, create paused, add 5-10 search themes per campaign." Walk to lunch, come back to 4 paused campaigns with themes attached.

Outcome: Multi-campaign PMax buildout that would take a media buyer most of an afternoon completes in a single agent run; the marketer's job is review and unpause.

Agency engineer rolling Adspirer into client onboarding

`cd ~/clients/{brand} && claude` triggers `/adspirer:setup`, which reads the client's brand docs, pulls live Google Ads data, and writes `CLAUDE.md` with current campaigns, top keywords, wasted-spend candidates, and KPI targets. Every subsequent prompt — keyword research, ad copy, performance review — reads that brand context.

Outcome: Client onboarding (connect data + brand context) drops from a half-day to about 10 minutes per account.

Founder building the product *and* managing Google Ads

Same Claude Code session that ships product code now drafts Google Search campaigns. Brief: "research keywords for {product}, US-only, real CPC data, group by intent, write 12 headlines + 4 descriptions, create the campaign paused." Stays in the terminal — no context switch to the Google Ads UI.

Outcome: Zero tool-switching tax — product engineering and ad ops share one workflow, one terminal, one set of brand docs.

Adspirer vs alternatives

For running Google Ads from Claude Code.

Capability Adspirer (this page) DIY MCP server Legacy SaaS dashboard
Install `/plugin install adspirer-ads-agent@claude-plugins-official` Build MCP server, write CLI plugin No CLI — dashboard only
Cost — entry tier Free (15 calls / mo) Hosting + maintenance $200-500 / mo minimum
Real CPC keyword data Yes — Google Keyword Planner via `research_keywords` Build Keyword Planner integration Often blended estimates
Agent-loop / headless mode Yes — works in scripts, cron, CI Whatever you build No
Brand-workspace pattern `/adspirer:setup` → CLAUDE.md Manual No equivalent
Wasted-spend slash command `/adspirer:wasted-spend` (preconfigured) Manual Sometimes
Write capability Search + PMax + Display, paused on create Whatever you build Mostly read-only
Safety: cannot delete Hard-coded — no delete tool Up to you Varies

Pricing

Start free. Upgrade if you outgrow it.

Free Forever

$0

15 / mo

All platforms. ChatGPT & Claude access. No credit card.

Start free →

Plus

$49 / mo

150 / mo

Performance analysis + standard campaigns.

Compare Plus →

Pro

Recommended

$99 / mo

600 / mo

AI optimization, bulk ops, deeper diagnostics.

Compare Pro →

Max

$199 / mo

3,000 / mo

Priority support (24h SLA), custom integrations.

Compare Max →

How it works

From sign-up to your first launched campaign in three steps.

1

Connect

Paste the Adspirer MCP URL into Claude Code, complete OAuth in your browser, and link your Google Ads account. About 2 minutes.

2

Manage

Ask Claude Code for an audit, launch a new campaign, pause underperformers, or pull a report. Adspirer handles the 39 Google Ads tools behind the scenes.

3

Scale

Switch between accounts in chat, run the same audit across clients, and let agency SOPs live in your AI assistant — no extra dashboard logins.

Frequently asked questions

About running Google Ads from Claude Code.

Can I run a nightly Google Ads audit non-interactively from cron?

Yes. Claude Code supports headless mode — pipe a prompt in, Claude runs the agent loop using your Adspirer MCP connection, and writes output to a file. A common pattern: cron triggers /adspirer:wasted-spend nightly at 6am, writes a markdown file to reports/, and your standup reviews the diff. Adspirer's safety rules still apply — even unattended, no campaigns get deleted or budgets changed without explicit confirmation.

Does Claude Code's `research_keywords` use the same CPC data as the Google Ads UI?

Yes. research_keywords calls Google Keyword Planner directly through the official Google Ads API — same source the UI uses. You get monthly search volume, competition (Low/Medium/High), and the actual estimated bid range. No LLM-fabricated CPC numbers.

Why use Claude Code instead of the Google Ads UI for campaign creation?

Two reasons: (1) it's scriptable — a multi-campaign launch (e.g., 4 PMax campaigns split by margin tier) runs as one agent loop instead of 4 manual UI walks; (2) it's repeatable — the brief lives in your repo as a markdown file, so the next launch is a one-line edit. The UI is faster for one-off changes; Claude Code wins on volume and consistency.

Can the same plugin manage Meta + LinkedIn + TikTok too, or just Google?

Same plugin, all four platforms. The adspirer-ads-agent plugin exposes 100+ tools across Google Ads (39), Meta Ads (20+), LinkedIn Ads (28), and TikTok Ads (4). One install, one OAuth, all platforms in the same terminal session — and Claude Code can run cross-platform prompts ("compare last 30 days across Google + Meta + LinkedIn") in a single agent loop.

Does Adspirer generate images or videos for Google Ads?

No. Adspirer generates ad copy (headlines and descriptions) via suggest_ad_content, but it does not create images or videos. For PMax, you provide image and video URLs from Google Drive, Dropbox, S3, or any public link, and validate_and_prepare_assets checks them against Google's spec before launch.

Can Adspirer delete or modify my existing campaigns?

Adspirer cannot delete campaigns, ad groups, or keywords — hard-coded safety. It can pause and resume them when you ask, and update budgets, bids, or targeting on your instruction. New campaigns are always created paused so you review before they spend a cent.

What's the minimum budget for Google Ads campaigns?

Search campaigns work from $10/day (Google's practical minimum), but $30+/day is recommended for meaningful data. Performance Max needs at least $20/day because it has to test across multiple channels. Adspirer suggests $40/day split across 3-5 ad groups for new Search campaigns.

How does the campaign-creation workflow work?

Search campaigns require a 6-step sequence: verify connection → research_keywordsdiscover_existing_assetssuggest_ad_contentvalidate_and_prepare_assetscreate_search_campaign. PMax adds asset upload guidance plus optional add_pmax_search_themes and add_pmax_audience_signal. Skipping steps causes Google's API to reject the campaign — Adspirer enforces the order.

Can I manage multiple Google Ads accounts (MCC) from one chat?

Yes. Connect each ad account through OAuth and Adspirer keeps them separate. Use get_connections_status to list connected accounts and reference them by customer ID or name in your prompts. Adspirer's own workspace, for example, has both Adspirer (9120801776) and Sahaayak Inc (1187072345) connected side-by-side.

How are conversions and search terms surfaced?

Use get_campaign_performance for spend / conversions / CPA / ROAS by campaign, and analyze_search_terms to see the actual queries that triggered your ads. The raw_report mode returns the literal search-term strings — feed those into add_negative_keywords to block wasteful traffic in the next prompt.

Connect Claude Code to Adspirer

For technical readers — the exact steps. Most users finish this in about 2 minutes. Required: Claude API access (or Claude.ai Pro / Max).

Add Adspirer to Claude Code

Run in your terminal:

claude mcp add --transport http adspirer https://mcp.adspirer.com/mcp

Authenticate

Claude Code launches your browser for OAuth. Sign in to Adspirer and link your ad accounts.

Verify

Run claude and ask: Check my connected ad platforms. Tools should now appear in the available-tools list.

Related integrations

Same Claude Code, different platform — or same Google Ads, different AI client.

Go deeper

Ready to connect Claude Code to Google Ads?

Start free — 15 tool calls per month, no credit card. Setup takes about 2 minutes.

Try Adspirer free

Last updated April 28, 2026.