Back to MCP Servers

Mureo

Framework for AI agents (Claude Code, Cursor, Codex, Gemini) to operate Google Ads, Meta Ads, and Search Console. Grounded in a local STRATEGY.md — not metric-chasing. Defense-in-depth security, local-first. Apache 2.0.

marketinggosecurityaiagent
By logly
243Updated 3 days agoPythonApache-2.0

Installation

npx -y mureo

Configuration

{
  "mcpServers": {
    "mureo": {
      "command": "npx",
      "args": ["-y", "mureo"]
    }
  }
}

How to use

  1. Run the installation command above (if needed)
  2. Open your Claude Code settings file (~/.claude/settings.json)
  3. Add the configuration to the mcpServers section
  4. Restart Claude Code to apply changes
<p align="center"> <picture> <source media="(prefers-color-scheme: dark)" srcset="docs/img/logo-dark.png"> <img src="docs/img/logo.png" alt="mureo" width="300"> </picture> </p> <p align="center"> <a href="https://mureo.io">Website</a> · <a href="https://mureo.jp">Commercial edition</a> · <a href="README.ja.md">日本語</a> </p> <p align="center"> <a href="https://pypi.org/project/mureo/"><img alt="PyPI" src="https://img.shields.io/pypi/v/mureo.svg"></a> <a href="https://pypi.org/project/mureo/"><img alt="Python versions" src="https://img.shields.io/pypi/pyversions/mureo.svg"></a> <a href="LICENSE"><img alt="License" src="https://img.shields.io/badge/license-Apache%202.0-blue.svg"></a> <a href="https://github.com/logly/mureo/actions/workflows/ci.yml"><img alt="CI" src="https://github.com/logly/mureo/actions/workflows/ci.yml/badge.svg"></a> </p>

mureo — your open-source, local-first AI ad ops crew. Find waste, audit changes, run ad accounts safely.

Local-first. Strategy-grounded. Safety-gated.

Works with Claude Code, Cursor, Codex & Gemini. mureo sits on top of the official ad-platform MCPs and gives your AI a strategy to follow, an outcome to be measured against, and an audit trail you can show to anyone — credentials never leave your machine.

Commercial editions are also available — including a cloud-hosted service and a local Agency edition for teams and agencies. See mureo.jp.

<p align="center"> <img src="docs/img/sample-search-term-cleanup.svg" alt="mureo /search-term-cleanup output: brand self-cannibalization detected — same brand term converts at ¥4,550 CPA in one campaign vs ¥31,800 wasted in another, ~¥250,000/30d redirectable"> </p> <p align="center"><em>Real output: brand cannibalization auto-detected on a 30-day BYOD bundle (anonymized B2B SaaS account). <a href="#what-the-output-actually-looks-like-anonymized-b2b-saas-account">More samples ↓</a></em></p>

What is mureo?

mureo is a local-first control plane for AI ad ops. Once installed, AI agents (Claude Code, Cursor, Codex, Gemini, etc.) operate Google Ads, Meta Ads, Amazon Ads, TikTok Ads, Search Console, and GA4 through mureo — which keeps every action grounded in your business strategy, tied to real outcomes, and recorded in an audit log you can replay.

mureo ships its own connectors for Google Ads, Meta Ads, and Search Console today, and plugs in official ad-platform MCPs as platforms release them (TikTok's is already supported, and Amazon Ads (official MCP bridge) is bridged through mureo so your credentials never enter the host's MCP config — see docs/amazon-ads.md). mureo's value is not the API connection — it is what happens around it:

  • Strategy-grounded — every decision reads STRATEGY.md (persona, USP, brand voice, goals)
  • Safety-gated — rollback allow-list, GAQL guards, BYOD read-only by default, credential guard, per-platform throttle
  • Cross-platform — Google Ads / Meta Ads / Amazon Ads / TikTok Ads / Search Console / GA4 in one workflow
  • Auditable — append-only action log with rollback
  • Local-first — credentials never leave your machine
  • Learnable/learn builds account-specific knowledge over time

Quick start — see it work in 2 minutes

All you need is Python 3.10+ and Claude Code (Cursor, Codex CLI, and Gemini CLI work too — see Other agents and hosts). The demo scenario runs on synthetic data, so it needs no ad-account credentials, no OAuth, and no sign-up:

pip install mureo
mureo configure

mureo configure opens a local browser UI (bound to 127.0.0.1, no remote access). Pick your Claude app, run the one-click basic setup, and then choose a demo scenario in the Demo / BYOD section. The UI also offers a platform-connection (OAuth) step — skip it for now; the demo doesn't need it. (Terminal equivalent: mureo setup claude-code --skip-auth && mureo demo init --scenario seasonality-trap.)

Then open the generated demo directory (the UI shows its path) in Claude Code and ask:

/daily-check

You'll watch the agent read the demo STRATEGY.md, pull campaign data, and walk into a seasonality trap that numbers-only tools miss. Try /search-term-cleanup next.

When you're ready to point mureo at your data, pick one of the two paths below.

Path A: Bring your own data (BYOD) — 5–10 min, no OAuth

Export your real account data as an XLSX, drop it into mureo, and get a strategy-grounded multi-platform diagnosis — no OAuth flow, no developer-token approval. Import the bundle from the mureo configure dashboard (the same Demo / BYOD section), or from the terminal:

mureo byod import ~/Downloads/mureo-google-ads.xlsx
mureo byod import ~/Downloads/mureo-meta-ads.xlsx   # platforms are independent — add either, or both
# Open Claude Code, run /onboard once, then: "Run /daily-check"

