通过 MCP 服务器创建和管理 Microsoft Advertising 广告系列(Bing Ads / DuckDuckGo Ads),包括广告系列、广告组、关键词、广告和报告
微软 Ads MCP 服务器. 程序创建和管理微软广告活动. 这个MCP服务器可以对Bing和DuckDuckGo搜索广告进行完全的竞选管理.是一项面向实际任务的技能,主要用于Why Microsoft A.。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。
执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
以编程方式创建和管理 Microsoft Advertising 广告系列。该 MCP Server 支持对 Bing 和 DuckDuckGo 搜索广告的完整广告系列管理。
git clone https://github.com/Duartemartins/microsoft-ads-mcp-server.git
cd microsoft-ads-mcp-server
pip install -r requirements.txt
https://login.microsoftonline.com/common/oauth2/nativeclient向 ~/.mcporter/mcporter.json 中添加以下内容:
{
"mcpServers": {
"microsoft-ads": {
"command": "python3",
"args": ["/path/to/microsoft-ads-mcp-server/server.py"],
"type": "stdio",
"env": {
"MICROSOFT_ADS_DEVELOPER_TOKEN": "your_token",
"MICROSOFT_ADS_CLIENT_ID": "your_azure_app_client_id"
}
}
}
}
mcporter call microsoft-ads.get_auth_url
# 在浏览器中打开返回的 URL,登录后复制重定向地址
mcporter call microsoft-ads.complete_auth '{"redirect_url": "https://login.microsoftonline.com/common/oauth2/nativeclient?code=..."}'
mcporter call microsoft-ads.search_accounts
# 列出广告系列
mcporter call microsoft-ads.get_campaigns
# 创建广告系列(默认暂停,确保安全)
mcporter call microsoft-ads.create_campaign '{"name": "My Campaign", "daily_budget": 20}'
# 启用或暂停广告系列
mcporter call microsoft-ads.update_campaign_status '{"campaign_id": 123456, "status": "Active"}'
# 列出广告组
mcporter call microsoft-ads.get_ad_groups '{"campaign_id": 123456}'
# 创建广告组
mcporter call microsoft-ads.create_ad_group '{"campaign_id": 123456, "name": "Product Keywords", "cpc_bid": 1.50}'
# 列出关键词
mcporter call microsoft-ads.get_keywords '{"ad_group_id": 789012}'
# 添加关键词(支持广泛匹配、短语匹配或完全匹配)
mcporter call microsoft-ads.add_keywords '{"ad_group_id": 789012, "keywords": "buy widgets, widget store", "match_type": "Phrase", "default_bid": 1.25}'
# 列出广告
mcporter call microsoft-ads.get_ads '{"ad_group_id": 789012}'
# 创建响应式搜索广告(Responsive Search Ad)
mcporter call microsoft-ads.create_responsive_search_ad '{
"ad_group_id": 789012,
"final_url": "https://example.com/widgets",
"headlines": "Buy Widgets Online|Best Widget Store|Free Shipping",
"descriptions": "Shop our selection. Free shipping over $50.|Quality widgets at great prices."
}'
# 提交报表请求
mcporter call microsoft-ads.submit_campaign_performance_report '{"date_range": "LastWeek"}'
mcporter call microsoft-ads.submit_keyword_performance_report '{"date_range": "LastMonth"}'
mcporter call microsoft-ads.submit_search_query_report '{"date_range": "LastWeek"}'
mcporter call microsoft-ads.submit_geographic_report '{"date_range": "LastMonth"}'
# 查询报表状态并获取下载链接
mcporter call microsoft-ads.poll_report_status
mcporter call microsoft-ads.get_budgets
mcporter call microsoft-ads.get_labels
# 1. 检查账户
mcporter call microsoft-ads.search_accounts
# 2. 创建广告系列
mcporter call microsoft-ads.create_campaign '{"name": "PopaDex - DDG Search", "daily_budget": 15}'
# 返回:广告系列 ID 123456
# 3. 创建广告组
mcporter call microsoft-ads.create_ad_group '{"campaign_id": 123456, "name": "Privacy Keywords", "cpc_bid": 0.75}'
# 返回:广告组 ID 789012
# 4. 添加关键词
mcporter call microsoft-ads.add_keywords '{
"ad_group_id": 789012,
"keywords": "privacy search engine, private browsing, anonymous search",
"match_type": "Phrase",
"default_bid": 0.60
}'
# 5. 创建广告
mcporter call microsoft-ads.create_responsive_search_ad '{
"ad_group_id": 789012,
"final_url": "https://popadex.com",
"headlines": "PopaDex Private Search|Search Without Tracking|Privacy-First Search Engine",
"descriptions": "Search the web without being tracked. No ads, no profiling.|Your searches stay private. Try PopaDex today."
}'
# 6. 启用广告系列
mcporter call microsoft-ads.update_campaign_status '{"campaign_id": 123456, "status": "Active"}'
# 7. 数日后查看效果
mcporter call microsoft-ads.submit_campaign_performance_report '{"date_range": "LastWeek"}'
mcporter call microsoft-ads.poll_report_status
| 类型 | 语法 | 触发条件 |
|---|---|---|
| 广泛匹配(Broad) | keyword |
相关搜索词、同义词等 |
| 短语匹配(Phrase) | "keyword" |
搜索词中按顺序包含该短语 |
| 完全匹配(Exact) | [keyword] |
仅完全匹配该关键词时触发 |
广告系列报表(Campaign Reports):CampaignName(广告系列名称)、Impressions(展现量)、Clicks(点击量)、Ctr(点击率)、AverageCpc(平均每次点击费用)、Spend(花费)、Conversions(转化次数)、Revenue(收入)
关键词报表(Keyword Reports):Keyword(关键词)、AdGroupName(广告组名称)、CampaignName(广告系列名称)、Impressions(展现量)、Clicks(点击量)、Ctr(点击率)、AverageCpc(平均每次点击费用)、Spend(花费)、Conversions(转化次数)、QualityScore(质量得分)
搜索词报表(Search Query Reports):SearchQuery(搜索词)、Keyword(关键词)、CampaignName(广告系列名称)、Impressions(展现量)、Clicks(点击量)、Spend(花费)、Conversions(转化次数)
地域报表(Geographic Reports):Country(国家)、State(州/省)、City(城市)、CampaignName(广告系列名称)、Impressions(展现量)、Clicks(点击量)、Spend(花费)、Conversions(转化次数)
MCP Server 项目地址:github.com/Duartemartins/microsoft-ads-mcp-server
基于 FastMCP 与 Bing Ads Python SDK 构建