AdLoop MCP
An MCP server for Google Ads, Reddit Ads and GA4: the agent reads reports and edits campaigns, and only you turn on real spend
- 290 ★ on the repository
- Last commit
- MIT
Broad access
Why this level
- Writes to live Google Ads and Reddit Ads accounts and manages campaign budgets
- OAuth grants access to conversion data, search terms and Tag Manager and Search Console settings
- In the hosted edition, tokens and history are stored on AdLoop Cloud servers in Germany
Install
- Works in
Manual install
pip install adloopAfter installing, run adloop init to set up Google Cloud and connect your accounts.
Access and checks
How we reviewBroad accessThe tool can change data, run commands or handle secrets.
- Writes to live Google Ads and Reddit Ads accounts and manages campaign budgets
- OAuth grants access to conversion data, search terms and Tag Manager and Search Console settings
- In the hosted edition, tokens and history are stored on AdLoop Cloud servers in Germany
This is third-party code. Review the repository files before installing.
What it does
AdLoop is a Python MCP server that gives an agent read and write access to Google Ads, Reddit Ads and GA4, plus Google Tag Manager and Search Console. You install it with `pip install adloop`, then the `adloop init` wizard creates your own Google Cloud project, enables the needed APIs and sets up OAuth. There is also a hosted AdLoop Cloud edition that connects Google in two clicks with no project of your own. The tools read campaign, keyword, search term and ad stats, with a compact mode that returns the top 10 rows and ready issue lists. Separate tools join Ads and GA4 data for one campaign. Writes take two steps: a preview and a separate confirm_and_apply call with dry_run on by default. In clients with MCP Apps (Claude, ChatGPT, VS Code) a change appears as a card, and only a click on Apply applies it. In Claude Code AdLoop opens a confirmation dialog the model cannot answer for you. New campaigns and ads are created paused, budgets have a configurable cap, and broad match without smart bidding is flagged as dangerous.
Who it is for. For PPC specialists and marketers who run Google Ads and Reddit Ads campaigns and want to hand routine checks and edits to Claude Code, Cursor or another MCP client.
Good fit when
- You want to pull a search terms report, find junk queries and add negative keywords in one conversation
- You need to compare Google Ads and GA4 data for one campaign without merging tables by hand
- The team wants the agent to prepare new campaigns and ads while a person launches them
- The project uses Reddit Ads and needs the same tools and approval model as Google Ads
- You need to explain a gap between GTM and Google Ads data, taking normal EU cookie refusals into account
Not a fit when
- You do not want your own Google Cloud project: the hosted AdLoop Cloud fits better
- Your client cannot show MCP Apps cards or confirmation dialogs: protection then rests only on the separate confirm_and_apply call
- Reddit Ads or GTM changes must be validated by the platform before applying: they have no such mode
- Your ads run outside Google Ads and Reddit Ads, for example in Yandex Direct: the server does not work with it
Example request
Connect to AdLoop, pull the campaign's search-terms report for the last 30 days and suggest negative keywords for irrelevant queriesMCP
- Transport
- stdio
- Authentication
- OAuth
Limitations
Reddit Ads and GTM have no platform-side validation mode. In Reddit, a confirm call with dry_run=true only rereads the target and rechecks budget limits. In GTM, the preview saves a draft version in the container even though nothing is published. The Google Ads API version is pinned in code, and health_check warns when a newer one ships. A self-hosted install needs your own Google Cloud project, and Reddit Ads also needs a separate OAuth app in Business Manager. Tokens and the operation log live in the ~/.adloop folder.
How to disable. Remove the adloop entry from the MCP client config (for example .mcp.json) and stop the local server process. To erase tokens and the log, delete the ~/.adloop folder.
FAQ
Does AdLoop ship ready commands for Claude Code?
Yes, the repository has a .claude/commands folder with slash commands such as /create-campaign and /diagnose-tracking.
Do I need a Google Ads developer token for AdLoop?
No, if the Google Cloud project was created after September 2026 through `adloop init`: the legacy developer token field can stay empty. Google Ads API access is granted straight to your project, with no MCC membership required.
How is AdLoop Cloud different from the pip version?
The tools and approval model are the same. AdLoop Cloud stores data on servers in Germany under GDPR and is paid, with a free plan that needs no card. The self-hosted install is free and sends nothing off your machine.
Does AdLoop work with Reddit Ads?
Yes. Reddit Ads connects through a separate OAuth app in Business Manager, under Developer Application, and gets the same tool set as Google Ads.
What does the compact report mode show?
Account totals, a top-10 row breakdown and ready issue lists, for example keywords with no conversions. That way the agent does not pull the full table with every row into context.
Discussion
No questions or reviews yet.
Related
MCP serversMCP server for Google Ads: analyze campaigns, metrics and keywords with GAQL queries right in the chat with an agent
Google, Meta Ads and GA4 MCP
Google + Meta Ads + GA4 MCP
Remote MCP server for Google Ads, Meta Ads and Google Analytics 4 in one connection, OAuth login without API keys
The experimental official Google Analytics 4 MCP server: reports, funnels and realtime data on request
Search Console MCP: Google, Bing and GA4 data for agents
Search Console MCP
An MCP server that gives an agent Google Search Console, Bing Webmaster, GA4 and AdSense data with ready SEO checks
An MCP server that searches competitors' ads in the public Facebook Ad Library with no account or token
The MCP server for RoASr: ad audits, KPIs and competitor intelligence across Meta, Google Ads and Yandex Direct in one place
README in short
The README compares hosted and self-hosted setup and lists the tools per service with their arguments. A large Safety Model section covers approvals, budget caps and the audit log.