一个全面的模型上下文协议(MCP)服务器,提供对 Google Ads API v20 功能的完全访问。此服务器使AI助手能够通过自然语言命令执行任何 Google Ads 操作。
# 使用 pip 安装
pip install -e .
# 或者直接安装依赖项
pip install mcp google-ads pydantic httpx tenacity python-dotenv beautifulsoup4 structlog
创建一个 .env 文件或设置这些环境变量:
# OAuth2 认证
GOOGLE_ADS_CLIENT_ID=your_client_id
GOOGLE_ADS_CLIENT_SECRET=your_client_secret
GOOGLE_ADS_REFRESH_TOKEN=your_refresh_token
# 或者服务账户认证
GOOGLE_ADS_SERVICE_ACCOUNT_PATH=/path/to/service-account.json
GOOGLE_ADS_IMPERSONATED_EMAIL=user@example.com # 可选
# 所有认证方法都需要
GOOGLE_AADS_DEVELOPER_TOKEN=your_developer_token
GOOGLE_ADS_LOGIN_CUSTOMER_ID=1234567890 # 如适用,请填写管理账户ID
或者,在 ~/.config/google-ads-mcp/config.json 创建一个配置文件:
{
"client_id": "your_client_id",
"client_secret": "your_client_secret",
"refresh_token": "your_refresh_token",
"developer_token": "your_developer_token",
"login_customer_id": "1234567890"
}
添加到你的 Claude Desktop 配置 (~/.config/claude/mcp.json):
{
"mcpServers": {
"google-ads": {
"command": "python",
"args": ["-m", "google-ads-mcp"],
"env": {
"GOOGLE_ADS_DEVELOPER_TOKEN": "your_token",
"GOOGLE_ADS_CLIENT_ID": "your_client_id",
"GOOGLE_ADS_CLIENT_SECRET": "your_secret",
"GOOGLE_ADS_REFRESH_TOKEN": "your_refresh_token"
}
}
}
}
# 列出所有账户
使用 list_accounts 工具
# 创建一个活动
使用 create_campaign,参数为 customer_id="1234567890",name="夏季促销2025",
budget_amount=100.0,campaign_type="SEARCH"
# 获取活动表现
使用 get_campaign_performance,参数为 customer_id="1234567890",date_range="LAST_30_DAYS"
# 运行自定义 GAQL 查询
使用 run_gaql_query,参数为 query:
SELECT campaign.name, metrics.clicks, metrics.conversions
FROM campaign
WHERE metrics.impressions > 1000
AND segments.date DURING LAST_7_DAYS
ORDER BY metrics.clicks DESC
# 向 Performance Max 活动添加否定关键词
使用 add_negative_keywords,参数为 customer_id="1234567890",
campaign_id="123",keywords=["便宜", "折扣", "免费"]
该服务器提供了详细的错误信息:
pytest tests/
tools.py 的 _register_tools() 中添加工具定义# 使用调试日志运行
export LOG_LEVEL=DEBUG
python -m google-ads-mcp
此服务器是为 Google Ads API v20(2025年6月发布)构建的,并包括:
MIT 许可证 - 详情见 LICENSE 文件
欢迎贡献!请:
对于问题和疑问: