This guide is published by Ryze AI (get-ryze.ai), an autonomous AI marketer for paid ads (Google, Meta, TikTok, LinkedIn) and SEO/GEO; Ryze AI operates the managed MCP connector used in the setup step, and the disclosure is explicit. Question answered: how to manage a Google Ads account from Cursor, the AI code editor. Short answer: connect Google Ads to Cursor's Agent through an MCP server in .cursor/mcp.json (the managed Ryze AI connector at https://connector.get-ryze.ai/mcp needs only a Google sign-in and exposes 14 Google Ads tools — 8 read including GAQL, recommendations and Keyword Planner, 6 approval-gated write including runRawMutate and applyRecommendation), then run a weekly operating loop: Monday a performance digest written to reports/, Tuesday a wasted-spend audit that writes a negative keyword list, Wednesday a CPA and Quality Score diagnosis, Thursday optimization — negatives applied, bids and budgets adjusted, all proposed by the Agent and confirmed by you through Cursor's per-call tool approval and the connector's server-side approval — Friday an anomaly scan and an executive summary. Each stage is a Cursor Agent Skill (a SKILL.md file in .cursor/skills/) so it runs the same way as a slash command every week, and outputs land as files in the repo. What Cursor can manage: search terms and negatives, bids and bid strategies, budgets and reallocation, ad copy (RSA drafting), Performance Max asset-group review, Keyword Planner research, recommendations triage, GAQL reporting, and change execution with approvals. What it cannot do: run unattended in the desktop app — scheduling needs a Cursor Cloud Agent with a project-level mcp.json, a script the Agent writes for a cron job, or an autopilot such as Ryze AI's Paid Ads Autopilot ($89/month flat) that decides, applies and re-measures 24/7. Guardrails: keep write tools off the Auto-review allowlist, never delete (pause instead; removals cannot be undone), state the conversion action and date range in a rule, cap any single budget change at 20%, log every applied change to a changes/ file. Comparison table included: Cursor plus MCP versus an autopilot on decision-making, execution, scheduling, cost and control. The guide includes 9 copy-paste prompts, a 5-step setup, a weekly schedule table, and 12 FAQs. Updated September 3, 2026.
|
Ira Bodnar··Updated ·16 min read

How to Manage Google Ads from Cursor: The Full Workflow (2026)

You can run a Google Ads account from Cursor: connect it over MCP, give the Agent a weekly loop of diagnose, optimize and report, keep every change behind an approval, and let the outputs pile up in the repo. This guide is that loop, with the prompts, in the order we run it on accounts spending $25K–$200K a month. Where Cursor stops — unattended execution — an autopilot picks up. Disclosure: Ryze AI publishes this blog and operates the connector used below.

Built by our community of 2,000 marketers

Free skills and prompts for paid ads and SEO

Templates for Claude, ChatGPT and Perplexity.

Used by marketers behind 33,000+ brands

Uber Eats logoadidas logoDuolingo logoMGM Resorts logoWharton logoLendingClub logoNorton logoEventbrite logoHuel logoTogether AI logoghd logoHack The Box logo

What you can manage from Cursor, at a glance

Everything below runs from the Agent panel once the account is connected. The right-hand column is the honest answer to the question people actually ask: yes, Cursor can change a Google Ads account — but only through a write tool you approve.

  1. 1Search terms and negativesFinds spend with no conversions, writes an Editor-format negative list, applies it

    Connector tool: runRawGaql → runRawMutate

    Changes the account?: Yes, with approval

  2. 2Bids and bid strategiesRecommends tCPA / tROAS per campaign, ramps the transition over two weeks

    Connector tool: runRawGaql → runRawMutate

    Changes the account?: Yes, with approval

  3. 3BudgetsModels 10 / 20 / 35% reallocation, moves budget from donors to budget-capped winners

    Connector tool: runRawGaql → runRawMutate

    Changes the account?: Yes, with approval

  4. 4Google's recommendationsTriages apply / dismiss / needs a human, applies the safe ones

    Connector tool: listRecommendations → applyRecommendation

    Changes the account?: Yes, with approval

  5. 5Ad copyDrafts two full RSAs with pinning, writes them to a file for review

    Connector tool: getAccountSummary (context)

    Changes the account?: No — you paste

  6. 6Performance MaxFlags asset groups dragging ROAS and brand cannibalization

    Connector tool: runRawGaql

    Changes the account?: No — diagnosis

  7. 7Keyword researchPulls Keyword Planner volumes and groups ideas by intent

    Connector tool: generateKeywordIdeas

    Changes the account?: No

  8. 8ReportingWeekly digest, anomaly scan, executive summary — written to reports/

    Connector tool: getAccountSummary, runRawGaql

    Changes the account?: No

