Produced by Founder OS, an AI-augmented operational knowledge layer for founder-operators. Learn more →

Skill chain activated: navigating-skillsdesigning-ai-workflowsselecting-ai-toolswriting-copy. The navigating-skills router scored and assembled the chain: designing-ai-workflows owned the architecture extraction, selecting-ai-tools identified the MCP/API/Cowork stack, and writing-copy governed voice, rhythm, and formatting throughout. Each skill's directives fired in sequence to produce a guide that is both technically precise and readable.

Guide

How to Build a Claude Cowork Plugin for Google Ads Management

Reverse-engineered from a solo non-technical operator at Anthropic who ran the entire growth marketing department with agentic AI workflows.
March 25, 2026 · Kent Langley
Source: @helloitsaustin on X (2026-03-24) →

Austin Lau ran Anthropic's entire growth marketing operation (paid search, paid social, SEO, ASO, email) as a solo non-technical operator for roughly 10 months during the company's fastest growth phase (2024-2025).[1][2] Anthropic, valued around $380B, staffed what most companies fill with 20-50 people using one person and agentic AI workflows. The team has since grown to 2-3.[3]

Austin has no coding background. He never opened a terminal before this.[2] He built everything using Claude Code to create custom plugins, agents, and workflows. Anthropic published a public case study documenting this approach: "Claude Code for growth marketing."[2]

The thread linked above shows one piece of that system: a custom Claude Cowork plugin for Google Ads. This guide reverse-engineers his architecture so you can build your own.

Why This Matters: The One-Person Marketing Department

This is not "use AI to write ad copy." It is a complete agentic workflow architecture that collapses the entire execution gap: research, creation, testing, optimization, and reporting, all with human oversight baked in.

Austin's Full Setup Across Anthropic's Growth Marketing

The pattern is the same everywhere: encode your methodology into skills, connect to data sources via MCP/API, let Claude execute the repetitive work, require explicit human approval before any live change. Tiny teams with the right agentic tools can genuinely outperform traditional departments.


System Architecture

Claude Cowork
Desktop + Dispatch
Skills
  • mine-search-terms
  • search-term-methodology
  • budget-optimize
  • weekly-review
  • audit-ad-copy
  • investigate-campaign
  • performance-analysis
  • account-conventions
  • ad-copy-principles
Connections

Google Ads Toolkit

GAQL MCP for reads
Google Ads API for writes

Chat UI

Invoke skills via /command

Review outputs, approve mutations, adjust budgets

GAQL (read) + API (write)
Google Ads Account
Campaigns · Ad Groups · Keywords
Search Terms · Negatives · Budgets

Key Components

  1. Claude Cowork Plugin - A custom project within Claude's Cowork interface containing skills (structured prompts) and an MCP connection to Google Ads
  2. Google Ads MCP (GAQL) - Google's official GAQL MCP server, used for querying campaign data with Google Ads Query Language
  3. Google Ads API - Used separately for write operations (mutations) like adding negative keywords or changing budgets
  4. Skills - Structured prompts encoding specific paid search workflows with steps, evaluation criteria, and output formats

1

Set Up the Google Ads MCP Connection

The foundation is Google's official GAQL MCP server.[5] This gives Claude the ability to query your Google Ads account using GAQL (Google Ads Query Language).

What GAQL handles: Reading data. Campaign metrics, search terms, keywords, impression share, spend, conversions.[5]

What GAQL does not handle: Writing changes. For mutations (adding negative keywords, changing budgets), you need to wire up the Google Ads API separately.[6]

Setup

  1. Install the Google Ads GAQL MCP server (official Google package)
  2. Configure OAuth2 credentials for your Google Ads account
  3. Add the MCP connection to your Claude Cowork project under Connections
  4. Verify the connection by running a simple GAQL query in chat
Cowork interface showing the Google Ads toolkit connection with skills and connections panels

The Cowork interface with the Google Ads toolkit plugin. Note the three sections: Skills on the left, the chat input in the center with a /mine-search-terms command, and quick-access skill cards below.


2

