Microsoft Ads MCP server

Your Microsoft Ads.
In your AI agent.

Use your AI agent to work with Microsoft Advertising, including campaigns commonly searched for as Bing Ads. Pull reports, inspect delivery, and prepare changes with an explicit approval step.

View on GitHub

Available locally with npm. Set up Microsoft Ads

Built for this platform

What you can do with Microsoft Ads MCP

01

Turn reports into a conversation

Request campaign performance without manually handling report downloads. Adport manages Microsoft’s asynchronous report flow and returns normalized results.

02

Compare search accounts

Inspect campaign spend and available conversion metrics alongside another connected search provider. Keep currencies and attribution settings separate when interpreting differences.

03

Review status and daily budgets

Preview campaign activation, pausing, or budget adjustments. Protected-account and budget-cap policies apply before an operation can be executed.

Know what the data means

Microsoft Advertising reports can take time to generate. OAuth connectivity does not prove billing eligibility, advertiser verification, or permissions for every requested operation.

Local setup · Bring your own credentials

Prefer local setup for Microsoft Ads?

The npm CLI and MCP server run on your machine. You need Node.js 22.13 or newer, your own provider credentials, and permission to access the ad account.

01 Install Adport

npm install -g adport

02 Connect Microsoft Ads

adport connect microsoft

The wizard selects sandbox or production and opens a PKCE sign-in flow. Rotated refresh tokens are persisted in the local credential store.

03 Check your connection

adport doctor
adport accounts --provider microsoft

Check that the intended account appears before asking your agent to report on it. Never paste tokens, client secrets, or private keys into chat.

Register a local stdio client

For Claude Code:

claude mcp add --transport stdio adport -- adport mcp

For Cursor, merge this entry into your MCP configuration:

{
  "mcpServers": {
    "adport": {
      "command": "adport",
      "args": [
        "mcp"
      ]
    }
  }
}

ChatGPT uses an HTTP MCP endpoint instead of launching this local process.

Your tools. Your choice.

Use Microsoft Ads from your agent.

Use the same Adport MCP endpoint and OAuth sign-in in each client. First connect your ad accounts in your Adport workspace. No platform secrets belong in chat.

Use Microsoft Ads in ChatGPT

Enable developer mode, then open Settings → Apps → Create. Choose OAuth and use the endpoint below.

https://app.adport.dev/mcp

Scan the tools, finish Adport authorization, and enable the new app in your chat.

Developer mode and custom apps must be enabled for your ChatGPT account or workspace. In newer layouts, enable Developer mode under Settings → Security and login, then use the + button in Plugins to create your app. ChatGPT connects over HTTP; the local stdio command is for clients that can launch a process.

ChatGPT developer-mode documentation

Use Microsoft Ads in Codex

Run this command once and complete the browser authorization. Codex stores the MCP configuration and starts OAuth automatically.

codex mcp add adport --url https://app.adport.dev/mcp

Only if authorization did not start or you need to sign in again, run “codex mcp login adport”. Otherwise, check “codex mcp list” and ask Codex to list your ad accounts.

Use Microsoft Ads in Claude Code

Add Adport at user scope so it is available across your local projects.

claude mcp add --transport http --scope user adport https://app.adport.dev/mcp

Run /mcp inside Claude Code if the browser authorization does not open automatically.

Use Microsoft Ads in Claude

Open Customize → Connectors → Add custom connector. Name it Adport and use the endpoint below.

https://app.adport.dev/mcp

Select Connect, approve the workspace, then enable Adport from the + menu in a conversation.

Use Microsoft Ads in Cursor

Add this server to ~/.cursor/mcp.json, then restart Cursor.

{
  "mcpServers": {
    "adport": {
      "url": "https://app.adport.dev/mcp"
    }
  }
}

Approve the browser sign-in when prompted. Cursor will keep the OAuth session refreshed.

Use Microsoft Ads in VS Code

Open the Command Palette and choose “MCP: Open User Configuration”, then add this server.

{
  "servers": {
    "adport": {
      "type": "http",
      "url": "https://app.adport.dev/mcp"
    }
  }
}

Start the Adport server from VS Code and complete the browser authorization.

Use the MCP URL from Agent access if you run your own Adport deployment. Client settings, workspace permissions, and advertising-platform approvals still apply. The Cloud waitlist below is separate from these connection instructions.

You stay in control

A suggestion is not a live change.

The first mutation call returns a preview and a short-lived pending-operation token. Applying requires that token and the same arguments. Budget caps and protected accounts are checked by the policy engine; new campaigns are paused by policy.

Local operations are recorded in an append-only audit log. An approved preview is not a guarantee of provider acceptance, and a connected agent does not grant additional account permissions.

Microsoft Ads MCP questions

Is Bing Ads supported by this Microsoft MCP?

Yes. Bing Ads is the former name many advertisers still use for Microsoft Advertising. Connect with the microsoft provider command, not a separate bing provider.

Can I use Microsoft Ads locally without Adport Cloud?

Yes. Install Adport from npm, connect your own Microsoft Ads credentials, and register the local MCP server with a stdio-compatible agent such as Claude Code or Cursor. Your provider may have its own approval, access, or billing requirements.

Why can I connect an account but not read a report or apply a change?

Account discovery, reporting, and mutations can require different permissions. Check the requested account, provider app scopes, advertiser eligibility, and environment. Start with adport doctor and the connection guide above. Do not bypass a denied operation by sharing secrets with the agent.

Adport Cloud · Coming next

Your ads. One workspace.

Join the waitlist for the cloud version. We’ll email you when early access opens.

By joining, you agree to receive an early-access email. No newsletter. Privacy