Ads automation for builders.
One entry in mcp.json gives Cursor 630+ tools across Google Ads, Meta Ads, TikTok Ads, LinkedIn Ads and 10 more platforms.
Here is how Fizzwren Sodas did, Oct 11 to Oct 17.
| Platform | Spend | Conv. | Revenue | ROAS |
|---|---|---|---|---|
Meta Ads | $2,460 | 102 | $6,630 | 2.70 |
Google Ads | $1,980 | 88 | $5,940 | 3.00 |
TikTok Ads | $1,240 | 41 | $2,706 | 2.18 |
| Total | $5,680 | 231 | $15,276 | 2.69 |
Raised Search | Craft soda from $35 to $45 a dayFrom CursorNot yet
Paused 2 ads in Meta | Ginger fizz | ProspectingApproved in the workspaceNot yet
Raised Retargeting | Viewers from $40 to $55 a dayFrom CursorImproved
PaidSync.airun_account_audit
PaidSync.aipreview ofadd_negative_keywords- Campaign
- Search | Craft soda
- Change
- 6 negative keywords, phrase match
630+ tools across 14 platforms, through one connection.
Audit, check and fix ad accounts from Cursor
One entry in mcp.json gives Cursor's agent 630+ tools across 14 platforms. Cursor asks before each tool unless you turn on auto-run.
Example data
PaidSync.ailist_accounts| Account | Platform | Spent | Pace |
|---|---|---|---|
| Fizzwren US | Meta Ads | $5,960 | Over by 7% |
| Fizzwren US | Google Ads | $4,820 | On pace |
| Fizzwren US | TikTok Ads | $2,990 | On pace |
| Fizzwren Canada | Google Ads | $1,140 | Under by 12% |
| Fizzwren Canada | Meta Ads | $860 | On pace |
| Total | $15,770 |
PaidSync.aiget_campaign_performance| Campaign | ROAS | Lost to budget | Budget |
|---|---|---|---|
| Search | Craft soda | 3.4 | 24% | $45 |
| Search | Ginger fizz | 2.6 | 3% | $40 |
| Shopping | All sodas | 2.9 | 0% | $35 |
PaidSync.aipreview ofupdate_campaign_budget- Campaign
- Search | Craft soda
- Change
- Daily budget $45 to $55
PaidSync.aiget_budget_pacing| Campaign | Spent | Month budget | Runs out |
|---|---|---|---|
| Meta | Ginger fizz | Prospecting | $2,640 | $4,200 | Oct 27 |
| TikTok | Retargeting | Viewers | $1,190 | $1,900 | Oct 28 |
| Search | Craft soda | $765 | $1,400 | On pace |
| Shopping | All sodas | $595 | $1,100 | On pace |
| TikTok | Prospecting | Sodas | $1,420 | $2,600 | On pace |
PaidSync.aiget_conversion_tracking_status| Agent | Schedule | Watches | Last run |
|---|---|---|---|
| Budget Pacer | Hourly | ![]() ![]() ![]() | Today, 15:00 |
| ROAS Guardian | Daily | ![]() ![]() ![]() | Today, 07:00 |
| Wasted Spend Hunter | Daily | ![]() ![]() | Today, 07:00 |
| Anomaly Responder | Daily | ![]() ![]() ![]() | Today, 07:00 |
| Creative Fatigue Watcher | Daily | ![]() ![]() | Today, 07:00 |
| Budget Rebalancer | Weekly | ![]() ![]() ![]() | Today, 08:00 |
| Tag & Tracking Auditor | Weekly | ![]() ![]() | Oct 14 |
| GA4 Auditor | Weekly | ![]() | Oct 13 |
| Merchant Center Auditor | Monthly | Oct 1 |
Lower Ginger fizz to $110 a dayBudget Pacer, waiting for youGinger fizz prospecting would run out of its October budget on Oct 27 at this rate.
- Ad set
- Ginger fizz | Prospecting
- Change
- Daily budget $155 to $110
Listed in Claude, ChatGPT and GitHub. Approved by the ad platforms you run.
Listed in
Approved by
Built by Ahmed Ashraf, who led paid media at Scandiweb, a 2025 Google Premier Partner (top 3% of agencies).
10+ years$500M+ in ad budgets$1B+ client revenue.
- 5platforms to build campaigns on
- 630+tools
- 14ad and data platforms
- Freeplan, no card
Why PaidSync.ai in Cursor
- One config entryA single url in .cursor/mcp.json, or ~/.cursor/mcp.json for every project on your machine.
- OAuth sign-in, no key pastedSign in once with your PaidSync.ai login when Cursor prompts. Applying a change to Google Ads requires that sign-in.
- You pick which accounts Cursor seesAfter each sign-in you tick the ad accounts that belong in the workspace, and Cursor only sees those.
- Windsurf works tooWindsurf uses the same shape with serverUrl in ~/.codeium/windsurf/mcp_config.json.
What works in Cursor and what does not
What works
One config entry A paidsync entry with a url in .cursor/mcp.json for the project, or ~/.cursor/mcp.json for every project.
Reads Reports, audits and lookups only read, for example the account audit or the search terms report.
Writes Budget, bid, status, keyword, audience and campaign changes are writes. Cursor asks before each tool unless you turn on auto-run.
What does not, or needs checking
Auto-run removes Cursor's prompt With auto-run on, the human check moves to PaidSync.ai's own dry run and confirm steps.
Google Ads changes need OAuth Applying a change to Google Ads requires the OAuth sign-in. No API key is the primary path.
No plan or region limit named The connect guide names no Cursor plan or region requirement.
Windsurf differs slightly It uses serverUrl in ~/.codeium/windsurf/mcp_config.json.
How it works in three steps
These are the edits and clicks in Cursor.
Edit mcp.json
Add a paidsync entry with the address as its url to .cursor/mcp.json in your project, or to ~/.cursor/mcp.json for every project.
The url valuehttps://mcp.paidsync.ai/mcpSign in under MCP
Open Cursor Settings, then MCP, and sign in with your PaidSync.ai login when Cursor prompts for OAuth. Tools appear once the server shows as connected.
Ask in the agent
Cursor returns the account names and IDs across every platform you connected.
Cheaper than an agency. Faster than a freelancer.
Start free. Scale with your team. Cancel anytime.
- No credit card needed
- No time limit
- MCP read and write access
- API access
- Claude, ChatGPT and any agent
- 15 tasks a month
- All 14 ad platforms
- Full analysis suite, 630+ tools
- Upgrade anytime
- 600 tasks a month
- 1 seat
- MCP read and write access
- API access
- Claude, ChatGPT and any agent
- Everything in Free, plus
- Top ChatGPT and Claude models
- Cloud agents on your schedule, hourly to monthly
- PMax insights on every platform
- Wasted spend alerts
- Anomaly detection
- Unlimited ad accounts
- Up to 10 brand spaces
- 5 seats
- 6,000 shared tasks a month
- MCP read and write access
- API access
- Claude, ChatGPT and any agent
- Everything in Pro, plus
- Unlimited access to every feature
- One shared task pool
- Admin controls
- Unlimited brand spaces
- Client report sharing
- Cloud agents for the whole team
- Priority email support
- Full campaign management
- Custom agents for your process
- Dedicated success manager
- Advanced systems in your workflow
- SSO and DPA on request
Talk to sales
Tell us about your setup. We'll get back within 1 business day.
Frequently asked questions
How do I connect my ad accounts to Cursor?
Sign up at paidsync.ai, connect your ad platforms in the dashboard, then add a paidsync entry with url https://mcp.paidsync.ai/mcp to .cursor/mcp.json. Open Cursor Settings, then MCP, and sign in with your PaidSync.ai login when Cursor prompts for OAuth.
Does Cursor need an API key?
No. The OAuth sign-in is the primary path. Applying a change to Google Ads requires that OAuth sign-in.
Can Cursor change my campaigns?
Yes. Cursor asks before it runs an MCP tool unless you turn on auto-run. On the PaidSync.ai side, a dry run previews most creates, and destructive operations need an explicit confirm.
Can my whole team share the setup?
Yes. Commit .cursor/mcp.json in the repo. Every engineer who opens the project gets the connector and signs in with their own PaidSync.ai login.
Does it work in Windsurf?
Yes, with the same shape using serverUrl in ~/.codeium/windsurf/mcp_config.json.
How much does PaidSync.ai cost?
The Free plan includes 15 tasks a month with no credit card and no time limit. Pro starts at $99 a month for 600 tasks. Team starts at $249 a month for 5 seats and 6,000 shared tasks.
Start running ads from Cursor.
Add one entry, then ask in plain words.