Build Your Skills Library

Skills are the core of this system. Each skill is a structured prompt that encodes a specific paid search workflow.[1] Think of them as runbooks that Claude follows step by step.

Skills Austin Built

Skill NamePurpose
mine-search-termsMine search terms for negatives and keyword opportunities
search-term-methodologyEvaluation framework for search term relevance
account-conventionsNaming and structural conventions for the account
ad-copy-principlesGuidelines for ad copy review
performance-analysisCampaign performance analysis framework
audit-ad-copyStructured ad copy audit
budget-optimizeBudget optimization recommendations
investigate-campaignDeep-dive into campaign issues
weekly-reviewRecurring weekly review workflow

Skill Structure

Each skill contains a clear description of what it does, step-by-step instructions that mirror how a paid search marketer would work, evaluation criteria for making judgment calls, output format specifications (summaries, CSVs, tables), and cross-references to other skills when needed.

The mine-search-terms skill definition showing steps and instructions

The mine-search-terms skill. It loads the search-term-methodology and account-conventions skills before starting. Steps include pulling search terms via GAQL, evaluating every term, and building a bulk-upload-ready CSV.


3

Write the Search Term Methodology Skill

This is the most detailed skill Austin showed.[1] It encodes how a performance marketer evaluates search terms. The goal is not just "term conversions > bad." It is relevance to the campaign theme.

Core Approach

  1. Filter to unmatched terms - Only look at search terms with status NONE (not already added as a keyword or negative). Use get_search_terms which applies this filter automatically.
  2. Sort by spend descending - Prioritize where money is going. A term with 200 clicks at $0.10 CPC matters less than one with 20 clicks at $15 CPC.
  3. Cross-reference three things for every candidate:
    • The search term itself (what the user typed)
    • The matched keyword (what triggered the ad)
    • The campaign + ad group theme (what this line is for)
    The question is always: does the search term fit the theme?

Relevance Evaluation

This is the judgment call. A term can be:

A term should be kept when it is on-theme, even if it has zero conversions. Relevance matters more than conversion count alone.

The search-term-methodology skill showing the evaluation framework

The search-term-methodology skill with its evaluation framework. Note the emphasis on relevance over raw conversion metrics.


4

Run the Mine Search Terms Workflow

With skills and the MCP connection in place, you invoke the workflow by typing a slash command in Cowork:

/mine-search-terms audit my use case meeting notes campaign over the last 14 days
and identify negative keywords we should add

What Happens

  1. Claude queries campaigns with GAQL via the MCP connection
  2. Pulls search terms filtered to unmatched only (status = NONE)
  3. Sorts by spend descending
  4. Evaluates every search term against the search-term-methodology skill
  5. Cross-references each term with its matched keyword and campaign theme
  6. Categorizes flagged terms: wrong intent, competitor brand, research-only, too generic
  7. Generates a summary and a bulk-upload-ready CSV

Output: Summary View

The summary shows top spending negatives with reasoning for each, a breakdown by category (wrong intent, competitor brand, research-only, too generic), a negation reason breakdown with counts, and a link to the generated CSV. Claude then asks: "Want me to add these negatives? I'll group them by campaign and ad group, show you each batch, and wait for your explicit 'yes' before executing anything."

Output summary showing flagged search terms with categories and reasoning

The output after running mine-search-terms. Progress indicators on the right show each step completing. The working folder contains the generated CSV file.

Output: CSV Detail

ColumnDescription
CampaignCampaign name
Ad GroupAd group name
KeywordThe matched keyword
Search TermWhat the user actually searched
Match TypeBroad, phrase, exact
CostSpend on this term
Clicks / ImpressionsVolume metrics
CPC / CTREfficiency metrics
ConversionsConversion count
ReasoningWhy this term was flagged (the auditability layer)

The reasoning column is critical. It explains why each term was flagged (e.g., "Off-theme, search term doesn't relate to meeting notes or the 'Team Collaboration' campaign"). This makes the output auditable. You can review the logic and override where needed before anything is negated.