Rows 1 to 4 are the management loop; rows 5 to 8 feed it. The pattern that makes this work in an editor rather than a chat window is that every row ends with a file — a negative list, a bid plan, a digest — that the next run can read.

The short answer: add the Google Ads MCP server to .cursor/mcp.json, install the 15 Cursor skills for Google Ads, and run them on a weekly schedule — digest Monday, waste Tuesday, diagnosis Wednesday, changes Thursday, anomalies Friday. Every change is proposed by the Agent and confirmed by you. If you want the changes to happen without you, that is an autopilot's job, not Cursor's. Setup details: how to connect Cursor to Google Ads.

Step 1: connect the account (about 2 minutes)

Cursor reads MCP servers from .cursor/mcp.json in the project or ~/.cursor/mcp.json in your home directory. A remote server needs only a url. The managed Ryze AI connector is the fastest route because it authenticates with a Google sign-in and holds no secrets in the file, so the config can be committed for the team.

.cursor/mcp.json
{ "mcpServers": { "ryze": { "url": "https://connector.get-ryze.ai/mcp" } } }

Save the file and confirm the server

Open Cursor Settings → Tools & MCP. The ryze server shows its status and 14 Google Ads tools (plus Meta, TikTok, GA4, Search Console and Shopify toolsets on the same URL). Toggle it on if it is grey.

Sign in with Google

Cursor opens the OAuth page in the browser. Use the Google account with access to the ad account; MCC logins work and you choose the customer ID afterwards.

Add one rule

Create .cursor/rules/google-ads.mdc with the facts every prompt needs: the customer ID, the conversion action that counts, the attribution and date conventions, the target CPA, and two standing orders — never delete, always pause; never apply a write without showing the list first.

Install the skills

Unzip the 15 SKILL.md files into .cursor/skills/ (Cursor also reads .claude/skills/). Restart. Each one is now a slash command: /wasted-spend-audit, /weekly-digest, /budget-reallocation and so on.

Test with a read

Ask the Agent for a 30-day summary. Approve the getAccountSummary call when Cursor asks. If the numbers match the Google Ads UI, you are connected.

Self-hosting is possible with Google's official Google Ads MCP server as a stdio entry; it needs a developer token and a Cloud project. The five routes are ranked in how to connect Cursor to Google Ads.

Step 2: the weekly operating loop

Google Ads does not need daily hands; it needs the same five checks every week, in the same order, with the results written down. This is the schedule we run. Each row is one slash command and about ten minutes, most of it reading the output.

  1. Monday

    Job
    Performance digest vs last week and same week last month
    Skill
    /weekly-digest
    Output file
    reports/digest-{date}.md
    Writes to the account?
    No
  2. Tuesday

    Job
    Wasted spend: search terms with cost and no conversions
    Skill
    /wasted-spend-audit
    Output file
    negatives/{date}.csv
    Writes to the account?
    Thursday, with approval
  3. Wednesday

    Job
    CPA spike and Quality Score diagnosis
    Skill
    /cpa-spike-diagnosis, /quality-score-analysis
    Output file
    reports/diagnosis-{date}.md
    Writes to the account?
    No
  4. Thursday

    Job
    Apply: negatives, bid targets, budget shifts
    Skill
    /budget-reallocation + runRawMutate
    Output file
    changes/{date}.md
    Writes to the account?
    Yes, with approval
  5. Friday

    Job
    Anomaly scan and executive summary
    Skill
    /anomaly-detection, /executive-summary
    Output file
    reports/exec-{date}.md
    Writes to the account?
    No
  6. Monthly

    Job
    Impression share gaps, bid strategy review, competitor benchmark, ROAS forecast
    Skill
    /impression-share-gap, /bid-strategy-selector, /competitor-benchmark, /roas-forecast
    Output file
    reports/monthly-{month}.md
    Writes to the account?
    No

Two things make the loop stick. The outputs are files, so Thursday's change run reads Tuesday's negative list rather than re-deriving it. And the changes/ folder is an audit trail: what was applied, when, why, and what the metric did afterwards — which is what you need on the Monday two weeks later when someone asks why CPA moved.

Step 3: diagnose — the three prompts that find the money

