Bing Ads MCP Server
by mharnettio.github.mharnett/bing-adsv1.0.2
MCP server for Microsoft Advertising (Bing Ads) — campaigns, keywords, and reports
context tax
queued
security
queued
cold start
queued
freshness
Active31d ago
Install Bing Ads MCP server
Install in Claude Code
claude mcp add bing-ads -e BING_ADS_DEVELOPER_TOKEN='<bing-ads-developer-token>' -e BING_ADS_CLIENT_ID='<bing-ads-client-id>' -e BING_ADS_REFRESH_TOKEN='<bing-ads-refresh-token>' -e BING_ADS_CLIENT_SECRET='<bing-ads-client-secret>' -- npx -y mcp-bing-adsInstall in Cursor
{
"mcpServers": {
"bing-ads": {
"command": "npx",
"args": [
"-y",
"mcp-bing-ads"
],
"env": {
"BING_ADS_DEVELOPER_TOKEN": "<bing-ads-developer-token>",
"BING_ADS_CLIENT_ID": "<bing-ads-client-id>",
"BING_ADS_REFRESH_TOKEN": "<bing-ads-refresh-token>",
"BING_ADS_CLIENT_SECRET": "<bing-ads-client-secret>"
}
}
}
}Add to ~/.cursor/mcp.json (global) or .cursor/mcp.json (project).
Install in Claude Desktop
{
"mcpServers": {
"bing-ads": {
"command": "npx",
"args": [
"-y",
"mcp-bing-ads"
],
"env": {
"BING_ADS_DEVELOPER_TOKEN": "<bing-ads-developer-token>",
"BING_ADS_CLIENT_ID": "<bing-ads-client-id>",
"BING_ADS_REFRESH_TOKEN": "<bing-ads-refresh-token>",
"BING_ADS_CLIENT_SECRET": "<bing-ads-client-secret>"
}
}
}
}Settings → Developer → Edit Config (claude_desktop_config.json), then restart.
Install in VS Code
{
"servers": {
"bing-ads": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"mcp-bing-ads"
],
"env": {
"BING_ADS_DEVELOPER_TOKEN": "<bing-ads-developer-token>",
"BING_ADS_CLIENT_ID": "<bing-ads-client-id>",
"BING_ADS_REFRESH_TOKEN": "<bing-ads-refresh-token>",
"BING_ADS_CLIENT_SECRET": "<bing-ads-client-secret>"
}
}
}
}Add to .vscode/mcp.json in your workspace.
Install in Windsurf
{
"mcpServers": {
"bing-ads": {
"command": "npx",
"args": [
"-y",
"mcp-bing-ads"
],
"env": {
"BING_ADS_DEVELOPER_TOKEN": "<bing-ads-developer-token>",
"BING_ADS_CLIENT_ID": "<bing-ads-client-id>",
"BING_ADS_REFRESH_TOKEN": "<bing-ads-refresh-token>",
"BING_ADS_CLIENT_SECRET": "<bing-ads-client-secret>"
}
}
}
}Add to ~/.codeium/windsurf/mcp_config.json.
Configuration
| Variable | Required | Secret | Description |
|---|---|---|---|
| BING_ADS_DEVELOPER_TOKEN | yes | yes | Microsoft Advertising developer token |
| BING_ADS_CLIENT_ID | yes | — | Azure AD app client ID for OAuth |
| BING_ADS_REFRESH_TOKEN | yes | yes | OAuth refresh token for Microsoft Advertising API |
| BING_ADS_CLIENT_SECRET | — | yes | Azure AD app client secret (optional for public clients) |
Freshness
Active — last maintenance signal 31d ago. The newest of the signals below sets the band.
Last commit (default branch)
2026-09-09 · 31d ago · GitHub
Latest release
2026-09-09 · 31d ago · GitHub · mcp-bing-ads-v1.3.0
Package published
no data · npm/PyPI
Registry entry updated
2026-03-13 · 7mo ago · official registry · v1.0.2
FAQ
›How do I install the Bing Ads MCP server in Claude Code?
Run: claude mcp add bing-ads -e BING_ADS_DEVELOPER_TOKEN='<bing-ads-developer-token>' -e BING_ADS_CLIENT_ID='<bing-ads-client-id>' -e BING_ADS_REFRESH_TOKEN='<bing-ads-refresh-token>' -e BING_ADS_CLIENT_SECRET='<bing-ads-client-secret>' -- npx -y mcp-bing-ads. For Cursor, VS Code, Claude Desktop and Windsurf, use the install tabs above.
›Does Bing Ads require an API key?
Yes. It expects BING_ADS_DEVELOPER_TOKEN, BING_ADS_CLIENT_ID, BING_ADS_REFRESH_TOKEN, BING_ADS_CLIENT_SECRET, of which 3 are secrets.
›Can I use Bing Ads as a remote (hosted) MCP server?
No hosted endpoint is published; it runs locally over stdio.
›Is Bing Ads in the official MCP registry?
Yes, as io.github.mharnett/bing-ads.
Alternatives to Bing Ads
Other web search MCP servers.