CSV spreadsheet showing flagged search terms with reasoning column

The CSV opened in a spreadsheet. Every row has a reasoning column explaining the flag. This is the auditability layer that makes AI-assisted management trustworthy.


5

Apply Changes (With Approval)

Since Claude is connected to the Google Ads API for write operations, you can tell it to add negative keywords directly from the chat.[1] The key safety principle: all mutations require explicit approval.

How It Works

  1. You review the flagged terms in the summary or CSV
  2. You tell Claude: "yes please add them as negative keywords"
  3. Claude groups negatives by campaign and ad group
  4. It prepares batches and shows you each one with a count and top examples
  5. You confirm "yes" for each batch before execution
  6. Claude adds the negatives at the campaign level (not ad group level) so the same irrelevant term doesn't drift to another ad group

In Austin's demo, Claude added 399 negatives across 7 ad groups. Since these are broad match keyword-looking terms split across specific ad groups, adding at the campaign level prevents the same junk traffic from appearing in a different ad group.

Claude adding negative keywords with batch approval

Claude adding negatives with explicit batch approval. Each batch is shown with a count and top examples before you confirm. No changes happen without your "yes."


6

Mobile Management via Dispatch

The same Cowork plugin works on Claude's Dispatch (mobile app).[1] This gives you campaign management capabilities that go beyond what the Google Ads mobile app offers.

Example: Budget Optimization from Your Phone

Austin showed a mobile workflow where he asked Claude for impression share by day over the last 7 days. Claude returned a table showing daily budget ($6,800), impression share (38-51%), and lost-to-budget percentage (38-52%).

Claude identified the budget as the dominant constraint, eating 38-52% of available impressions daily. It recommended a 20% increase from $6,800 to $8,160/day. Austin confirmed with "yes increase it to $8160," and the change was applied without opening a laptop.

Mobile Dispatch showing impression share analysis and budget recommendation

Claude Dispatch on mobile showing impression share by day, budget analysis, and a one-tap budget change. Full campaign management from your phone.


Implementation Checklist

Prerequisites

Build Steps

Customization

Austin emphasized: the skills should reflect your working style. His skills encode his personal evaluation criteria, output preferences (CSV for Google Ads Editor import), and workflow patterns. When building yours:


Technical Notes from Austin's Replies


Sources

  1. Austin Lau (@helloitsaustin). "If you're a performance marketer, here's how I use a custom Claude Cowork plugin to manage Google Ads at @AnthropicAI." X thread, March 24, 2026. x.com/helloitsaustin/status/2036553581625745511
  2. Anthropic. "Claude Code for Growth Marketing." Anthropic case study (public). www-cdn.anthropic.com
  3. TechFlowPost. Anthropic valuation and growth marketing team reporting. techflowpost.com
  4. Reddit discussion. "Google Ads automation via Claude MCP." reddit.com
  5. Austin Lau (@helloitsaustin), reply to @dannypostma. "I didn't share it since this is a personal plugin I use at work, but you can easily replicate it... there's an official gaql mcp by google that I used, and for mutations, you just need to wire up the google ads api to write changes to your account." X, March 24, 2026. x.com/helloitsaustin/status/2036636032834343136
  6. Austin Lau (@helloitsaustin), reply to @ericwaisman. "GAQL helps you query but you need to make API calls to write changes still. It's pretty straightforward but did require some tinkering with claude code to get it to work properly." X, March 24, 2026. x.com/helloitsaustin/status/2036609830354604435
  7. Austin Lau (@helloitsaustin), reply to @bolcoto. "Test broad carefully but it can work very well if you are very very diligent with negative keywords (which this workflow should help with)." X, March 24, 2026. x.com/helloitsaustin/status/2036581450791919848
  8. @Chefsteve, reply to @helloitsaustin. "My only issue is when my context gets big, Claude forgets to not max-bid brand terms." X, March 24, 2026. x.com/Chefsteve/status/2036622892658545107

Kent Langley builds Founder OS, an AI-augmented operating system for founder-operators. If you want to see this in action or build your own skill library, reach out.