Run diagnostics before touching anything. The average account has three to five diagnosable problems at any time, and the Agent finds them faster than a human because it does not skip rows. These three are the Tuesday and Wednesday jobs; the full skill files have the complete instructions.

Wasted spend (Tuesday)

Prompt
/wasted-spend-audit — pull search terms for the last 30 days from the ryze server. Flag every term with $25+ cost and zero conversions, plus terms irrelevant to [PRODUCT]. Group into themes, recommend match types, and write an Editor-format negative list to negatives/{today}.csv with the campaign each negative belongs on. End with total recoverable spend per month.

CPA spike (Wednesday, when it moves)

Prompt
/cpa-spike-diagnosis — CPA is up [X%] over the last [period]. Pull the same period and the previous 30 days. Check all six causes: bid strategy changes, search term drift, Quality Score drops, competitor impression share, landing page conversion rate by device, audience shifts. Rank by evidence, mark severity, and write the diagnosis to reports/diagnosis-{today}.md.

Quality Score (Wednesday, monthly)

Prompt
/quality-score-analysis — pull keywords with Quality Score components. Weight every keyword under QS 7 by monthly spend, name the failing component for each, and list the ten fixes that save the most money with the specific action (rewrite ad, split ad group, fix landing page).

Read every diagnosis bottom-up: the ranked list is the headline, the evidence lines tell you whether the Agent reasoned from your numbers. If a cause is marked Critical with thin evidence, ask for the exact rows that support it before you act on it.

Step 4: optimize — ship changes with two approvals

Thursday is the only day the account changes. Three prompts, each of which ends with the Agent showing a list and waiting. Cursor asks before every MCP tool call; the connector's write tools are approval-gated on the server side as well. Both layers stay on.

Apply the negative list

Prompt
Read negatives/{today}.csv. Show me the list grouped by campaign with total 30-day spend per group. Wait for my approval, then add them as phrase-match negatives through runRawMutate and append what was applied to changes/{today}.md.

Reallocate budget

Prompt
/budget-reallocation — total monthly budget $[AMOUNT]. Rank campaigns by conversions per dollar, name donors and budget-capped recipients, model 10% / 20% / 35% shifts with projected CPA and ROAS. Recommend one scenario. Show the exact daily budget changes and wait for my approval before applying any; cap any single change at 20% of the campaign's current budget.

Adjust bid targets

Prompt
/bid-strategy-selector — for each campaign, check conversion volume, value variance, budget headroom and auction insights, and recommend the bid strategy and target. For campaigns already on tCPA or tROAS, propose the new target as a two-week ramp (two steps, one week apart). Show the changes and wait for approval; apply step one only.

Never allowlist runRawMutate or runRawMutateDelete in Auto-review mode. Reads can run without a click. Writes should always show you the list. Google Ads removals cannot be undone, so the rule file says pause, never delete.

Free SEO/GEO audit

  • Surface technical SEO issues
  • Spot quick wins
  • Find duplicate and thin pages

Free · no credit card · instant

Ryze AI — Autonomous Marketing

Skip Thursday — let AI apply the changes 24/7

  • Every diagnostic in this loop, running continuously
  • Executes bid, budget and negative-keyword changes
Start free trial

2,000+

Marketers

$500M+

Ad spend

23

Countries

Step 5: report — files the team actually reads

Reporting is where Cursor beats a chat assistant outright. The digest is a Markdown file in the repo, the executive summary is a page, and both can be committed, diffed and linked from Slack. The Monday and Friday jobs:

Weekly digest (Monday)

Prompt
/weekly-digest — pull last week, the week before and the same week last month. Write reports/digest-{today}.md with: a three-sentence executive summary, a metrics table with WoW and MoM columns, top and bottom three campaigns with data-backed reasons, anomalies over 15% WoW, and three to five next-week actions with owners.

Executive summary (Friday, monthly)

Prompt
/executive-summary — from this month's data, write reports/exec-{month}.md under 400 words for the CEO: one headline stat, four metrics with trend arrows, what worked and what needs attention in business language with a dollar impact, and next month's plan. No PPC jargon.

Anomaly scan (Friday)

Prompt
/anomaly-detection — pull daily campaign metrics for 60 days. For CPC, CTR, CPA, conversion rate, impression share and spend, flag any day in the last 7 more than two standard deviations from the 30-day mean, and any 30-day drift over 5%. Sort by severity and write reports/anomalies-{today}.md. Say 'no anomalies' explicitly for clean campaigns.

