使用说明
Google Ads MCP 服务器(实验性)
这个仓库包含了运行本地(服务/应用)所需的源代码 MCP(在不同领域可能有不同的含义,但常见翻译为):最小代价路径/最小成本路径(在计算机科学或网络路由中);多细胞聚落(在生物学或组织工程中);或者根据具体上下文可能翻译为其他含义 与(某系统或用户)交互的服务器 谷歌广告API。
工具
服务器使用 谷歌广告API 提供几个 工具 用于与大型语言模型(LLMs)配合使用。
可用的工具
search检索有关Google Ads帐户的信息。list_accessible_customers返回可直接访问的客户名称 通过用户对通话进行身份验证。
注释
- MCP服务器将把您的数据暴露给您连接到它的代理或大型语言模型(LLM)。
- 如果您遇到技术问题,请使用 GitHub 问题追踪器.
- 为了帮助我们收集使用数据,您会发现您的API调用中增加了一个额外的头部信息,这些数据将用于改进产品。
设置说明
设置过程包括以下步骤:
- 配置 Python。
- 配置开发者令牌。
- 在您的项目中启用API
- 配置凭据。
- 配置Gemini。
配置Python
配置开发者令牌
按照以下说明操作 获取开发者令牌.
记录“YOUR_DEVELOPER_TOKEN”,在下面的“配置Gemini”步骤中你需要用到它
在您的项目中启用API
按照指示操作 在您的 Google Cloud 项目中启用以下 API:
配置凭据
选项1:使用应用程序默认凭据配置凭据
配置您的 应用程序默认凭据 (ADC) 翻译为中文是“抗体偶联药物”. 确保凭据是用于能够访问您Google Ads账户的用户 账户或财产。
凭证必须包含Google Ads API范围:
https://www.googleapis.com/auth/adwords
办理退房/结账 管理OAuth客户端 关于如何创建一个OAuth客户端。
以下是一些样本 gcloud 你可能会觉得有用的命令:
-
使用用户凭据以及OAuth桌面或网页客户端设置ADC(ADC可能指某种应用或服务,具体需根据上下文确定,此处保留原英文缩写) 下载客户端JSON到
YOUR_CLIENT_JSON_FILE。gcloud auth application-default login \ --scopes https://www.googleapis.com/auth/adwords,https://www.googleapis.com/auth/cloud-platform \ --client-id-file=YOUR_CLIENT_JSON_FILE -
使用服务账户模拟设置ADC。
gcloud auth application-default login \ --impersonate-service-account=SERVICE_ACCOUNT_EMAIL \ --scopes=https://www.googleapis.com/auth/adwords,https://www.googleapis.com/auth/cloud-platform
当……的时候 gcloud auth application-default 命令完成,复制
PATH_TO_CREDENTIALS_JSON 文件位置已打印到控制台中
以下信息。你稍后会用到它!
Credentials saved to file: [PATH_TO_CREDENTIALS_JSON]
选项2:使用Google Ads API Python客户端库配置凭据。
按照说明操作 设置并配置Google Ads API Python客户端库
如果你已经完成了这一步并且已经可以正常工作了 google-ads.yaml ,你可以重复使用这个文件!
在 utils.py 文件中,将 get_googleads_client() 更改为使用 load_from_storage() 方法。
配置Gemini
-
在(指定位置)创建或编辑文件
~/.gemini/settings.json,添加您的服务器 到mcpServers列表。
-
选项1:使用应用程序默认凭据方法
替换
PATH_TO_CREDENTIALS_JSON使用你之前复制的路径 步骤。我们还建议您添加一个
GOOGLE_CLOUD_PROJECT归因于env对象。替换YOUR_PROJECT_ID在以下示例中,与……一起 项目ID 你的 Google Cloud 项目。{ "mcpServers": { "google-ads-mcp": { "command": "pipx", "args": [ "run", "--spec", "git+https://github.com/googleads/google-ads-mcp.git", "google-ads-mcp" ], "env": { "GOOGLE_APPLICATION_CREDENTIALS": "PATH_TO_CREDENTIALS_JSON", "GOOGLE_PROJECT_ID": "YOUR_PROJECT_ID", "GOOGLE_ADS_DEVELOPER_TOKEN": "YOUR_DEVELOPER_TOKEN" } } } } -
选项2:使用Python客户端库的方法
{ "mcpServers": { "google-ads-mcp": { "command": "pipx", "args": [ "run", "--spec", "git+https://github.com/googleads/google-ads-mcp.git", "google-ads-mcp" ], "env": { "GOOGLE_PROJECT_ID": "YOUR_PROJECT_ID", "GOOGLE_ADS_DEVELOPER_TOKEN": "YOUR_DEVELOPER_TOKEN" } } } }
登录客户ID
如果您是通过管理账户访问客户账户的,那么您将 需要在设置文件中添加管理员账户的客户ID。
见 在这里 详情见下文。
最终文件将如下所示:
{
"mcpServers": {
"google-ads-mcp": {
"command": "pipx",
"args": [
"run",
"--spec",
"git+https://github.com/googleads/google-ads-mcp.git",
"google-ads-mcp"
],
"env": {
"GOOGLE_APPLICATION_CREDENTIALS": "PATH_TO_CREDENTIALS_JSON",
"GOOGLE_PROJECT_ID": "YOUR_PROJECT_ID",
"GOOGLE_ADS_DEVELOPER_TOKEN": "YOUR_DEVELOPER_TOKEN",
"GOOGLE_ADS_LOGIN_CUSTOMER_ID": "YOUR_MANAGER_CUSTOMER_ID"
}
}
}
}
主题委托(仅限服务帐户)
如果你正在使用服务账户凭据,并且需要冒充特定用户,你可以添加 GOOGLE_ADS_SUBJECT 设置一个环境变量,其中包含要冒充的用户的电子邮件地址。
重要注意事项:
- 这个功能 仅支持使用服务帐户凭据如果你正在使用OAuth凭据(选项1,即带用户凭据的方式),则subject参数会被记录但会被忽略。
- 服务帐户必须启用域范围委托,并由工作区管理员授予相应的权限范围。
见 在整个域名范围内进行委托(或权限分配) 了解更多详情。
带有主题委托的示例配置:
{
"mcpServers": {
"google-ads-mcp": {
"command": "pipx",
"args": [
"run",
"--spec",
"git+https://github.com/googleads/google-ads-mcp.git",
"google-ads-mcp"
],
"env": {
"GOOGLE_APPLICATION_CREDENTIALS": "PATH_TO_SERVICE_ACCOUNT_JSON",
"GOOGLE_PROJECT_ID": "YOUR_PROJECT_ID",
"GOOGLE_ADS_DEVELOPER_TOKEN": "YOUR_DEVELOPER_TOKEN",
"GOOGLE_ADS_SUBJECT": "user@example.com"
}
}
}
}
试试看
启动Gemini代码助手或Gemini命令行界面,并输入 /mcp你应该能看到
google-ads-mcp 列在结果中。
以下是一些示例提示,帮助您入门:
-
询问服务器能做什么:
what can the ads-mcp server do? -
询问客户情况:
what customers do I have access to? -
询问有关活动的情况
How many active campaigns do I have?How is my campaign performance this week?
关于客户ID的说明
您的代理在大多数提示中将需要并会要求客户提供客户ID。如果您是 在多个客户之间切换时,提示中包含客户ID可能会 更简单些。
How many active campaigns do I have for customer id 1234567890
贡献;助力
欢迎投稿!详情请见 贡献指南。
致谢/鸣谢
这个项目是基于 Google Ads MCP(Google广告认证营销专业人员) 由Google有限责任公司提供,根据Apache许可证2.0版授权。
许可证
根据Apache许可证,第2版授权。详见 许可证 详情见下文。