Gemini CLI logo Google Ads logo

Run Google Ads from Gemini CLI

Manage Google Ads campaigns inside Gemini CLI — 39 tools, OAuth setup in about 60 seconds, no dashboard switching.

  • 39 Google Ads tools, all in Gemini CLI

  • Paused-by-default. Cannot delete campaigns.

  • OAuth setup in ~2 minutes

See it in action

In Gemini CLI

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.

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

Overview

Adspirer is the MCP server that connects Gemini CLI to your Google Ads ad accounts, turning campaign management into a chat conversation. Google's Gemini CLI with MCP support. On the platform side, 39 tools cover google Search, Performance Max, Display, YouTube, Shopping. Adspirer reads and writes — pull performance reports, audit launch search & pmax campaigns, launch new campaigns, pause underperformers, and reallocate budget — all from chat. New campaigns are always created paused so you can review before they go live, Adspirer cannot delete existing campaigns by design, and the free tier (15 tool calls / month, no credit card) is enough to run a full audit before you pay. Setup takes about 60 seconds via one CLI command.

Safety guarantees

  • New campaigns always created paused for review

  • Adspirer cannot delete existing campaigns

  • Budget changes need explicit confirmation

  • OAuth 2.1 + PKCE — passwords never seen

How it works

How it works

Gemini CLI

You ask in chat

prompt

Adspirer

39 tools, paused-by-default

tool calls

Google Ads

Live data, paused for review

Step 01

Connect

Paste the MCP URL into Gemini CLI, OAuth into Google Ads.

Step 02

Manage

Ask in chat. Adspirer routes through 39 Google Ads tools.

Step 03

Scale

Switch accounts in chat. Same audits across every client.

What you can do

39 tools across Google Ads. The ones 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

Every Google Ads format Adspirer supports — request one in chat.

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.

More prompts to try

Gemini CLI is in active development; expect rough edges.

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

Each Monday, ask Gemini CLI to pull last week's Google Ads performance, surface campaigns running below your ROAS threshold, and recommend creative refreshes for fatigued ads.

Replaces a 60–90 minute manual review with a 5-minute chat, and surfaces problems before they tank ad-set performance.

Compare & decide

Adspirer vs alternatives

For running Google Ads from Gemini CLI.

Adspirer DIY MCP server Legacy SaaS dashboard
Setup time ~60 seconds via one CLI command 2–4 hours building MCP server 30–60 min onboarding + sales call
Cost — entry tier Free (15 calls / mo) Hosting + maintenance $200–500 / mo minimum
Works inside Gemini CLI Yes — one CLI command Yes (if you build it correctly) No — external dashboard only
Multi-account Yes — switch in chat Manual per-account auth Yes — but each account billed
Read + Write Full read + write (create / pause / update) Whatever you build Mostly read-only or seat-gated writes
Safety: cannot delete Hard-coded — no delete tool Up to you Varies
Pricing transparency Public — $0 / $49 / $99 / $199 Self-hosted Often quote-only

Pricing

Start free. Upgrade if you outgrow it.

Free Forever

$0

15 / mo

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

Start free →
Best for Gemini CLI

Plus

$49 / mo

150 / mo

Performance analysis + standard campaigns.

Compare Plus →

Pro

$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 →

Configure

Required: Google AI Studio API access. Most users finish in about two minutes.

Show setup steps for Gemini CLI

Add Adspirer as an MCP server in Gemini CLI

Edit your Gemini CLI MCP config and add an entry pointing to https://mcp.adspirer.com/mcp.

FAQ

Setup

Do I need a developer to set this up?

Some terminal comfort helps but you don't need to be a developer — adding the MCP server is one command (claude mcp add --transport http adspirer https://mcp.adspirer.com/mcp or the equivalent for your CLI). OAuth happens in your browser. Total time: about 60 seconds.

Capabilities

Can I switch from Gemini CLI to a different AI client later?

Yes. Your Adspirer account is independent of the AI client — sign up once, then connect the same MCP URL from ChatGPT, Claude, Cursor, Codex, Windsurf, or any supported client. Tool calls are pooled across clients on the same plan; switching costs you nothing.

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 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.

Workflows

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.

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.

Compare

What's the read vs. write boundary on Google Ads?

Adspirer is full read and write. It can pull reports, audit performance, and analyze data (read), and it can launch new campaigns, pause underperformers, update budgets, and adjust targeting (write). Two safety guardrails are hard-coded: new campaigns are always created paused so you review before they go live, and Adspirer cannot delete existing campaigns. You keep full control.

Safety & control

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.

Power user

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.

Related integrations

Same Gemini CLI, different platform — or same Google Ads, different AI client.

Go deeper

Ready to connect Gemini CLI to Google Ads?

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

Try Adspirer free