
Bing Ads
io.github.mharnett由 GitHub 帳號 mharnett 發布v1.0.2更新於 Oct 24, 2026
MCP server for Microsoft Advertising (Bing Ads) — campaigns, keywords, and reports
概覽
針對 Microsoft Advertising(Bing Ads)的在地 MCP 伺服器,讓助理列出廣告活動、廣告群組與關鍵字、取得成效報表,並可選擇修改預算或暫停關鍵字。
- 可以做什麼
- 列出廣告活動與廣告群組,並透過工作目錄脈絡呼叫辨識帳戶。依日期範圍讀取廣告活動成效指標,例如 ROI、轉換、點擊率與單次點擊費用。分析關鍵字成效,包含品質分數、預期點擊率、廣告關聯性與到達網頁體驗。報告觸發廣告的搜尋詞,並列出共用排除關鍵字清單。啟用寫入模式後,可暫停關鍵字、更新廣告活動每日預算與新增共用排除關鍵字。
- 適用情境
- 適合付費搜尋從業人員讓助理檢視 Bing/Microsoft Ads 的廣告活動與關鍵字表現、診斷品質分數,並在對話中做小幅預算或關鍵字調整。
- 執行需求
- 以 npm 套件(mcp-bing-ads)在本機 Node.js 上執行,僅限桌面端。需要註冊 Azure AD 應用程式並授予 Microsoft Advertising API 權限,並設定環境變數 BING_ADS_CLIENT_ID、BING_ADS_DEVELOPER_TOKEN 與 BING_ADS_REFRESH_TOKEN;機密用戶端可選用 BING_ADS_CLIENT_SECRET。README 另提到需要含客戶與帳戶 ID 的 config.json。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 Bing Ads,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
Bing Ads MCP Server
[npm version] [npm downloads] [GitHub stars] [License: MIT]
Production-grade MCP server for Microsoft Advertising (Bing Ads) API. Enables Claude to manage Bing/Microsoft Ads accounts with full campaign, ad group, keyword, and performance analysis capabilities.
Features:
- 10 tools -- production-tested
- Campaign, ad group, and keyword management
- Keyword performance analysis with quality scores
- Search term reporting & bid automation
- Budget & bid strategy optimization
- Campaign-level budget updates
- Negative keyword management (shared + campaign-level)
Note: ⚠️ First open-source Bing Ads MCP with comprehensive tooling
- No serious alternatives exist in the ecosystem
- Battle-tested across multiple accounts
Installation
Configuration
Security: Never share your .mcp.json file or commit it to git -- it may contain API credentials. Add .mcp.json to your .gitignore.
-
Get OAuth credentials:
- Go to Microsoft Azure Portal
- Create an Azure AD app registration
- Grant API permissions:
Microsoft Advertising API - Scopes:
https://ads.microsoft.com/msads.manage offline_access
-
Create
config.json: -
Fill in your credentials:
-
Set environment variables (recommended):
Environment Variables
Read-only by default
Mutating tools (bing_ads_pause_keywords, bing_ads_update_campaign_budget, bing_ads_add_shared_negatives) are hidden from the tool list and refused at call time unless BING_ADS_MCP_WRITE=true is set in the server environment. This is a safety gate against casual write actions -- for example, pausing a keyword or editing a budget based on a throwaway chat message. To make write changes, set the env var explicitly in your .mcp.json or shell profile for the session that needs it, then unset it afterwards. Read tools (list/report/performance) are always available.
Usage
Start the server
Use with Claude Code
Add to ~/.claude.json:
Claude Desktop: Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows).
Example API Calls
API Reference
Context
bing_ads_get_client_context(working_directory)-- Detect account from working directory
Campaigns
bing_ads_list_campaigns()-- List all campaignsbing_ads_get_campaign_performance(start_date, end_date)-- Campaign metricsbing_ads_update_campaign_budget(campaign_id, daily_budget)-- Update daily spend
Ad Groups
bing_ads_list_ad_groups(campaign_id)-- List ad groups in campaign
Keywords
bing_ads_keyword_performance(start_date, end_date, [campaign_ids])-- Keyword metrics & QSbing_ads_search_term_report(start_date, end_date)-- Search terms that triggered adsbing_ads_pause_keywords(ad_group_id, keyword_ids)-- Pause keywords
Negative Keywords
bing_ads_list_shared_entities([type])-- List shared negative listsbing_ads_add_shared_negatives(list_id, keywords)-- Add to shared list
Performance Reports
- Campaign performance (ROI, conversions, CTR, CPC)
- Keyword performance (QS, expected CTR, ad relevance, landing page experience)
- Search term insights (which queries are converting)
Key Metrics & Definitions
Quality Score (QS): 1-10 rating of keyword quality
- 1-3: Poor
- 4-6: Average
- 7-10: Excellent
Expected CTR: 1-9 rating of expected click-through rate Ad Relevance: 1-9 rating of relevance to search query Landing Page Experience: 1-9 rating of landing page quality
CLI Tools
Architecture
Files:
src/index.ts— MCP server, OAuth flow, tool handlerssrc/tools.ts— Tool schema definitionssrc/errors.ts— Error handling & classificationconfig.json— Credentials & client mapping
Error Classification:
- Authentication errors (token expired)
- Rate limit errors (retry with backoff)
- Service errors (API temporarily unavailable)
- Validation errors (bad input)
Development
Adding a New Tool
- Define schema in
src/tools.ts - Add handler in
src/index.tstool dispatch - Add contract test in
.contract.test.ts - Test with
npm test
Testing
Troubleshooting
Config file not found
Missing required credentials
Check that:
BING_ADS_DEVELOPER_TOKEN,BING_ADS_CLIENT_ID, andBING_ADS_REFRESH_TOKENare setBING_ADS_CLIENT_SECRETis set (if using a confidential app)- OAuth token is valid (expires, may need refresh)
Rate limit exceeded
Bing Ads applies rate limits. The server handles common retries automatically. If you hit limits frequently:
- Batch operations when possible
- Reduce query frequency
- Wait before retrying
Quality Score is 0
QS = 0 means keyword hasn't been shown enough times yet. Increase impressions or wait for more data.
License
MIT
Contributing
Contributions welcome! Please:
- Add tests for new features
- Update README
- Follow existing code style
- Tag releases
Support
- Issues: GitHub issues for bugs/feature requests
- Docs: See
docs/folder for detailed API reference - Community: GitHub Discussions
Built By
Mark Harnett — Demand generation leader and paid media practitioner building AI-powered ad management tools. This is the first comprehensive open-source Bing Ads MCP server — born from managing real campaigns across multiple accounts and wanting Claude to do the heavy lifting.
Built with production workloads in mind: resilient API calls (circuit breakers, retry with backoff, response truncation), full Quality Score diagnostics, and negative keyword management at scale.
Also by Mark: mcp-linkedin-ads -- LinkedIn Ads MCP server with 7 tools.
Last Updated: 2026-03-13
來源:README.md,提交 9b9be61
工具
0版本歷史
1- v1.0.2最新Sep 16, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分