AdMob MCP Server
AdMob MCP 服务器
一个本地 Model Context Protocol 服务器,将 Claude 连接到 Google AdMob API,为您提供一个访问广告收入数据的对话式界面。
使用此服务器的两种方式:
本地 stdio(单机版 Claude Code): 运行
./setup.sh并选择 L。Vercel + Claude.ai 连接器(多设备版): 点击上方的徽章,然后按照 docs/VERCEL.md 操作。或者运行
./setup.sh并选择 V。
先决条件
Node.js 18+
一个启用了 AdMob API 的 Google Cloud 项目
OAuth 2.0 客户端凭据 —— 本地模式使用 桌面应用 类型,Vercel 模式使用 Web 应用 类型(有关 Vercel 的特定设置,请参阅 docs/VERCEL.md)。
Related MCP server: Google Ads MCP Server
设置
1. 获取 Google OAuth 凭据
创建或选择一个项目
在 API 库中启用 AdMob API
前往 凭据 > 创建凭据 > OAuth 客户端 ID
选择 桌面应用,命名并点击 创建
点击 下载 JSON 以下载客户端密钥文件
将下载的文件复制到本项目中的
secrets/文件夹内
2. 安装与配置
cd admob-mcp
./setup.sh设置脚本将执行以下操作:
查找并将 Google OAuth JSON 重命名为
secrets/client_secret.json安装依赖项并构建
打开浏览器进行 Google OAuth 授权(令牌将保存到
secrets/token.json)将 MCP 服务器注册到 Claude Code
若要使用更新后的作用域重新授权(例如在添加另一个 Google MCP 之后):
./setup.sh --reauth注意: 如果您的 Google Cloud 项目的 OAuth 同意屏幕尚未发布(即仍处于“测试”状态),您将看到授权错误。要解决此问题,请发布该应用,或在 Google Cloud 控制台 的 OAuth 同意屏幕 > 受众群体 下将您的 Google 帐户添加为测试用户。
手动配置
如果您不想使用 setup.sh,请将以下内容添加到您的 Claude Code MCP 配置中:
{
"mcpServers": {
"admob": {
"type": "stdio",
"command": "node",
"args": ["/absolute/path/to/admob-mcp/dist/src/index.js"],
"env": {
"ADMOB_CREDENTIALS_PATH": "/absolute/path/to/admob-mcp/secrets/client_secret.json"
}
}
}
}连接器设置 (Vercel)
如果您希望在每台设备上的 Claude.ai 中都能使用 AdMob 工具,而不仅仅是在笔记本电脑上的 Claude Code 中使用,请使用此方法。
Fork 此仓库。
点击上方的 Deploy with Vercel。
在 Vercel Storage 选项卡中配置 Upstash Redis —— 它会自动注入我们代码使用的
KV_*环境变量。(Vercel 已弃用独立的“Vercel KV”;Upstash 是相同的后端。)创建一个 Google Cloud OAuth 客户端(Web 应用)。授权重定向 URI =
https://<your-deploy>.vercel.app/api/oauth/callback。在 Vercel 中设置环境变量:
GOOGLE_CLIENT_ID、GOOGLE_CLIENT_SECRET、OAUTH_REDIRECT_URI、CONNECTOR_TOKEN(使用openssl rand -hex 32生成)。注意避免多余的空格。访问
https://<your-deploy>.vercel.app/api/setup,粘贴CONNECTOR_TOKEN,点击授权,并完成 Google 登录。这将授权 服务器 代表您读取 AdMob 数据。在 Claude.ai → 设置 → 连接器 → 添加自定义连接器:粘贴
https://<your-deploy>.vercel.app/api/mcp作为 URL,将 OAuth 客户端 ID 和密钥留空,点击 添加,然后点击 连接。浏览器会打开/oauth/authorize页面 —— 再次粘贴相同的CONNECTOR_TOKEN。Claude.ai 会处理其余部分。
两个 OAuth 流程均由同一个 CONNECTOR_TOKEN 保护:Google ↔ 服务器(第 6 步)和 Claude.ai ↔ 服务器(第 7 步)。包括故障排除在内的完整指南:docs/VERCEL.md。
使用方法
只需用自然语言向 Claude 询问有关您的 AdMob 数据的问题即可。首次使用时,Claude 会自动调用 list_accounts 来发现您的 AdMob 帐户,并询问您要处理哪一个。之后,它将使用适当的工具来回答您的问题。
工具
核心 API 工具
工具 | 描述 |
| 列出您的 AdMob 发布商帐户 |
| 获取特定帐户的详细信息 |
| 列出带有分页的广告单元 |
| 列出带有分页的应用 |
| 生成自定义网络报告,完全控制维度、指标、过滤器和排序 |
| 生成自定义中介报告,完全控制维度、指标、过滤器和排序 |
报告工具
工具 | 提示示例 |
| “显示我过去 30 天的收入趋势” |
| “哪些广告单元表现不佳?” |
| “按国家/地区细分我的收入” |
| “比较不同广告格式的性能” |
| “iOS 和 Android 的表现如何?” |
| “我的填充率是多少,我在哪里损失了钱?” |
| “哪些中介广告来源表现最好?” |
| “显示周环比收入变化” |
| “哪些应用是我的收入主力?” |
| “随时间显示我各广告单元的 eCPM 趋势” |
收入优化工具
工具 | 提示示例 |
| “我本周收入下降了,发生了什么?” |
| “我因隐私限制损失了多少收入?” |
| “我最新的应用更新是否影响了广告收入?” |
| “使用旧 SDK 版本的用户 eCPM 是否较低?” |
| “本月与上月相比如何?” |
| “我应该优化哪些广告展示位置?” |
| “某些操作系统版本是否损害了我的广告收入?” |
| “哪些中介组需要优化?” |
| “我可以在哪些国家/地区提高 eCPM?” |
| “哪些广告格式在哪些国家/地区效果最好?” |
| “我是否有望达到上个月的收入水平?” |
| “本月我表现最好和最差的日子是哪几天?” |
| “我是在工作日还是周末赚得更多?” |
| “哪些格式在每个平台上表现最好?” |
| “我的收入多元化程度如何?” |
| “我的中介来源趋势如何?” |
| “给我一份我收入最高应用的完整细分报告” |
| “标记过去 30 天内任何异常的日子” |
| “比较每个中介来源内的广告实例” |
| “本月与去年同月相比如何?” |
项目结构
src/index.ts— stdio 入口点 (Claude Code)。src/tools.ts— 所有 36 个工具定义;registerTools(server, getClient)。src/auth.ts— Google OAuth 辅助程序 (getAuthenticatedClient,authorizeViaLocalServer)。src/token-store.ts—TokenStore接口 +FileTokenStore(本地) +KvTokenStore(Vercel KV)。src/oauth-store.ts— 用于连接器 OAuth 流程的 KV 存储(授权码 + 访问令牌)。src/http-auth.ts— 用于 HTTP 端点的计时安全承载检查(与CONNECTOR_TOKEN同步,与 KV 颁发的访问令牌异步)。src/admob-client.ts,src/helpers.ts— REST 客户端和报告格式化工具。api/mcp.ts— Vercel 函数:HTTP MCP 端点(可流式传输 HTTP,承载验证,在 401 时发出WWW-Authenticate)。api/setup.ts— Vercel 函数:启动 Google ↔ 服务器 OAuth 流程的表单。api/oauth/callback.ts— Vercel 函数:Google 的重定向 URI;将令牌存储在 KV 中。api/oauth/authorize.ts,api/oauth/token.ts,api/oauth/register.ts— 实现带有 PKCE 和动态客户端注册的 Claude.ai ↔ 服务器 OAuth 2.1 流程的 Vercel 函数。api/well-known/oauth-authorization-server.ts,api/well-known/oauth-protected-resource.ts— RFC 8414 / RFC 9728 元数据,以便 Claude.ai 可以发现 OAuth 端点。setup.sh— 交互式设置脚本 ([L]ocal / [V]ercel / [B]oth)。docs/VERCEL.md— Forker 部署指南。AGENTS.md— 规范项目说明 (CLAUDE.md 是指向它的符号链接)。
开发
npm run build # Compile TypeScript
npm run start # Run the server directly (stdio)This server cannot be deployed
Maintenance
Related MCP Connectors
GA4, Google Ads and Search Console in Claude. Read-only OAuth, multi-account for agencies.
Run Apple Search Ads from Claude: performance, recommendations, keywords, budgets, launches.
Ask Claude about your ads: Meta, Google, TikTok, LinkedIn, GA4 & Shopify. No AI credits.
Live Google Ads, GA4, Search Console, Meta Ads and GBP data in Claude, ChatGPT and any MCP client
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceConnects Google AdSense to MCP clients like Claude and Cursor, enabling earnings summaries, detailed reports, site status checks, and more via natural language.16 npm5MIT
- FlicenseNot gradedqualityDmaintenanceEnables natural language access to Google Ads campaigns, accounts, and performance metrics via Claude, with tools for managing ad groups, keywords, budgets, and visualizing data.1-
- AlicenseAqualityDmaintenanceEnables querying mobile ad revenue from Google AdMob and Huawei Petal Ads through natural language, with read-only tools for account, app, ad unit, and revenue reports.1127 npmMIT
- AlicenseNot gradedqualityDmaintenanceConnects Claude Desktop to your Google Ads account, allowing you to analyze and manage campaigns, ad groups, and keywords using natural language.MIT