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.
Clients we work withClients we
work with








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.
| # | Area | What the Agent does | Connector tool | Changes the account? |
|---|---|---|---|---|
| 1 | Search terms and negatives | Finds spend with no conversions, writes an Editor-format negative list, applies it | runRawGaql → runRawMutate | Yes, with approval |
| 2 | Bids and bid strategies | Recommends tCPA / tROAS per campaign, ramps the transition over two weeks | runRawGaql → runRawMutate | Yes, with approval |
| 3 | Budgets | Models 10 / 20 / 35% reallocation, moves budget from donors to budget-capped winners | runRawGaql → runRawMutate | Yes, with approval |
| 4 | Google's recommendations | Triages apply / dismiss / needs a human, applies the safe ones | listRecommendations → applyRecommendation | Yes, with approval |
| 5 | Ad copy | Drafts two full RSAs with pinning, writes them to a file for review | getAccountSummary (context) | No — you paste |
| 6 | Performance Max | Flags asset groups dragging ROAS and brand cannibalization | runRawGaql | No — diagnosis |
| 7 | Keyword research | Pulls Keyword Planner volumes and groups ideas by intent | generateKeywordIdeas | No |
| 8 | Reporting | Weekly digest, anomaly scan, executive summary — written to reports/ | getAccountSummary, runRawGaql | 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.
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.
| Day | Job | Skill | Output file | Writes to the account? |
|---|---|---|---|---|
| Monday | Performance digest vs last week and same week last month | /weekly-digest | reports/digest-{date}.md | No |
| Tuesday | Wasted spend: search terms with cost and no conversions | /wasted-spend-audit | negatives/{date}.csv | Thursday, with approval |
| Wednesday | CPA spike and Quality Score diagnosis | /cpa-spike-diagnosis, /quality-score-analysis | reports/diagnosis-{date}.md | No |
| Thursday | Apply: negatives, bid targets, budget shifts | /budget-reallocation + runRawMutate | changes/{date}.md | Yes, with approval |
| Friday | Anomaly scan and executive summary | /anomaly-detection, /executive-summary | reports/exec-{date}.md | No |
| Monthly | Impression share gaps, bid strategy review, competitor benchmark, ROAS forecast | /impression-share-gap, /bid-strategy-selector, /competitor-benchmark, /roas-forecast | reports/monthly-{month}.md | 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)
CPA spike (Wednesday, when it moves)
Quality Score (Wednesday, monthly)
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
Reallocate budget
Adjust bid targets
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.
Get a free instant audit
Get a free, instant read on your paid ads or SEO — and fix it right away.
Paid ads audit
- Catch wasted spend & broad-match leaks
- Find account structure gaps
- Rank your quickest wins
- Spot PMax & brand-search overlap
- Check conversion-tracking health
- Benchmark CPC vs your industry
- Catch wasted spend & broad-match leaks
- Find account structure gaps
- Rank your quickest wins
- Spot PMax & brand-search overlap
- Check conversion-tracking health
- Benchmark CPC vs your industry
Free · no credit card · instant
SEO audit
- Find keyword & ranking gaps
- Catch technical SEO issues
- Rank your fastest wins
- Surface thin & duplicate pages
- Check indexing & crawl coverage
- Compare backlinks vs competitors
- Find keyword & ranking gaps
- Catch technical SEO issues
- Rank your fastest wins
- Surface thin & duplicate pages
- Check indexing & crawl coverage
- Compare backlinks vs competitors
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
- ✓Flat $89/mo — never a percentage of spend
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)
Executive summary (Friday, monthly)
Anomaly scan (Friday)
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.
| Cursor + MCP | Autopilot (Ryze AI) | |
|---|---|---|
| Decides what to change | The Agent proposes, you decide | The agent decides within your guardrails |
| Applies the change | With your approval, Thursday | Continuously, approval mode optional |
| Runs unattended | Only reads, via Cloud Agents | Yes, 24/7 |
| Re-measures and adjusts | When you run the next skill | Automatically |
| Output | Files in your repo | Change log and reports in the app |
| Cost | Cursor plan + free connector | $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.
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





Automating hundreds of agencies





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.
| Cursor | Claude | Grok | |
|---|---|---|---|
| Where it runs | Your editor, files in a repo | Chat, Projects, Cowork | Chat, X app, Grok Build |
| Skills | SKILL.md as slash commands | SKILL.md in Claude Code, Projects | Skills on grok.com, .md import |
| Scheduling | Cloud Agents (reads) | Cowork scheduled runs | Grok Build cron |
| Unique strength | Writes files and code next to the data | Deepest analysis, longest connector history | Native X search for competitor and audience language |
| Best for | Teams that want an audit trail in Git | Marketers who live in chat | 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.
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.
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
How to Connect Cursor to Google Ads
The 2-minute mcp.json setup, five routes ranked.
15 Cursor Skills for Google Ads
The SKILL.md files every step of this loop runs on.
How to Manage Meta Ads from Cursor
The same weekly loop for creative, frequency and placements.
Top 10 AI Tools for Google Ads Management
When you want execution, not just analysis — the tools compared.
Ryze AI — Autonomous Marketing
Let AI run your Google Ads
- ✓Connect your account in minutes
- ✓The agent decides, applies and re-measures 24/7
- ✓Approval mode if you want the final say
2,000+
Marketers
$500M+
Ad spend
23
Countries



