Now available on npm

Google Ads CLI for AI agents

Manage Google Ads from OpenClaw, Claude Desktop, or any AI agent that can run shell commands. One CLI, structured JSON, server-side guardrails.

terminal
$ npm install -g fullrun
$ fullrun login frun_YOUR_API_KEY
$ fullrun triage

  ⚡ Account Health Report
  ─────────────────────────────────────────

  🔴 CRITICAL: Ad Groups Missing Ads
  2 ad groups have zero active ads — no spend possible.
    → "Brand Terms" (Campaign: High-Intent Keywords)
    → "Competitor Terms" (Campaign: Competitor Capture)

  🟠 HIGH: Missing Extensions
  3 campaigns are missing sitelinks, callouts, or snippets.

  🟡 MEDIUM: Below-First-Page Bids
  5 keywords have bids below the first page estimate.

How it works

Three steps. Your agent goes from zero to managing Google Ads.

Step 1

Diagnose

Run fullrun triage to get a prioritized account health report. Issues are ranked from CRITICAL to LOW so the agent knows exactly what to fix first.

terminal
$ fullrun triage

  🔴 CRITICAL: Budget Mismatch
  Campaign "Brand Terms" has $0 spend
  despite $50/day budget.

  🟠 HIGH: Poor Ad Strength
  4 ads rated POOR by Google.

  🟢 Account is 14 days old.
  Advanced optimization unlocked.
Step 2

Inspect

Drill into campaigns, keywords, and performance metrics. Every command returns structured data your agent can reason about.

terminal
$ fullrun campaigns:list

  📊 Campaigns

  High-Intent Keywords  ● active
  Budget: $50.00/day  Spend: $142.30
  Clicks: 287  Impr: 4,120  CTR: 7.0%
    └ Brand Terms  12 keywords · 3 ads
    └ Product Terms  8 keywords · 3 ads

  Competitor Capture  ● active
  Budget: $30.00/day  Spend: $87.50
  Clicks: 156  Impr: 2,890  CTR: 5.4%
Step 3

Optimize

Trigger fullrun run and the AI agent fixes the highest-priority issues automatically. Bids, extensions, negative keywords, ad copy — all handled.

terminal
$ fullrun run

  ✓ Agent run complete
  ───────────────────────────────

  Mode: daily_optimization
  Actions: 6

  → Adjusted bids on 5 keywords
  → Added 4 sitelinks
  → Added 8 callouts
  → Paused keyword "free" (high CPA)
  → Added 3 negative keywords
  → Updated ad copy for "Brand Terms"

Built for automation

Everything an AI agent needs to manage Google Ads safely and effectively.

Built for agents

Every command returns structured JSON when piped. Auto-detects TTY for human-readable output in terminals.

Server-side guardrails

Bid caps, budget limits, mutation controls, and PPC best practices enforced on every action. Agents can't break your account.

Triage-first workflow

Start with fullrun triage to get a prioritized health report. Fix the most impactful issues first.

Auto-discoverable

Ships with a SKILL.md file. OpenClaw and Claude auto-discover available commands — no configuration needed.

Full visibility

Campaigns, keywords, performance metrics, and ad strength — all queryable from the command line.

AI-powered optimization

One command triggers a full optimization run — bid adjustments, extensions, negative keywords, ad copy — all autonomous.

Works with your agent

CLI for any agent. MCP for Claude. SKILL.md for auto-discovery.

OpenClaw

Install globally and OpenClaw auto-discovers the CLI via the bundled SKILL.md. Tell your agent to check your ads — it handles the rest.

npm install -g fullrun

Claude Desktop & Cursor

Add the MCP server to your config. Ask Claude to check your Google Ads — it calls the Fullrun tools natively.

npx @fullrun/mcp

Any agent

If it can run a shell command, it can use Fullrun. Output is structured JSON when piped — no parsing needed.

fullrun triage --format json

Commands

fullrun triageAccount health report with prioritized issues
fullrun campaigns:listAll campaigns with status, budget, and metrics
fullrun performance --days 7Clicks, conversions, CPA, ROAS
fullrun keywords:listKeywords with performance data
fullrun runTrigger AI-powered optimization

Get early access

Sign up for Fullrun and generate an API key to start managing Google Ads from your agent.

No credit card required. 14-day free trial.