The first /onboard run interviews you and generates STRATEGY.md (your strategy) and STATE.json (state) — the context every later command reads. The demo skips this step because it ships with a ready-made STRATEGY.md.

Producing the XLSX is a one-time setup per platform — Google Ads via an Apps Script template (~5 min), Meta Ads via a 2-click Saved Report export (recognized in 9 languages). BYOD guide →

BYOD is read-only by construction: every mutation tool returns {"status": "skipped_in_byod_readonly"} — the agent analyzes and recommends but never writes to your account.

Path B: Go live (OAuth) — full functionality

Connect mureo directly to the Google Ads / Meta Ads APIs. Required to actually execute changes (running /rescue, /budget-rebalance, /creative-refresh, or applying a rollback via the rollback_apply tool) and for GA4 / Search Console support.

In the same mureo configure UI, open Connect platforms: interactive Google / Meta OAuth in the browser, with each field deep-linking to the right console page, plus official-MCP provider registration. (Terminal equivalent: mureo auth setup.) Authentication guide →

Prerequisites: a Google Ads Developer Token + OAuth Client, and/or a Meta App ID + Secret (development mode is fine). Both wizards walk you through obtaining them.

Once connected, open your working directory in Claude Code and run /onboard once — it generates STRATEGY.md and STATE.json, and commands become strategy-grounded only after those exist.

Not familiar with Google Cloud Console or Meta for Developers? OAuth flows and developer-token registration can feel intimidating. Start with the demo or BYOD — see what mureo can do in minutes, then decide whether the Live API path is worth setting up.

Which mode fits?

CapabilityBYODLive API
First-time setup time5–10 min per platform30–60 min
Approval / waiting riskNone1–3 weeks Google review, sometimes rejected
/daily-check, /weekly-report✅ (campaign / ad-set / ad drill-down + placement / platform / device breakdown)
/goal-review, /sync-state
/rescue / /budget-rebalance (proposals)
/search-term-cleanup (analysis)✅ Google Ads only
Execution (/rescue, /budget-rebalance, /creative-refresh, /search-term-cleanup)🛡️ Preview only✅ Live
/competitive-scan⚠️ Google Ads BYOD has no auction insights (Ads Scripts limitation)
GA4 / Search Console❌ (not in BYOD bundle)

The presence of ~/.mureo/byod/manifest.json is the switch — imported platforms run on BYOD, the rest on the Live API. Upgrade a platform any time with mureo byod remove --google-ads or mureo byod clear.

Other agents and hosts

mureo configure covers the Claude hosts (Claude Code / Claude Desktop) end to end. The commands below are the scriptable equivalents, plus the non-Claude hosts:

HostCommandNotes
Claude Codemureo setup claude-codeMCP server + credential guard + workflow skills
Claude Desktop (Chat / Cowork)mureo install-desktopThen connect the workspace folder in Cowork
Cursormureo setup cursorMCP tools only (no workflow skills)
Codex CLImureo setup codexFull parity — skills land in ~/.codex/skills/, invoke with $daily-check
Gemini CLImureo setup geminiExtension manifest; no PreToolUse hooks
Any MCP client / CIDockerDocker guide →

Full per-host walkthroughs, including the Demo / BYOD / Live matrix for each: Getting Started →

Features

Strategy-driven decisions

Every operation starts from STRATEGY.md -- your persona, USP, brand voice, goals, and operation mode. The agent doesn't just optimize metrics; it optimizes toward your business objectives.

/creative-refresh reads your Persona and USP before drafting a single headline.
/budget-rebalance checks your Operation Mode before shifting a single dollar.
/rescue cross-references your Goals before recommending what to fix first.

Cross-platform analysis

mureo orchestrates across Google Ads, Meta Ads, Amazon Ads, TikTok Ads, Search Console, and GA4 in a single workflow:

  • /daily-check -- pulls delivery status, ad performance, organic search trends, and site behavior across all platforms, then correlates them into one health report.
  • /search-term-cleanup -- compares paid keywords against organic rankings to eliminate wasteful overlap.
  • /competitive-scan -- combines auction insights with organic position data for a complete competitive picture.

The agent auto-discovers your configured platforms. Add Meta Ads, Amazon Ads, or TikTok Ads later? Every command adapts automatically.

Built-in marketing expertise

Campaign diagnostics that pinpoint why ads aren't delivering -- budget constraints, bidding misconfiguration, policy disapprovals, and more. Search term intent classification. Budget efficiency scoring. RSA ad validation and asset auditing. Landing page analysis. Device-level CPA gap detection. The kind of knowledge experienced ad operators carry in their heads -- built into every workflow.

Creator-quality creative generation

/creative-generate produces creator-quality ad creatives — text-free key visuals from a bring-your-own-key image provider, then pixel-perfect Japanese typography composited via HTML/CSS + headless Chromium — and the agent scores every candidate before anything ships. See docs/creative-studio.md.

Learnable operational know-how

When you correct the agent or share an operational insight, /learn saves it to a persistent knowledge base. That knowledge is loaded at the start of every future session, so the agent doesn't repeat the same mistakes and applies what it learned to similar situations across your account.

You: /learn That's not a real CPA spike -- this industry always dips in Golden Week.
Agent: Saved. I'll flag this as seasonal next time.

→ Written to the diagnostic knowledge base.
→ Every future /daily-check and /rescue will factor this in.

Beyond your own /learn history, mureo can also consult external advisor MCP servers — consulting firms, industry trade groups, OSS communities, or internal team wikis can sta

View source on GitHub