MCP

AdSense MCP server: publisher revenue analysis from Claude or Codex

TL;DR

AdSense is a reporting-only integration and that is the correct shape: there is very little an agent should change in AdSense, and a great deal it can explain. The value is not automation here — it is answering "why did revenue move" without opening three dashboards.

What already exists for this platform

Google has not shipped a platform-official AdSense MCP server at the time of writing (September 2026).

  • No official server. The AdSense Management API is straightforward to wrap, and several community servers do.
  • Read-only is appropriate. AdSense exposes little that an agent should mutate, so a server offering writes would be solving a problem publishers do not have.
  • The hard part is not AdSense — it is that a revenue question usually spans AdSense, Ad Manager and AdMob at once.

What a full MCP server adds

Typical option todayAgent Planners MCP
AdSense toolsCommunity, read-only9 reads
Ad Manager in the same sessionNoYes
AdMob in the same sessionNoYes
Scheduled monitoring + alertsNoThreshold rules and anomaly detection
Joined to traffic dataNoGA4 and Search Console on the same key
Tool counts are derived from the live catalogue rather than typed by hand: this family exposes 9 reads and 0 writes of the 384 tools on the endpoint. A key only sees the writes if it carries `tools:write`.

How to configure it

  1. 1Create a key in API & MCP. `tools:read` for questions; add `tools:write` if the agent should be able to change things. Tools mode needs a paid plan and fails closed.
  2. 2Connect AdSense under Integrations — that OAuth step is why the MCP key never carries platform credentials.
  3. 3Add the server to Claude Code, Claude Desktop or Codex using the snippet below.
  4. 4Have the agent call `describe_permissions` first — it reports the key's mode, scopes, plan entitlement and connected accounts.
  5. 5Call `list_accounts` for the account ids, and scope each call with one. Resolution is exact or it refuses, naming the candidates.
bash
claude mcp add --transport http agentplanners https://www.agentplanners.com/api/mcp \
  --header "Authorization: Bearer ap_live_…"

Claude Desktop and Codex

Claude Desktop takes the same endpoint as JSON:

json
{
  "mcpServers": {
    "agentplanners": {
      "url": "https://www.agentplanners.com/api/mcp",
      "headers": {
        "Authorization": "Bearer ap_live_…"
      }
    }
  }
}
Codex uses the same endpoint from `~/.codex/config.toml`, with the key in an environment variable rather than the file: `[mcp_servers.agentplanners]` / `url = "…/api/mcp"` / `bearer_token_env_var = "AGENTPLANNERS_API_KEY"`.

Why a single-platform AdSense server answers the wrong question

A publisher rarely wants to know what AdSense did. They want to know why total revenue moved, and the answer usually lives in the relationship between platforms — demand shifting between AdSense and Ad Manager, an app inventory change in AdMob, or a traffic drop that shows up in GA4 and Search Console before it shows up in revenue.

One reviewer put the workflow plainly: they check Ad Manager, AdSense, AdMob and analytics separately before they can understand what is affecting revenue. A server that only reaches one of those leaves three tabs open.

Use cases

  • Revenue drop diagnosis across AdSense, Ad Manager and AdMob in one question.
  • RPM by placement and country, ranked, without building a report by hand.
  • Threshold alerts on revenue and RPM, delivered on a schedule rather than checked manually.
  • Traffic versus revenue — joining Search Console and GA4 to the monetization side, which is where the cause usually is.

Frequently asked questions

Is there an official AdSense MCP server?
Not from Google at the time of writing (September 2026). Community wrappers around the AdSense Management API exist, and they are read-only, which is the right shape for AdSense.
Can an AI agent change my AdSense settings?
Not here — the AdSense integration is 9 read tools and no writes. AdSense exposes little that an agent should mutate, so read-only is a design decision rather than a gap.
Why does a publisher need more than an AdSense server?
Because the question is rarely about AdSense alone. Revenue movement usually involves Ad Manager and AdMob as well, and often a traffic change visible in GA4 or Search Console first.
Put a human-approved agent on your ad ops

Start free — 2,500 credits a month, no credit card. Reads are free; every write waits for you.

Related reading