Microsoft Copilot reaches your ad accounts through a Copilot Studio agent. Add PaidSync as a Model Context Protocol tool with the server URL https://mcp.paidsync.ai/mcp, choose OAuth 2.0 with Dynamic discovery, and sign in with your PaidSync login. Copilot then has 470+ tools across 14 ad and analytics platforms. It reads performance on its own. Every change is held for your approval before it runs. Copilot Studio needs a work or school account. The consumer Copilot app does not accept custom MCP servers.
Three things happen, in this order. You create a free PaidSync account and connect your ad platforms to it, each with its own sign-in. You add PaidSync to a Copilot Studio agent as an MCP tool, which takes about four minutes. You publish that agent to the Microsoft 365 Copilot channel, and once an admin approves it, the agent shows up in Teams and Microsoft 365 Copilot for your team.
From then on, Copilot can pull a Google Ads audit into a Word doc, compare Meta and LinkedIn cost per lead in one prompt, or draft the Outlook email to your agency with the top five issues attached. When you ask it to pause a campaign or move budget, it shows the exact change and waits. Nothing runs until you approve it.
One PaidSync connection covers Google Ads, Meta (Facebook and Instagram), LinkedIn, TikTok, Microsoft Advertising, Snapchat, Pinterest, Reddit, X, OpenAI Ads, Google Analytics 4, Google Tag Manager, Google Merchant Center and Google Search Console. Search Console is read only. Merchant Center writes cover products and feeds, never campaigns.
Two-minute founder demo of the PaidSync flow in Claude and ChatGPT. The same endpoint connects to Microsoft Copilot through Copilot Studio.
Microsoft sells four things called Copilot, and only two of them can talk to PaidSync. Getting this right saves you an hour of clicking through menus that do not exist.
| Product | Custom MCP servers | What you need |
|---|---|---|
| Copilot Studio | Yes. Tools, Add a tool, New tool, Model Context Protocol. | A work or school account. Included with Microsoft 365 Copilot licences, or a standalone Copilot Studio subscription or 30-day trial. |
| Microsoft 365 Copilot (Teams, Word, Outlook) | Through a Copilot Studio agent published to the Microsoft 365 Copilot channel. | A Microsoft 365 Copilot licence plus an admin who approves the published agent. |
| Consumer Copilot app | No. It does not accept custom MCP servers. | Not applicable. Use Copilot Studio instead. |
| GitHub Copilot in VS Code | Yes, inside the editor. MCP: Add Server, HTTP, paste the URL. | A GitHub Copilot subscription and VS Code. A different product from Microsoft 365 Copilot. |
If you are an individual with a personal Microsoft account, stop here. There is no route from the consumer Copilot app to a custom tool today. If your company runs Microsoft 365, ask IT whether Copilot Studio is already licensed. It often is, and a 30-day trial exists when it is not.
Everything below assumes Copilot Studio. The GitHub Copilot route sits at the bottom of the page as its own section because the steps are different and the audience is different.
These are the wizard steps as they read in Copilot Studio today, taken from the same setup registry that renders our per-platform pages. Field values are exact. Copy them.
Sign up at paidsync.ai/signup on the Free plan, 15 tasks a month at $0, no card. In the PaidSync workspace, connect Google Ads, Meta, LinkedIn, TikTok, Microsoft Advertising or any of the 14 supported platforms. Each platform uses its own OAuth sign-in. Your platform credentials stay with PaidSync and never pass through Microsoft. Tokens are encrypted at rest with AES-256-GCM.
In Copilot Studio open your agent, then Tools, Add a tool, New tool, Model Context Protocol. A new agent works as well as an existing one.
Server name PaidSync, a short description such as "Ad accounts and analytics", and the server URL:
https://mcp.paidsync.ai/mcpAuthentication: OAuth 2.0, then Dynamic discovery. PaidSync publishes the OAuth discovery metadata and supports dynamic client registration with PKCE, so no client ID is typed. If your tenant blocks that, choose API key as a Query parameter named api_key with your ps_ key. A key gives read-only access; applying a change still requires the OAuth sign-in. Transport is Streamable HTTP, the only transport Copilot Studio accepts.
Click Create, then Add to agent. Sign in with your PaidSync login when prompted. Test in the studio with a read-only question first, for example "Audit my Google Ads account for the last 30 days". The tool list Copilot sees is a lean starter set; the full catalog is discovered on demand, so a first answer that names only a few tools is normal.
Publish the agent to the Microsoft 365 Copilot channel. Tenant DLP policies on Power Platform connectors govern the connection, and most tenants need an admin to approve the published agent before it appears in Teams and Microsoft 365 Copilot. Until then, the agent works inside Copilot Studio for you alone.
Sources for the wizard: Microsoft's guide to adding an existing MCP server to an agent at learn.microsoft.com/en-us/microsoft-copilot-studio/mcp-add-existing-server-to-agent and the licensing page at learn.microsoft.com/en-us/microsoft-copilot-studio/requirements-licensing-subscriptions, both checked September 1, 2026.
A Copilot Studio agent is private to its maker until it is published. Three things stand between your working agent and your team's Copilot, and each is an IT decision, not a PaidSync one.
Other admin routes exist for bringing agents into Microsoft 365 Copilot, but this guide covers the Copilot Studio path only, because it is the one Microsoft documents step by step and the one this guide has checked against that documentation. If your IT team needs a different route, the enterprise page explains how we work with them.
Every platform guide below walks the same Copilot Studio wizard, then goes deep on what Copilot can read and change on that one platform. The tag on the right is the capability tier from our tool catalog. Build means Copilot can create campaigns. Manage means pause, enable, budget and settings on existing campaigns. Configure means it writes tracking or feed configuration. Watch means read only.
Google Ads to Microsoft Copilot149 tools, build
Meta Ads (Facebook and Instagram) to Microsoft Copilot81 tools, build
LinkedIn Ads to Microsoft Copilot26 tools, build
TikTok Ads to Microsoft Copilot13 tools, manage
Google Analytics 4 to Microsoft Copilot26 tools, configure
Google Tag Manager to Microsoft Copilot39 tools, configure
Google Search Console to Microsoft Copilot6 tools, watch
Shorter pages for the platforms where the setup is the whole story. Same wizard, same endpoint, the platform-specific facts up top.
Instagram Ads to Microsoft Copilot81 tools, build
Meta Ads to Microsoft Copilot, fast path81 tools, build
OpenAI Ads (28 tools, build) is supported on the same endpoint and does not have its own Copilot page yet. The connect hub lists every platform and client pairing we publish.
Two kinds of work happen through the connection. Reads run on their own, because a report cannot break anything. Writes are held until you approve them, because a budget change can.
Ask in plain words and Copilot picks the tool. The names below are the real tool names in the catalog, useful if you want to be precise.
run_account_audit scores an account and returns a ranked list of issues, the same audit that opens most agency engagements.get_wasted_spend_report finds search terms and placements that spend without converting.get_campaign_performance, get_keyword_performance and get_search_terms_report cover the day-to-day questions, with a date range and a sort field.What Copilot can change depends on the platform's tier in the catalog. Numbers come straight from the capability matrix that our server is built from.
| Tier | Platforms | Example write tools |
|---|---|---|
| Build, creates campaigns | Google Ads (149), Meta (81), OpenAI Ads (28), LinkedIn (26) | create_search_campaign, create_fb_campaign, create_linkedin_campaign, pause_campaign |
| Manage, existing campaigns | Microsoft Advertising (15), Snapchat (15), TikTok (13), Pinterest (14), Reddit (14), X (14) | pause_ms_campaign, update_tiktok_campaign_budget, enable_snapchat_campaign, update_x_line_item |
| Configure, tracking and feeds | Google Tag Manager (39), GA4 (26), Merchant Center (16) | create_gtm_tag, create_ga4_conversion_event, merchant_insert_product, merchant_create_supplemental_feed |
| Watch, read only | Google Search Console (6) | None. Reports only. |
Every write goes through the same gate. Copilot proposes the change, PaidSync holds it, you approve it. Any tool accepts dry_run so you can see the exact payload before anything is sent. Destructive operations, such as removing a campaign or deleting a GTM tag, need confirm_destructive as well. In the PaidSync workspace, each approved change becomes a card with one-tap undo and a 7-day outcome check, so you can see whether the budget move did what you expected.
Repeat work does not need repeat prompts. PaidSync workflows are small TypeScript compositions saved with paidsync_workflows_save and run with paidsync_workflows_run, available on Plus, Pro and Max. Five official ones ship today: account-audit, find-waste, pause-zero-conv-keywords, weekend-underspend and negative-keyword-candidates. Copilot can run any of them by name.
Inside the PaidSync workspace, specialist agents watch accounts between your Copilot sessions. ROAS Guardian, Wasted Spend Hunter, Budget Pacer, Creative Fatigue Watcher, GA4 Auditor and Merchant Center Auditor each raise an approval card when they find something, and Copilot can ask what they found.
This section is for engineers. GitHub Copilot is the coding assistant inside Visual Studio Code, and it is not the same thing as Microsoft 365 Copilot. It connects to MCP servers through the editor rather than through Copilot Studio, and no Microsoft 365 licence is involved.
Press Cmd+Shift+P (Ctrl+Shift+P on Windows), run MCP: Add Server, choose HTTP, paste the same URL, and sign in with your PaidSync login when prompted. To share the setup with a repo, commit a .vscode/mcp.json instead:
{
"servers": {
"paidsync": { "type": "http", "url": "https://mcp.paidsync.ai/mcp" }
}
}The endpoint, the OAuth sign-in and the approval gate are identical to the Copilot Studio path. The read-only API key form, https://mcp.paidsync.ai/mcp?api_key=ps_your_key_here, works here too for reports. Engineers who live in the terminal rather than the editor can use the same server from Claude Code or Cursor; the docs carry the one-line setup for each.
Same endpoint and the same sign-in on every one of them.
Building an agent rather than chatting? See Connect ad platforms to Microsoft Copilot Studio for the wizard settings and two agent examples.
Google AdWords is now called Google Ads, and the connection runs through PaidSync. Connect your Google Ads account inside PaidSync, then in Copilot Studio open your agent, Tools, Add a tool, New tool, Model Context Protocol. Paste https://mcp.paidsync.ai/mcp, choose OAuth 2.0 with Dynamic discovery, click Create and Add to agent. Copilot then has 149 Google Ads tools, and every change waits for your approval.
You need Copilot Studio, which needs a work or school account. Copilot Studio is included with Microsoft 365 Copilot licences and is also available as a standalone subscription or a 30-day trial. PaidSync itself starts at $0 with 15 tasks a month on the Free plan.
No. The consumer Copilot app does not accept custom MCP servers. Custom tools reach Copilot through a Copilot Studio agent, which needs a work or school account.
Yes, for reports. In the Copilot Studio wizard choose API key as a Query parameter named api_key with your ps_ key, or use https://mcp.paidsync.ai/mcp?api_key=ps_your_key_here as the URL. A key gives read-only access. Applying a change to a campaign requires the OAuth 2.0 sign-in with your PaidSync login.
No. Every write is held for approval before it runs. You see the exact change, and nothing is applied until you approve it. Tools accept dry_run for a preview, destructive operations such as removing a campaign need confirm_destructive, and approval cards in the PaidSync workspace carry one-tap undo and a 7-day outcome check.
Yes. Microsoft Advertising runs an official MCP server as a read-only open pilot since June 17, 2026, documented at about.ads.microsoft.com/en/solutions/technology/mcp-server. It covers Microsoft Advertising only and cannot pause a campaign or change a budget. PaidSync covers Microsoft Advertising with 15 tools, including pause, enable and budget changes, alongside 13 other platforms on one endpoint.
Yes. One PaidSync tool in the agent exposes every platform you connected. You can ask for last week's spend across Google Ads and Meta in one prompt, compare cost per lead, then approve a budget change on whichever side needs it.
No. GitHub Copilot in VS Code is a coding assistant and connects to MCP servers through the editor. Microsoft 365 Copilot is the assistant in Teams, Word and Outlook and reaches custom MCP servers through a Copilot Studio agent. Both work with PaidSync, but the setup steps are different.
Free is $0 with 15 tasks a month. Pro starts at $99 and Team at $249. A task is one completed request, such as an audit or a budget change. Copilot Studio is licensed separately by Microsoft. Full detail on the pricing page.
Streamable HTTP. It is the only transport Copilot Studio accepts for MCP servers, and PaidSync serves it at https://mcp.paidsync.ai/mcp. There is nothing to configure beyond the URL.
No. Search Console is read only in PaidSync. Copilot can pull queries, pages and index coverage into a report, but it cannot change anything there. Writes exist on Google Ads, Meta, LinkedIn, TikTok, Microsoft Advertising, Snapchat, Pinterest, Reddit, X, OpenAI Ads, GA4, Google Tag Manager and Merchant Center.
470+ tools, 14 platforms, one endpoint. Add PaidSync to Copilot Studio and every change waits for your approval.
Start on the Free plan Build this for our team