# How to integrate Microsoft Advertising MCP with Atomic Agent

```json
{
  "title": "How to integrate Microsoft Advertising MCP with Atomic Agent",
  "toolkit": "Microsoft Advertising",
  "toolkit_slug": "microsoft_advertising",
  "framework": "Atomic Agent",
  "framework_slug": "atomic-agent",
  "url": "https://composio.dev/toolkits/microsoft_advertising/framework/atomic-agent",
  "markdown_url": "https://composio.dev/toolkits/microsoft_advertising/framework/atomic-agent.md",
  "updated_at": "2026-10-24T05:34:10.152Z"
}
```

## Introduction

Atomic Agent is an open-source AI agent that runs on your machine and supports local models through llama.cpp. Connect it to 1,500+ apps through Composio, including Microsoft Advertising.
This guide uses Atomic Agent's built-in Composio integration. You need Atomic Agent v0.5.6 or later, your own Composio API key, and a Microsoft Advertising account. See the [Atomic Agent documentation](https://atomicagent.io/docs/?cta_placement=atomic-agent-docs) for installation instructions.

## Also integrate Microsoft Advertising with

- [ChatGPT](https://composio.dev/toolkits/microsoft_advertising/framework/chatgpt)
- [Claude Cowork](https://composio.dev/toolkits/microsoft_advertising/framework/claude-cowork)
- [Hermes](https://composio.dev/toolkits/microsoft_advertising/framework/hermes-agent)

## TL;DR

### How Atomic Agent connects to Microsoft Advertising
Atomic Agent connects to Composio's Tool Router over Streamable HTTP MCP. It discovers the tools needed for your request, and Composio handles account authentication.
Execution and account-connection tools follow Atomic Agent's configured approval policy. Review any approval prompt before allowing an action on your connected account.

## Connect Microsoft Advertising to Atomic Agent

### Connect Microsoft Advertising to Atomic Agent
- Sign up or sign in to the [Composio dashboard](https://dashboard.composio.dev/?cta_placement=atomic-agent-api-key). Copy your API key.
- In Atomic Agent, open the Integrations tab and select Composio. Select API key, press e, paste the key, and press Enter. The tools become available immediately, without a restart.
- Ask Atomic Agent to do something in Microsoft Advertising. It searches Composio for the right tool.
- On first use, open the sign-in link returned in the chat. Connect your Microsoft Advertising account, then return to Atomic Agent to continue.
### Headless setup
Add the following line to ~/.atomic-agent/.env, replacing YOUR_COMPOSIO_API_KEY with your key. Start Atomic Agent after saving the file.

```bash
COMPOSIO_API_KEY=YOUR_COMPOSIO_API_KEY
```

## What is the Microsoft Advertising MCP server, and what's possible with it?

The Microsoft Advertising MCP server is an implementation of the Model Context Protocol that connects your AI agent and assistants like Claude, Cursor, etc directly to your Microsoft Advertising account. It provides structured and secure access to your customers, advertiser accounts, campaigns, ad groups, and performance reports, so your agent can find accounts, create campaigns and ad groups, update or activate advertising assets, and request performance reports on your behalf.
- Account and customer discovery: Have your agent list accessible customers and advertiser accounts, then identify the accounts available for campaign work.
- Campaign management: Instruct your agent to list, create, update, activate, or delete search campaigns in a Microsoft Advertising account.
- Ad group management: Let the agent list, create, update, activate, or delete search ad groups within a campaign.
- Performance reporting: Direct your agent to request an account performance report and check an existing report request.
- Advertising user access: Have your agent retrieve the connected Microsoft Advertising user and review accessible customer and account roles.

## Supported Tools

| Tool slug | Name | Description |
|---|---|---|
| `MICROSOFT_ADVERTISING_ACTIVATE_AD_GROUPS` | Activate Ad Groups | Activate up to 1,000 ad groups in a Microsoft Advertising campaign. WARNING: Activation can immediately make eligible ads deliver and incur spend when the parent campaign, bids, targeting, and ads permit delivery. Verify the selected IDs and campaign configuration before calling. Inspect partial_errors because Microsoft can accept the request while rejecting individual activations. |
| `MICROSOFT_ADVERTISING_ACTIVATE_CAMPAIGNS` | Activate Campaigns | Activate 1 to 100 Microsoft Advertising campaigns. This can immediately make configured ads eligible for delivery and cause the account to incur ad spend. Inspect partial_errors because Microsoft can accept the request while rejecting individual campaign activations. |
| `MICROSOFT_ADVERTISING_CREATE_SEARCH_AD_GROUPS` | Create Search Ad Groups | Create up to 1,000 Search ad groups under a Microsoft Advertising campaign. Ad groups default to Paused. HTTP success can include failed items, represented by null ad_group_ids and indexed partial_errors. |
| `MICROSOFT_ADVERTISING_CREATE_SEARCH_CAMPAIGNS` | Create Search Campaigns | Create up to 100 Search campaigns with unshared budgets in a Microsoft Advertising account. Campaigns default to Paused. HTTP success can include failed items, represented by null campaign_ids and indexed partial_errors. |
| `MICROSOFT_ADVERTISING_DELETE_AD_GROUPS` | Delete Ad Groups | Permanently delete 1 to 1,000 ad groups from a Microsoft Advertising campaign. This destructive operation cannot be undone. A successful HTTP response can still contain item-level failures in partial_errors. |
| `MICROSOFT_ADVERTISING_DELETE_CAMPAIGNS` | Delete Campaigns | Permanently delete 1 to 100 campaigns from a Microsoft Advertising account. This destructive operation cannot be undone. A successful HTTP response can still contain item-level failures, which are preserved in partial_errors. |
| `MICROSOFT_ADVERTISING_GENERATE_ACCOUNT_PERFORMANCE_REPORT` | Generate Account Performance Report | Submit an account-performance report without polling, or check an existing report_request_id once. A submission returns Pending promptly; wait 2 to 15 minutes before checking that ID again until Success. Does not download the ZIP. |
| `MICROSOFT_ADVERTISING_GET_CURRENT_USER` | Get Current Advertising User | Return the connected Microsoft Advertising user and their customer/account roles; optionally look up another accessible user by ID. |
| `MICROSOFT_ADVERTISING_LIST_ACCOUNTS` | List Advertiser Accounts | Return advertiser accounts accessible under a customer, including lifecycle and pause state needed before campaign work. |
| `MICROSOFT_ADVERTISING_LIST_AD_GROUPS` | List Ad Groups | Return ad groups in a Microsoft Advertising campaign. Omit ad_group_ids to use the campaign-wide route, or supply up to 1,000 IDs to use Microsoft's ID-filtered route. ID-filtered responses preserve nullable ad-group slots and partial_errors instead of treating HTTP 200 as complete success. |
| `MICROSOFT_ADVERTISING_LIST_CAMPAIGNS` | List Campaigns | Return campaigns in a Microsoft Advertising account. Omit campaign_ids to use the account-wide route, or supply up to 100 IDs to use Microsoft's ID-filtered route. ID-filtered responses preserve nullable campaign slots and matching partial_errors instead of treating HTTP 200 as complete success. |
| `MICROSOFT_ADVERTISING_LIST_CUSTOMERS` | List Accessible Customers | Return Microsoft Advertising customers accessible to the connected user, optionally filtered by a case-insensitive name prefix. |
| `MICROSOFT_ADVERTISING_UPDATE_AD_GROUPS` | Update Ad Groups | Partially update up to 1,000 ad groups in a Microsoft Advertising campaign. Only supplied fields are sent, so omitted settings remain unchanged. This action is financially consequential: increasing a CPC bid or expanding network reach can increase spend on an active ad group. Inspect partial_errors because Microsoft can accept the request while rejecting individual ad-group patches. |
| `MICROSOFT_ADVERTISING_UPDATE_CAMPAIGNS` | Update Campaigns | Partially update up to 100 campaigns in a Microsoft Advertising account. Only supplied fields are sent, so omitted settings remain unchanged. This action is financially consequential: increasing a budget can increase spend on an active campaign. It can pause campaigns but cannot activate them; use ACTIVATE_CAMPAIGNS for activation. Inspect partial_errors because Microsoft can accept the request while rejecting individual campaign patches. |

## Supported Triggers

None listed.

## Troubleshooting

### Why is my API key rejected?

Copy the key directly from the Composio dashboard. Atomic Agent requires ASCII characters because it sends the key in an HTTP header. Remove any extra characters introduced when copying.

### Why are Composio tools unavailable after saving a key?

Check that you use Atomic Agent v0.5.6 or later and that Composio is enabled in your configuration. A "composio": { "enabled": false } setting disables the integration while keeping the saved key on disk.

### Does Composio have a free plan?

The Hobby plan includes 100,000 tool calls per month. Composio-managed OAuth apps have a lower included allowance. See [Composio pricing](/pricing) for the current limits that apply to your connection.

## Complete Code

None listed.

## Conclusion

### Use Microsoft Advertising from Atomic Agent
With your account connected, ask Atomic Agent to work with Microsoft Advertising in natural language. You can connect more apps through the same Composio integration as you need them.
Visit the [Atomic Agent website](https://atomicagent.io/?cta_placement=atomic-agent-site) or inspect the [Atomic Agent source code](https://github.com/AtomicBot-ai/atomic-agent?cta_placement=atomic-agent-repo).

## How to build Microsoft Advertising MCP Agent with another framework

- [ChatGPT](https://composio.dev/toolkits/microsoft_advertising/framework/chatgpt)
- [Claude Cowork](https://composio.dev/toolkits/microsoft_advertising/framework/claude-cowork)
- [Hermes](https://composio.dev/toolkits/microsoft_advertising/framework/hermes-agent)

## Related Toolkits

- [Metaads](https://composio.dev/toolkits/metaads) - Metaads is Meta's official Ads API that lets you manage, analyze, and optimize your Facebook and Instagram ad campaigns. Streamline ad operations and gain deeper insights with robust automation.
- [Adrapid](https://composio.dev/toolkits/adrapid) - Adrapid is a platform for rapid creation of digital marketing visuals using templates. It streamlines design workflows for banners, images, and HTML5 content with automation.
- [AdRoll](https://composio.dev/toolkits/adroll) - AdRoll is a digital marketing platform for managing advertising campaigns, audiences, and account-based marketing. It helps marketers retarget customers across channels and measure performance.
- [Adtraction](https://composio.dev/toolkits/adtraction) - Adtraction is an affiliate marketing platform for partner programs, tracking links, transactions, commissions, statistics, and payments. It helps advertisers and publishers manage performance marketing with clear reporting and payout workflows.
- [Adyntel](https://composio.dev/toolkits/adyntel) - Adyntel is an API that retrieves LinkedIn ads for any company using a domain or LinkedIn Page ID. Easily access competitive ad intelligence to power your marketing workflows.
- [Beaconstac](https://composio.dev/toolkits/beaconstac) - Beaconstac is a platform for creating and managing QR codes and proximity beacons. It helps businesses engage customers and track marketing performance with powerful analytics.
- [Bouncify](https://composio.dev/toolkits/bouncify) - Bouncify is an email verification service for single addresses and bulk lists. Use it to reduce bounces, protect sender reputation, and track verification credits.
- [Bulk Email Checker](https://composio.dev/toolkits/bulk_email_checker) - Bulk Email Checker is an email verification service for checking address validity, mailbox status, domains, and mail-server signals. It helps reduce bounces, spot risky emails, and keep outreach lists cleaner before you send.
- [Campaign cleaner](https://composio.dev/toolkits/campaign_cleaner) - Campaign cleaner is an email campaign optimization tool that boosts compatibility and deliverability across email clients. It helps marketers get better results by cleaning, enhancing, and ensuring high performance for every campaign.
- [Deadline funnel](https://composio.dev/toolkits/deadline_funnel) - Deadline Funnel lets you create personalized deadlines and timers for your marketing campaigns. It helps marketers boost conversions by adding authentic urgency to offers.
- [DeBounce](https://composio.dev/toolkits/debounce) - DeBounce is an email verification service for checking address validity, deliverability, and risk. It helps keep contact lists clean so your campaigns reach real inboxes.
- [Easy Email Verification](https://composio.dev/toolkits/easy_email_verification) - Easy Email Verification is an email validation service for checking single addresses and bulk lists. Use it to reduce bounces, clean contact data, and protect sender reputation.
- [Elastic Email](https://composio.dev/toolkits/elastic_email) - Elastic Email is an email delivery and marketing platform for transactional emails, campaigns, contacts, and reporting. Use it to send reliable emails, manage audiences, verify addresses, and track performance.
- [Fairing](https://composio.dev/toolkits/fairing) - Fairing is a post-purchase survey and attribution platform for ecommerce brands. It helps teams measure which marketing channels, campaigns, and customer touchpoints drive purchases.
- [GoDaddy MCP](https://composio.dev/toolkits/godaddy_mcp) - GoDaddy MCP is a domain discovery toolkit for checking availability and generating AI-powered name ideas. Use it to move from rough business keywords to practical domain options fast.
- [Google Ads](https://composio.dev/toolkits/googleads) - Google Ads is Google's online advertising platform for creating, managing, and optimizing digital campaigns. It helps businesses reach targeted customers and maximize return on ad spend.
- [Google AdSense](https://composio.dev/toolkits/google_adsense) - Google AdSense is a platform for managing website advertising, payments, and performance reports. It helps publishers monetize content and track ad revenue in one place.
- [Handwrite.io](https://composio.dev/toolkits/handwrite) - Handwrite.io is a direct mail service for creating physical handwritten card orders. It helps teams send personal cards with selectable handwriting, stationery, and tracking.
- [Inblog](https://composio.dev/toolkits/inblog) - Inblog is an AI-powered blogging platform for posts, authors, tags, redirects, design settings, analytics, and lead forms. Use it to manage SEO-focused content, measure performance, and capture blog leads in one place.
- [Instantly](https://composio.dev/toolkits/instantly) - Instantly is a platform for automating cold email outreach, managing leads, and optimizing deliverability. Get better results from email campaigns with minimal manual effort.

## Frequently Asked Questions

### What are the differences in Tool Router MCP and Microsoft Advertising MCP?

With a standalone Microsoft Advertising MCP server, the agents and LLMs can only access a fixed set of Microsoft Advertising tools tied to that server. However, with the Composio Tool Router, agents can dynamically load tools from Microsoft Advertising and many other apps based on the task at hand, all through a single MCP endpoint.

### Can I use Tool Router MCP with Atomic Agent?

Yes, you can. Atomic Agent fully supports MCP integration. You get structured tool calling, message history handling, and model orchestration while Tool Router takes care of discovering and serving the right Microsoft Advertising tools.

### Can I manage the permissions and scopes for Microsoft Advertising while using Tool Router?

Yes, absolutely. You can configure which Microsoft Advertising scopes and actions are allowed when connecting your account to Composio. You can also bring your own OAuth credentials or API configuration so you keep full control over what the agent can do.

### How safe is my data with Composio Tool Router?

All sensitive data such as tokens, keys, and configuration is fully encrypted at rest and in transit. Composio is SOC 2 Type 2 compliant and follows strict security practices so your Microsoft Advertising data and credentials are handled as safely as possible.

---
[See all toolkits](https://composio.dev/toolkits) · [Composio docs](https://docs.composio.dev/llms.txt)
