Add Ad Extensions
Create ad extensions in an account
Let your AI agents run Microsoft Ads for you, safely.
A hosted Microsoft Ads MCP server for Claude, ChatGPT, Cursor and CLI agents. Paste one server URL into your AI client to use its 88 actions. There is nothing to install.
Enable or disable every action, per account. Block your agent from doing dangerous actions.
Ask in plain English. Create campaigns, pull reports, find insights and take action in Microsoft Ads.
88 read and write actions. Every Microsoft Ads task your agent needs, from reporting to campaign management.
Built for teams. Invite your team and share one connected account.
88 actions available to automate your Microsoft Ads workflows.
88 actions
Create ad extensions in an account
Add targeting criteria to ad groups (location, device, demographics, audience, etc.)
Create new ad groups in a campaign
Create new ads in an ad group
Create asset groups for Performance Max campaigns
Create audience groups for targeting
Create audience lists (remarketing, customer match, etc.)
Create portfolio bid strategies
Create new shared budgets in an account
Associate conversion goals with campaigns
Add targeting criteria to campaigns (location, device, demographics, etc.)
Create new campaigns in an account
Create conversion goals for tracking
Create conversion value rules for adjusting conversion values
Create data exclusions to exclude time periods from bid strategy learning
Create campaign experiments for A/B testing
Create new keywords in an ad group
Create new labels in an account
Add negative keywords to an existing shared list
Add negative keywords to campaigns or ad groups
Create seasonality adjustments to inform bid strategies of expected conversion rate changes
Create a shared negative keyword list
Create Universal Event Tracking tags for conversion tracking
Add or remove items from a customer list audience
Apply add/update/delete actions to hotel group nodes
Adjust previously submitted offline conversions
Submit offline conversion data
Apply add/update/delete actions to product partition nodes in a Shopping campaign
Delete keywords from an ad group
Get ad extension associations for specific entities
Get ad extensions for an account by type
Get targeting criteria for an ad group
Get ad groups for a campaign
Get ads for an ad group
Get asset groups for a Performance Max campaign
Get audience lists for an account
Get portfolio bid strategies for an account
Get shared budgets for an account
Get targeting criteria for a campaign
Get campaigns for an account
Get conversion goals for an account
Get campaign experiments for an account
Get keywords for an ad group
Get label associations for specific entities
Get labels for an account
Get negative keywords associated with campaigns or ad groups
Get shared negative keyword lists for an account
Get associations between shared entities and campaigns
Get items (negative keywords) in a shared list
Get Universal Event Tracking tags for an account
Poll for report generation status and fetch data when ready
Search for advertising accounts the user has access to
Set account-level properties (auto-tagging, tracking templates, etc.)
Associate ad extensions with campaigns or ad groups
Associate labels with campaigns, ad groups, ads, or keywords
Set negative site URLs for ad groups (replaces existing)
Set negative site URLs for campaigns (replaces existing)
Associate shared negative keyword lists with campaigns
Submit an account performance report request
Submit an ad group performance report request
Submit an ad performance report request
Submit an age and gender audience report request
Submit an audience performance report request
Submit a campaign performance report request
Submit a geographic performance report request
Submit a goals and funnels report request
Submit a keyword performance report request
Submit a search query performance report request
Submit a user location performance report request
Update existing ad extensions
Update targeting criteria on ad groups
Update existing ad groups
Update existing ads
Update existing asset groups
Update existing audience groups
Update existing audience lists
Update existing portfolio bid strategies
Update existing shared budgets
Update targeting criteria on campaigns
Update existing campaigns
Update existing conversion goals
Update existing conversion value rules
Update existing data exclusions
Update existing experiments
Update existing keywords
Update existing labels
Update existing seasonality adjustments
Update existing UET tags
Microsoft offers its own Microsoft Advertising MCP Server. It is a good fit if you are comfortable registering an Azure app and mainly want to explore data and run audits. InsightfulPipe is a hosted alternative for teams that want write actions, quick setup in any AI client and account-level controls.
| What you operate | InsightfulPipe MCP server | Microsoft Advertising MCP Server (Microsoft) |
|---|---|---|
| Hosting | Hosted by InsightfulPipe: paste one URL | Hosted by Microsoft; the documented server URL uses an OpenBeta tool set |
| Setup | Sign in with Microsoft and choose accounts | Register your own Azure AD app with the Azure CLI, then add its client ID and OAuth settings to your AI client |
| Documented clients | Claude, ChatGPT, Claude Code, Cursor, Gemini CLI and Codex, plus a CLI | Copilot Studio, GitHub Copilot in VS Code, ChatGPT and Claude |
| What it does | 88 actions: 11 report types plus campaign, ad group, ad, keyword, audience, extension and conversion changes | Microsoft describes exploring account data, performance metrics and campaign audits |
| Safety controls | Per-account action controls, Read-only connections, keyword deletion off by default, new campaigns paused | Not described on the Microsoft pages we reviewed |
| Other platforms | Google Ads, Meta Ads, GA4 and 40+ more MCP servers | Microsoft Advertising only |
| Price | Included in plans from $29.99/month, with a 7-day free trial | Free to connect, according to Microsoft |
The InsightfulPipe Microsoft Ads MCP server is a hosted Model Context Protocol server that connects your Microsoft Advertising accounts to AI assistants such as Claude, ChatGPT, Cursor, Claude Code, Gemini CLI and Codex. You sign in with Microsoft, choose the accounts to connect and paste one server URL into your AI client.
Get campaign, ad group, ad and keyword performance in plain English. The assistant submits the report, waits for it and summarizes the results.
See all Microsoft Ads actionsReview the search query report, find terms that spend without converting and add them as negative keywords or to a shared negative list.
See all Microsoft Ads actionsCheck campaigns, budgets, bid strategies, ad extensions, conversion goals and UET tags across one or many accounts.
See all Microsoft Ads actionsAdd the server URL to your AI client, then sign in with your InsightfulPipe account to authorize access. The server is hosted, so there is nothing to install.
https://microsoft-ads.insightfulmcp.com/Fastest: add InsightfulPipe from the Claude Directory
One click connects the full InsightfulPipe MCP with all your connected accounts. To add a server scoped to Microsoft Ads only, follow the steps below.
Or add the Microsoft Ads server manually:
https://microsoft-ads.insightfulmcp.com/
Start a new chat, click +, open Connectors and turn the connector on to use it.
The Free plan can add one custom connector. On Team and Enterprise plans, an Owner first adds it under Organization settings > Connectors, then each member clicks Connect in Customize > Connectors.
Fastest: add InsightfulPipe from the ChatGPT app directory
One click connects the full InsightfulPipe MCP with all your connected accounts. To add a server scoped to Microsoft Ads only, follow the steps below.
Or add the Microsoft Ads server manually. Custom MCP servers need ChatGPT's Developer mode, which OpenAI offers on Plus, Pro, Business, Enterprise and Education accounts on the web.
https://microsoft-ads.insightfulmcp.com/
See OpenAI's Developer mode guide.
claude mcp add --transport http microsoft-ads-mcp https://microsoft-ads.insightfulmcp.com/
/mcp, select microsoft-ads-mcp and choose Authenticate.~/.cursor/mcp.json (all projects) or .cursor/mcp.json (one project):{
"mcpServers": {
"microsoft-ads-mcp": {
"url": "https://microsoft-ads.insightfulmcp.com/"
}
}
}gemini mcp add --transport http microsoft-ads-mcp https://microsoft-ads.insightfulmcp.com/
/mcp auth microsoft-ads-mcp.Using the Codex app? Add InsightfulPipe from the OpenAI app directory
The listed app connects the full InsightfulPipe MCP with all your connected accounts, in both ChatGPT and Codex.
codex mcp add microsoft-ads-mcp --url https://microsoft-ads.insightfulmcp.com/
codex mcp login microsoft-ads-mcp.One hosted server URL, any MCP-compatible client. Pick yours to see the setup steps, or paste the URL into anything that speaks MCP.
Setup guide for ChatGPT
Setup guide for Claude
Setup guide for Claude Code
Setup guide for Codex
Setup guide for Cursor
Setup guide for Gemini CLI
Paste the server URL to connect
Paste the server URL to connect
Paste the server URL to connect
Paste the server URL to connect
Paste the server URL to connect
Paste the server URL to connect
Paste the server URL to connect
Paste the server URL to connect
Paste the server URL to connect
Paste the server URL to connect
Paste the server URL to connect
Paste the server URL to connect
Paste the server URL to connect
Run actions from your terminal
Copy a prompt into any connected client, or install a Claude skill that chains the actions for you.
“Show clicks, spend and conversions by campaign for the last 30 days”
Runs a campaign performance report
Claude skill that splits ad budget across Google, Meta, TikTok, LinkedIn and Microsoft Ads using marginal returns, constraints and scenarios.
“Which search terms cost more than $30 last month without a conversion?”
Finds negative keyword candidates from the search query report
“Which keywords have a quality score below 5?”
Checks keyword quality from the keyword report
“Compare conversions by age and gender for my Brand campaign”
Uses the age and gender audience report
“Add these 15 negative keywords to the Generic campaign”
Applies negatives in one step
“Create a paused Search campaign with a $40 daily budget and two ad groups”
Builds the campaign paused for review
“List the conversion goals and UET tags in each of my accounts”
Audits conversion tracking setup across accounts
Join hundreds of agencies and brands using InsightfulPipe to connect marketing data to AI.
Start a free trial today.