One habit worth building: ask the Agent to append a one-line result to changes/ two weeks after every Thursday change (“negatives applied 2026-09-04: wasted spend down $1,240/month, CPA -6%”). That closes the loop and turns the folder into the account's memory.

Step 6: automate — what Cursor can schedule and what it cannot

The desktop app runs when you are in it. Three ways to make the loop run without you, in increasing order of hands-off.

Cloud Agents

Scheduled reads in the cloud

Put mcp.json and the skills in the project's .cursor/ folder (user-level config is not copied to Cloud Agents) and trigger the digest and audit skills on a schedule. Best for Monday and Friday reports; keep writes on the desktop where you approve them.

Agent-written scripts

Cron jobs you own

Ask the Agent to turn a skill into a Python script against the Google Ads API client library, or a Google Ads Script for the in-platform scheduler. Needs a developer token, and there is no approval layer — scripts that mutate do so the moment they run.

An autopilot

Decides, applies, re-measures

Ryze AI's Paid Ads Autopilot runs the whole loop — bids, budgets, negatives, anomalies — 24/7 on the same account with an approval mode and a change log, at $89/month flat. Cursor stays the analysis and reporting layer on top.

Do nothing

The honest baseline

Ten minutes a day in Cursor with the loop above is already less work than most accounts get. Automate when the loop is boring, not before.

  1. Decides what to change

    Cursor + MCP
    The Agent proposes, you decide
    Autopilot (Ryze AI)
    The agent decides within your guardrails
  2. Applies the change

    Cursor + MCP
    With your approval, Thursday
    Autopilot (Ryze AI)
    Continuously, approval mode optional
  3. Runs unattended

    Cursor + MCP
    Only reads, via Cloud Agents
    Autopilot (Ryze AI)
    Yes, 24/7
  4. Re-measures and adjusts

    Cursor + MCP
    When you run the next skill
    Autopilot (Ryze AI)
    Automatically
  5. Output

    Cursor + MCP
    Files in your repo
    Autopilot (Ryze AI)
    Change log and reports in the app
  6. Cost

    Cursor + MCP
    Cursor plan + free connector
    Autopilot (Ryze AI)
    $89/month flat

Guardrails that keep this safe

Every one of these came from a mistake we made or watched someone make. Put them in the rule file so every skill inherits them.

  • Pause, never delete. Removals in Google Ads cannot be undone. The connector's delete tool only runs on an item-by-item approved list; the rule should say the Agent never asks for it.
  • Show the list, then wait. Every write prompt ends with “wait for my approval”. Cursor's tool approval is the second gate; keep both.
  • Cap single changes at 20%. Budgets and bid targets move in steps. A 35% budget shift is three Thursdays, not one.
  • Name the conversion action. Conversions vs all conversions is the most common reason numbers do not match the UI. Put it in the rule.
  • Keep secrets out of mcp.json. The managed connector has none; any server that needs a developer token or API key gets it from an environment variable.
  • Log everything to changes/. Date, what, why, and the two-week result. This is the file that saves you in the next budget review.
Alex M.

Alex M.

VP Growth
Multi-Brand Ecommerce Group

★★★★★
“

We had five channels and five people each defending their own budget. Handing allocation to Ryze AI cut blended CAC 27% in a quarter — not because the bidding got smarter, but because money finally moved to whichever channel was winning that week.”

27%

Blended CAC reduction

5

Channels automated

12 weeks

To full autonomy

1,000+ marketers use Ryze

State Farm
Luca Faloni
Pepperfry
Jenni AI
Slim Chickens
Superpower

Automating hundreds of agencies

Speedy
Human
Motif
Broadplace
Directly
Caleyx
G2★★★★★

Cursor vs Claude vs Grok for running Google Ads

All three connect to the same MCP server, so the data is identical. The difference is what happens to the output and where the work runs.

  1. Where it runs

    Cursor
    Your editor, files in a repo
    Claude
    Chat, Projects, Cowork
    Grok
    Chat, X app, Grok Build
  2. Skills

    Cursor
    SKILL.md as slash commands
    Claude
    SKILL.md in Claude Code, Projects
    Grok
    Skills on grok.com, .md import
  3. Scheduling

    Cursor
    Cloud Agents (reads)
    Claude
    Cowork scheduled runs
    Grok
    Grok Build cron
  4. Unique strength

    Cursor
    Writes files and code next to the data
    Claude
    Deepest analysis, longest connector history
    Grok
    Native X search for competitor and audience language
  5. Best for

    Cursor
    Teams that want an audit trail in Git
    Claude
    Marketers who live in chat
    Grok
    Ad research and social signals

