使用说明
谷歌广告MCP服务器
包装Google Ads API的远程MCP(模型上下文协议)服务器。将其作为自定义连接器连接到Claude.ai,通过对话创建和管理谷歌广告活动。
特性
- 多账户支持 --管理MCC下所有帐户的活动
- 16工具 涵盖整个活动生命周期:
- 账户管理(列出账户,设置活动账户)
- 活动创建(搜索、显示、性能最大值)
- 广告组、关键词、负面关键词
- 带有标题/描述固定功能的响应式搜索广告
- 资产(站点链接、标注、调用、结构化片段、图像)
- 批量结构预览和推送
- 默认安全 --除非另有明确说明,否则所有创建的活动均已暂停
- 可流式HTTP传输 --与Claude.ai定制MCP连接器兼容
项目结构
├── main.py # Entry point
├── src/
│ ├── server.py # MCP server definition (all 16 tools)
│ ├── tools/
│ │ ├── accounts.py # list_accessible_accounts, set_active_account
│ │ ├── campaigns.py # create_campaign
│ │ ├── ad_groups.py # create_ad_group
│ │ ├── keywords.py # add_keywords, add_negative_keywords
│ │ ├── ads.py # create_rsa
│ │ ├── assets.py # sitelinks, callouts, call, snippets, images
│ │ ├── pmax.py # create_pmax_campaign, create_asset_group
│ │ └── structure.py # preview_structure, push_structure
│ └── utils/
│ └── google_ads_client.py # Google Ads API client wrapper
├── scripts/
│ ├── get_refresh_token.py # OAuth2 flow to generate refresh token
│ └── verify_connection.py # Test API connection
├── google-ads.yaml # Local credentials (gitignored)
├── Dockerfile # Container config
├── railway.toml # Railway deployment config
├── render.yaml # Render deployment config
├── requirements.txt # Python dependencies
└── .env.example # Environment variable template
本地设置
先决条件
- Python 3.10+(推荐3.12)
- Google Ads开发者令牌(Explorer Access或更高版本)
- 来自Google Cloud控制台的OAuth2凭据JSON
1.安装依赖项
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
2.生成OAuth2刷新令牌
将您的OAuth2凭据JSON放入项目根目录,然后运行:
python scripts/get_refresh_token.py
这将打开一个谷歌登录浏览器,并将刷新令牌保存到 google-ads.yaml.
3.配置google-ads.yaml
填写您的开发者令牌和MCC客户ID:
developer_token: "YOUR_DEVELOPER_TOKEN"
client_id: "your-client-id.apps.googleusercontent.com"
client_secret: "GOCSPX-..."
refresh_token: "1//0..."
login_customer_id: "1234567890"
use_proto_plus: true
4.验证连接
python scripts/verify_connection.py
5.在本地运行
# HTTP mode (for testing with Claude.ai)
python main.py
# Stdio mode (for local MCP clients)
python main.py --stdio
服务器启动于 http://0.0.0.0:8000 MCP端点位于 /mcp.
部署到铁路
-
将您的代码推送到GitHub存储库(凭据为gitignored)。
-
在上创建新项目 铁路 并连接您的仓库。
-
在Railway的仪表板中添加以下环境变量:
变量 值 GOOGLE_ADS_DEVELOPER_TOKEN您的开发者令牌 GOOGLE_ADS_CLIENT_ID您的OAuth2客户端ID GOOGLE_ADS_CLIENT_SECRET您的OAuth2客户端机密 GOOGLE_ADS_REFRESH_TOKEN您的刷新令牌 GOOGLE_ADS_LOGIN_CUSTOMER_ID您的MCC客户ID(无破折号) PORT8000 -
Railway将自动检测Dockerfile并进行部署。您的MCP终点将是:
https://your-app.up.railway.app/mcp
部署以渲染
-
将代码推送到GitHub存储库。
-
创建新 网络服务 上 渲染 并连接您的仓库。
-
渲染将检测
render.yaml。在渲染仪表板中添加与上述相同的环境变量(标记sync: false为了安全起见,请使用render.yaml)。 -
您的MCP终点将是:
https://your-app.onrender.com/mcp
连接到Claude.ai
-
将服务器部署到Railway或Render(见上文)。
-
在Claude.ai中,请访问 设置>MCP连接器>添加连接器.
-
输入已部署的MCP端点URL:
https://your-app.up.railway.app/mcp -
克劳德将自动发现所有16个工具。
-
开始对话:
“列出我的Google Ads帐户” “将活动帐户设置为We Paint Texas” “创建一个名为‘春季大甩卖’的搜索活动,每天预算20美元,针对美国”
可用工具
| 工具 | 说明 |
|---|---|
tool_list_accessible_accounts |
列出MCC下的所有帐户 |
tool_set_active_account |
设置目标帐户 |
tool_create_campaign |
创建搜索/展示/购物活动 |
tool_create_ad_group |
创建链接到活动的广告组 |
tool_add_keywords |
将关键字添加到广告组 |
tool_add_negative_keywords |
在活动或广告组级别添加负面内容 |
tool_create_rsa |
创建响应式搜索广告 |
tool_add_sitelinks |
添加站点链接资产 |
tool_add_callouts |
添加调出资源 |
tool_add_call_asset |
添加电话号码资产 |
tool_add_structured_snippets |
添加结构化代码段资产 |
tool_add_image_asset |
从文件或URL上传图像 |
tool_create_pmax_campaign |
创建Performance Max活动 |
tool_create_asset_group |
使用创意创建PMax资产组 |
tool_preview_structure |
预览完整的活动结构(模拟运行) |
tool_push_structure |
将完整的广告系列结构推送到Google Ads |
备注
- 所有活动都已创建 已暂停 默认情况下
- 每个工具都接受一个可选
customer_id针对任何帐户 - 预算值使用 微型 (1美元=1000000微)
- 这
push_structure该工具按以下顺序创建实体:活动->广告组->关键字->广告->资产 - Explorer Access开发人员令牌可以读取和创建,但有每日限制