关于 Microsoft Advertising (Bing Ads)
Microsoft Advertising MCP 服务通过 Bing Ads API 向本地 MCP 客户端提供账户、广告投放配置和报告,并支持预览后变更。写入默认关闭,账户白名单和所属客户检查限制可访问范围。
主要功能
- 01读取广告系列、广告组、广告和关键词
- 02查询定向、受众、UET 与转化目标
- 03读取媒体、视频和资产组
- 04提交并轮询异步报告
- 05写入先预览,创建项默认为暂停
- 06账户白名单与客户所有权校验
适用场景
- 01检查账户内广告和定向配置
- 02查看转化目标及 UET 标签
- 03查询异步报告的效果数据
- 04预览投放配置变更
MCP 相关
作为 MCP 服务,通过 stdio 提供 20 个读取工具、23 个可选写入工具及指南资源。客户端使用环境变量配置 Microsoft Advertising 凭据与账户白名单;写入需显式启用并确认。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
npx -y @getmcpads/bing-ads-mcp-serverBING_ADS_DEVELOPER_TOKEN密钥Your developer token. Required in production; the sandbox uses the universal token.BING_ADS_CLIENT_IDApplication (client) ID of your OAuth app registration.BING_ADS_CLIENT_SECRET密钥Client secret, only for a web app registration or Google identity.BING_ADS_REFRESH_TOKEN密钥Refresh token with the msads.manage and offline_access scopes. Kept in memory only.BING_ADS_CUSTOMER_IDCustomer ID that owns the accounts, unless every account entry carries its own.BING_ADS_ACCOUNT_IDSComma-separated allowed account IDs, optionally accountId:customerId. Required even for reads.BING_ADS_ENVIRONMENTproduction (default) or sandbox.BING_ADS_IDENTITY_PROVIDERMicrosoft (default) or Google, for users who sign in with Google.BING_ADS_OAUTH_TENANT密钥Microsoft Entra tenant for the token endpoint. Defaults to common.BING_ADS_ENABLE_WRITEStrue exposes 23 write tools. Defaults to false. Writes preview until confirm:true.本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Microsoft Advertising MCP 服务
将你的 Microsoft Advertising 账户接入 MCP 客户端。
通过 Bing Ads API 查看广告系列、定位和报告,并为明确选定的账户准备更改。
观看影片 · 最新动态 · 安装 · 工具参考 · 试用托管版 getmcpads
影片展示的是使用示例数据的托管版 getmcpads。从创意素材库和提醒,到 Google Sheets 导出和批量启动,其 MCP Apps 都属于托管产品。本仓库提供独立的原生 API 工具。
20 个读取工具 · 23 个写入工具,默认禁用。
你可以使用自己的 Microsoft Advertising 凭据,在本地运行;还需要支持 stdio MCP 的客户端,例如 Claude Desktop、Claude Code 或 Cursor。请求会直接发送至 Bing Ads API。如需托管连接,包括受支持的 ChatGPT 设置,请使用托管版。
最新动态
v1.0.0:首个独立版本 · 2026 年 10 月 23 日
- 首个独立版本,移植自 getmcpads 网关原生 Microsoft Advertising 工具,源修订版本为 3e1c2c8。
- 20 个读取工具:账户发现、广告系列、广告组、广告、关键词、定位、受众、UET 标记、转化目标、媒体、视频、Performance Max 资产组、图片清单、写入和报告架构,以及异步报告。
- 23 个写入工具,默认禁用:创建和更新广告系列、广告组、广告、关键词和受众、定位条件、资产组、UET 标记和转化目标,重命名、图片上传和视频导入。所有写入操作都会先预览,除非设置
confirm: true;新实体会以 Paused 状态创建。 - 凭据通过
BING_ADS_*环境变量提供。访问令牌仅在内存中通过刷新令牌续期。 - 使用明确的账户允许列表并检查所属客户;固定 API 和令牌主机;不跟随重定向;设置超时和响应大小上限;隐藏凭据。
- 需要 Node.js 22.23.4、24.22.1、26.12.1 或这些版本线的更新版本,否则会向 stderr 发出警告。
源代码同步说明:SOURCE_SYNC.md。
升级说明
需要 Node.js 22.23.4、24.22.1、26.12.1 或这些版本线的更新版本。这些版本包含 2026 年 10 月的安全修复;在较旧版本上启动时,服务会向 stderr 打印警告。CI 覆盖 Node 22、24 和 26。写入功能仍为可选,并且需要明确确认。托管创意集成和 MCP Apps UI 不包含在此版本中。
安装此版本
这是一个 GitHub 源码发行版。npm 和 MCP Registry 版本会单独发布。以下命令会选择此确切版本;本文后面的未固定版本 npx 示例会选择 npm 上当前可用的版本。
git clone --branch v1.0.0 --depth 1 https://github.com/get-mcp-ads/bing-ads-mcp-server.git
cd bing-ads-mcp-server
npm ci
npm run build
配置 MCP 客户端,使其运行 node,并将 dist/cli.js 的绝对路径和下文所述的凭据传入。该软件包发布到 npm 后,客户端即可使用 npx 运行:
{
"mcpServers": {
"microsoft-advertising": {
"command": "npx",
"args": ["-y", "@getmcpads/bing-ads-mcp-server"],
"env": {
"BING_ADS_DEVELOPER_TOKEN": "your-developer-token",
"BING_ADS_CLIENT_ID": "your-app-client-id",
"BING_ADS_REFRESH_TOKEN": "your-refresh-token",
"BING_ADS_CUSTOMER_ID": "1234567",
"BING_ADS_ACCOUNT_IDS": "7654321"
}
}
}
}
npm run doctor 会报告哪些变量已设置,但不会打印其值,并检查 Node.js 版本。
托管连接:通过托管的 getmcpads 使用 Microsoft Advertising。连接你的账户,选择助手可以访问的数据,然后使用托管 MCP 连接。当前功能和套餐请参阅该网站。
配置
通过客户端的机密配置提供以下环境变量:
| 变量 | 用途 |
|---|---|
BING_ADS_DEVELOPER_TOKEN | 你的开发者令牌。生产环境中必填。沙盒始终使用 Microsoft 的通用沙盒令牌。 |
BING_ADS_CLIENT_ID | Microsoft Entra 应用注册或 Google OAuth 客户端的应用程序(客户端)ID。 |
BING_ADS_CLIENT_SECRET | 客户端机密。仅适用于 Web 应用注册或 Google 身份验证。对于公共应用,请留空。 |
BING_ADS_REFRESH_TOKEN | 使用 https://ads.microsoft.com/msads.manage 和 offline_access 范围授予的刷新令牌。 |
BING_ADS_CUSTOMER_ID | 拥有这些账户的客户 ID(Web 应用 URL 中的 cid)。除非每个账户条目都包含自己的客户 ID,否则必填。 |
BING_ADS_ACCOUNT_IDS | 必填的账户 ID 允许列表(Web 应用 URL 中的 aid),以逗号分隔。对于由其他客户拥有的账户,请写成 accountId:customerId。最多 200 个。 |
BING_ADS_ENVIRONMENT | production(默认值)或 sandbox。每个环境都需要各自的凭据。 |
BING_ADS_IDENTITY_PROVIDER | Microsoft(默认值)或 Google,适用于使用 Google 账户登录 Microsoft Advertising 的用户。 |
BING_ADS_OAUTH_TENANT | 令牌终结点对应的 Microsoft Entra 租户。默认为 common。 |
BING_ADS_ENABLE_WRITES | 默认为 false。只有值严格等于 true 时才会公开写入工具。 |
Microsoft 对每个步骤都有说明:获取开发者令牌、注册应用程序、请求用户许可以及获取访问令牌和刷新令牌,其中也包括 Google 身份验证方式。请使用数字账户 ID,而非 Web 应用中显示的 8 位账户编号。
此软件包接受刷新令牌;它不会运行 OAuth 浏览器流程。它会在访问令牌过期前 1 分钟续期,并且仅在内存中保留访问令牌及任何轮换后的刷新令牌。Microsoft 可能随时使刷新令牌失效,例如在密码更改后。向公共应用颁发的刷新令牌只能保证在获取该令牌的设备上续期。刷新失败时,请获取新令牌并重启服务。
安全性与覆盖范围
默认情况下,写入操作会先预览。再次调用并设置 confirm: true 前,请检查确切的账户、目标和参数。
营销活动、广告组、广告、关键字和素材组均以“已暂停”状态创建。转化目标也以“已暂停”状态创建,并排除在竞价之外。将 Status 设为 Active 可能会开始产生费用,预览会通过 activationMaySpend 标记这一点。
如果写入结果不确定,请勿自动重试。先读取账户并核对。已确认的调用若返回 applied: "partial",表示部分项目已应用,其他项目则被拒绝。
只能访问 BING_ADS_ACCOUNT_IDS 中的账户。账户发现功能只会返回这些账户。返回或更改数据前,服务会读取账户;除非 Microsoft 报告该账户归配置的客户所有,否则服务会停止操作。未知参数会被拒绝。
原生 REST 字段、报告列和单位均会保留。报告值保持为 Microsoft 写入时的字符串,并以账户货币单位表示。64 位 ID 保持精确。
报告采用异步方式:bing_get_insights 会返回一张回执,由 bing_get_report 轮询。回执在签发它的服务进程中有效一小时。每份报告最多返回 2,000 行。
Microsoft 会限制每位用户和每个账户的调用次数。错误 117 表示调用频率超限;请等待限额窗口重置。
此服务提供 Campaign Management、Customer Management 和 Reporting 服务中经审核的部分功能。它不包含账单、批量上传或 Ad Insight 操作、跨客户共享账户或更改历史记录。
包含原生媒体读取和写入功能。不包含托管创意图库、可视化编辑器和 MCP Apps UI。
如需查看确切的架构,请使用 tools/list 或 server-card.json;提供方详情请参阅 Microsoft Advertising API 参考。
Microsoft 自家的 MCP 服务
Microsoft 发布了 Microsoft Advertising MCP 服务,并在 Microsoft Learn 上提供文档:设置指南、工具和使用案例。2026 年 6 月,Microsoft 宣布,该服务将扩展为开放试点,并提供只读访问权限。
以下差异依据这些页面,截至 2026 年 10 月 23 日。
| Microsoft 的 MCP 服务 | 此服务 | |
|---|---|---|
| 运行位置 | 位于 https://partner.api.bingads.microsoft.com/ext/mcp/vnext 的远程端点 | 本地通过 stdio 运行 |
| 身份验证 | 在客户端中使用 Microsoft Entra ID OAuth;要用于 ChatGPT、Claude 和 Copilot Studio,需注册自己的应用 | 将开发者令牌和刷新令牌设为环境变量 |
| 有文档说明的工具 | 9 个工具;Microsoft 声明这些工具绝不会修改账户数据 | 20 个读取工具和 23 个可选择启用的写入工具 |
| 实体读取 | 账户、营销活动、广告组、广告、关键字、素材组、素材和受众关联;支持筛选、排序、分页和可选的效果指标 | 账户、营销活动、广告组、广告、关键字、定位条件、受众、UET 标记、转化目标、媒体、视频和素材组,均以原生 REST 对象形式提供 |
| 报告 | 实体工具中的效果指标、素材效果和账户更改历史记录 | 异步 Reporting API,提供 8 种报告类型及其原生列 |
| 写入 | 无 | 创建和更新操作需先预览并确认;创建的对象均处于“已暂停”状态 |
托管选项
getmcpads for Microsoft Advertising 可管理托管连接和账户选择。 托管版本和源码版本可能有所不同。联系方式:[email protected]。
开发
npm run typecheck
npm run lint
npm run build
npm test
npm run catalog
所有测试都使用合成响应离线运行。不会更改任何实时账户。
工具
以下列出了所有工具。完整的参数和输出架构请参阅 server-card.json。bing-ads://guide 资源返回的覆盖范围、安全性和限制说明与 bing_get_setup_guide 相同。
20 个读取工具
| 工具 | 用途 |
|---|---|
bing_list_accounts | 列出此用户可访问的已配置账户,包括名称、编号、币种、状态和所属客户。 |
bing_health_check | 读取所选账户,并确认环境、所属客户和币种。 |
bing_get_campaigns | 读取一种广告系列类型的原生广告系列配置、预算、设置和状态。 |
bing_get_ad_groups | 读取自有广告系列中的广告组及其原生配置。 |
bing_get_ads | 读取广告及其原生创意素材、URL 和状态,适用于你列出的广告格式。 |
bing_get_keywords | 读取自有广告组中的关键字、匹配类型、出价和状态。 |
bing_get_targeting | 读取一种条件类型的已配置广告系列或广告组定位设置。 |
bing_get_audiences | 读取一种受众类型的受众配置。 |
bing_get_uet_tags | 读取 UET 跟踪标记配置。 |
bing_get_conversion_goals | 读取转化目标配置。 |
bing_get_media | 按 ID 读取已上传媒体的元数据,包括图像表示形式。 |
bing_get_videos | 读取账户视频素材及其处理状态。 |
bing_get_asset_groups | 读取 Performance Max 素材组及其创意配置和状态。 |
bing_get_geo_file | 获取 Microsoft 当前的地理定位文件链接。 |
bing_list_ad_creatives | 在限定范围的扫描中,列出关联到账户自有广告和 Performance Max 素材组的图像素材。 |
bing_get_reporting_schema | 读取固定的报告类型以及每种类型支持的原生列。 |
bing_get_write_schema | 在创建或更新实体之前读取其固定的原生字段。 |
bing_get_setup_guide | 读取此服务的覆盖范围、安全规则和已知限制。 |
bing_get_insights | 为所选账户提交异步报告并返回回执。 |
bing_get_report | 轮询并下载已提交的报告,最多 2,000 行。 |
23 个写入工具
默认禁用。除非明确确认,否则调用只会预览。使用前请检查配置和确切的架构。
| 工具 | 用途 |
|---|---|
bing_create_campaign | 使用原生字段创建广告系列,状态为“已暂停”。 |
bing_update_campaign | 使用原生字段更新广告系列。 |
bing_create_ad_group | 在自有广告系列中创建广告组,状态为“已暂停”。 |
bing_update_ad_group | 使用原生字段更新广告组。 |
bing_create_ad | 在自有广告组中创建广告,状态为“已暂停”。 |
bing_update_ad | 使用原生字段更新广告。 |
bing_create_keyword | 在自有广告组中创建关键字,状态为“已暂停”。 |
bing_update_keyword | 使用原生字段更新关键字。 |
bing_create_audience | 创建账户级受众。 |
bing_update_audience | 更新账户拥有的受众。 |
bing_rename_campaign | 重命名广告系列。只有名称会更改。 |
bing_rename_ad_group | 重命名广告组。只有名称会更改。 |
bing_rename_account | 通过完整账户更新重命名所选账户,并保留其他所有字段。 |
bing_import_video | 从 Microsoft 获取的公开 HTTPS 文件导入视频。 |
bing_update_video | 更新账户拥有的视频说明。 |
bing_upload_image | 将图像字节上传到账户的媒体库。 |
bing_create_asset_group | 创建 Performance Max 资源组,状态为“已暂停”。 |
bing_create_uet_tag | 创建 UET 标记配置。 |
bing_create_conversion_goal | 创建转化目标,状态为“已暂停”且不参与出价。 |
bing_add_campaign_targeting | 添加一项广告系列定向条件。 |
bing_update_campaign_targeting | 更新一项广告系列定向条件。 |
bing_add_ad_group_targeting | 添加一项广告组定向条件。 |
bing_update_ad_group_targeting | 更新一项广告组定向条件。 |
1 个资源
| 资源 | 用途 |
|---|---|
bing-ads://guide | 覆盖范围、账户规则、安全规则、报告行为和已知限制,格式为 JSON。 |
许可证
更多 getmcpads 项目
Meta Ads · Google Ads · Google Analytics 4 · Google Search Console · TikTok Ads · Pinterest Ads · X Ads
由 getmcpads 的 Emmanuel 维护。问题请联系:[email protected]。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。