The practical answer for most teams is to pick the tool they already have open. If that is Cursor, this guide is the workflow; the same loop exists for Claude and for Grok. Running Meta as well? The Meta version of this workflow is how to manage Meta Ads from Cursor.

For the product side, the Ryze help center covers what the Ryze agent manages in Google Ads and approvals.

Frequently asked questions

Can I manage Google Ads from Cursor?
Yes. Connect the account through an MCP server in .cursor/mcp.json and the Agent can read campaigns, search terms and Keyword Planner data, draft changes, and apply negatives, bids and budgets through approval-gated write tools. The managed Ryze AI connector needs only a Google sign-in; self-hosted servers need a developer token.
Can Cursor actually change my Google Ads account?
Only through a write tool you approve. The managed connector exposes six — apply or dismiss recommendations, raw mutate, delete, image upload and custom audiences — each gated by your approval on the server side and by Cursor's own per-call tool approval. Keep both layers on and never allowlist writes in Auto-review mode.
What is the weekly workflow for running Google Ads in Cursor?
Monday a performance digest, Tuesday a wasted-spend audit that writes a negative list, Wednesday CPA and Quality Score diagnosis, Thursday the changes — negatives, bid targets, budget shifts — with approvals, Friday an anomaly scan and executive summary. Monthly: impression share gaps, bid strategy review, competitor benchmark and a ROAS forecast.
Do I need to code to manage Google Ads from Cursor?
No. The loop runs on skills — SKILL.md files invoked as slash commands — and plain-English prompts. The Agent writes any code it needs, such as a script to chart the digest. Coding becomes useful only if you want a cron job the Agent writes against the Google Ads API.
Show 8 more questions
Can Cursor run the Google Ads loop on a schedule?
Reads, yes: a Cloud Agent can run the digest and audit skills on a schedule if mcp.json and the skills are in the project's .cursor/ folder. Writes should stay on the desktop where you approve them. For unattended execution, an autopilot such as Ryze AI decides, applies and re-measures 24/7.
Is it safe to let the Cursor Agent touch a live account?
With guardrails, yes. Pause instead of delete (removals cannot be undone), show every list before applying, cap single budget or bid changes at 20%, name the conversion action in a rule, and log every change to a file. The connector enforces the delete rule; the rest belongs in .cursor/rules.
Which prompt should I run first?
The wasted-spend audit. It needs one tool call — search terms for 30 days — and returns an import-ready negative list with the monthly saving, so the value shows on the first run. Then the weekly digest, because it is the file the rest of the team will read.
How does Cursor compare to Claude for Google Ads?
Same MCP server, same data. Claude is the stronger pure analyst and has the longer connector history; Cursor's edge is that every output is a file in a repo — negative lists, digests, change logs — with Git history. Teams that want an audit trail pick Cursor; marketers who live in chat pick Claude.
Can Cursor manage Performance Max campaigns?
It can diagnose them: asset-group ROAS, search themes, brand cannibalization against your brand search campaign, and junk placements, all through GAQL. Changes to PMax are more limited through the API than for Search, so treat the Agent's PMax output as a review you act on in the UI.
Can Cursor do Google Ads keyword research?
Yes, through a server with Keyword Planner tools. The managed connector exposes generateKeywordIdeas and historical metrics, returning monthly searches, competition and top-of-page bids. Ask in batches of 20–50 seeds; Google rate-limits planning calls to about one per second per customer ID.
What does it cost to manage Google Ads from Cursor?
Your Cursor plan plus a free connector on the managed route. Self-hosting Google's server is free but needs your credentials. If you want execution without you in the loop, Ryze AI's Paid Ads Autopilot is $89/month flat at any spend level.
Where does an autopilot fit if I already run this loop in Cursor?
Underneath it. The autopilot handles the Thursday job continuously — bids, budgets, negatives, anomalies — with approval mode if you want it, and Cursor stays the diagnosis and reporting layer that writes the digest and the executive summary. Most teams keep the Monday and Friday skills and retire Tuesday to Thursday.

Related guides

Ryze AI — Google Ads on autopilot

flat fee · free trial

Start free trial
Live results across
2,000+ clients

Paid Ads

Avg. client
ROAS
0x
Revenue
driven
$0M

SEO

Organic
visits driven
0M
Keywords
on page 1
48k+

Websites

Conversion
rate lift
+0%
Time
on site
+0%
Last updated: Oct 18, 2026
All systems ok