How to Add a Remote MCP Server to Microsoft Copilot Studio
Copilot Studio connects to a remote MCP server through an onboarding wizard on the agent's Tools page. Generative orchestration has to be on first, and the right OAuth 2.0 mode depends on whether the server supports dynamic client registration.
Last verified September 28, 2026
How do I add a remote MCP server to Copilot Studio?
Open the agent's Tools page, select Add a tool → New tool → Model Context Protocol, and the MCP onboarding wizard walks you through the server's name, description, URL, and authentication. Before any of that works, generative orchestration has to be turned on for the agent — Microsoft documents this as a requirement for MCP, not an optional setting.
What you need first
- A Copilot Studio agent you can edit — this is a maker flow inside Copilot Studio, not a chat-side setting an end user can toggle. You'll need a Copilot Studio user license or the Copilot Studio authors role assigned in the Power Platform admin center.
- The MCP server's URL, reachable from Copilot Studio.
- Any credentials the server requires — an API key, or a client ID and secret for OAuth 2.0.
- Generative orchestration turned on for the agent. Microsoft's MCP overview states this directly: "You must turn on generative orchestration to use MCP."
- Copilot Studio currently supports the Streamable HTTP transport for MCP. Microsoft's docs note that SSE transport was deprecated and Copilot Studio stopped supporting it for MCP after August 2025.
Copilot Studio access itself needs a tenant with Copilot Credit capacity: Microsoft documents that a Copilot Studio tenant prepaid Copilot Credit pack subscription is a prerequisite before a free Copilot Studio user license can be assigned to a maker. A trial license can build and test the connection in the test chat panel, but per Microsoft's licensing page, a trial license can't publish the agent — so a trial is fine for evaluating an MCP server, not for shipping it.
Add the MCP server
- Go to the Tools page for your agent.
- Select Add a tool.
- Select New tool.
- Select Model Context Protocol. The MCP onboarding wizard opens.
- Fill in the required fields:
- Server name
- Server description — Microsoft's guidance is to make this a clear, brief summary, since the agent's orchestrator uses this text to decide whether to call the server at runtime.
- Server URL
- Choose the authentication type: None, API key, or OAuth 2.0.
- If you chose None, select Create and skip to Connect it to the agent.
Authentication
API key
- Select API key.
- Choose the Type: Header (the key goes in a request header) or Query (the key goes in the URL as a query parameter).
- Enter the name of that header or query parameter.
- Select Create.
OAuth 2.0
Select OAuth 2.0, then pick one of three types depending on what the server supports:
- Dynamic discovery — the server supports OAuth 2.0 dynamic client registration (DCR) with a discovery endpoint. Copilot Studio auto-discovers the identity provider's endpoints and registers itself. This is the option Microsoft's docs describe as the simplest to configure — you select Create and there's nothing else to fill in.
- Dynamic — the server supports DCR but not discovery. You register dynamically but supply the Authorization URL and Token URL template yourself.
- Manual — the server doesn't support DCR at all. You supply everything the identity provider issued for the app registration: Client ID, Client secret, Authorization URL, Token URL template, Refresh URL, and optional space-separated Scopes.
For Dynamic or Manual, Copilot Studio may surface a callback URL after you select Create — copy that into your identity provider's app registration as the redirect URI, since that's where the provider sends the user back after sign-in.
Connect it to the agent
- Select Next (or, for the None path, you land here directly after Create). The Add tool dialog appears.
- Choose Create a new connection for the MCP server, or reuse an existing one.
- Select Add to agent.
Copilot Studio then contacts the server, completes the protocol handshake, and lists the tools (and, per Microsoft's MCP overview, resources — Copilot Studio currently supports MCP tools and resources, not prompts) that the server exposes. Review the tool list before you rely on it: if a tool's description is thin, the orchestrator is less likely to invoke it reliably, and Microsoft's guidance is to have the tool's description improved on the server side rather than working around it in the agent.
Test it
Use the agent's Preview (or test chat) panel and ask something that should require one of the new tools. Open the activity trace to confirm which tool ran, what arguments it received, and what came back — that's the fastest way to tell "the server connected but the agent never calls it" apart from "the tool ran and returned something unexpected."
What usually goes wrong
| Problem | Fix |
|---|---|
| Tools never get invoked, even though the server connected | Confirm generative orchestration is turned on for the agent — Microsoft documents it as required for MCP, and an agent on classic orchestration can't use MCP tools at all. |
| "Model Context Protocol" option isn't in the Add a tool list | Confirm you're a Copilot Studio author (or have the license) and that your tenant has MCP/generative orchestration enabled by policy — some tenants restrict this centrally. |
| Server connects but no tools show up | Check the server actually returned a tool list in the Add tool dialog. If it did but the agent still won't call it, tighten the tool's own description — the orchestrator reads that text to decide when to use it. |
| OAuth callback never gets hit / sign-in loops | For Dynamic or Manual OAuth, make sure the callback URL Copilot Studio shows you was actually added as a redirect URI in the identity provider's app registration. |
| Agent tries to use more MCP servers than expected and some get skipped | Copilot Studio caps how many MCP servers can run concurrently in a single conversation turn; keep the number of servers attached to an agent small and remove ones you're not using. |
| Trial license can't publish the connected agent | Expected — Microsoft documents that a Copilot Studio trial license can test in the chat panel but can't publish. A standalone, pay-as-you-go, or Microsoft 365 Copilot-backed license is needed to publish. |
Before you connect a third-party server
As with any MCP server you connect to a Copilot Studio agent, you're responsible for the data it can reach and the tools it exposes — Microsoft's own MCP docs are explicit that connecting a non-Microsoft MCP server puts that responsibility on you.
Sources
The dated claims on this page were checked against these vendor documents. Client UIs move constantly, so if one of these has changed since the date shown, trust the vendor over this page — and tell us.
- Connect your agent to an existing MCP server — Microsoft Copilot Studio | Microsoft Learn — read 2026-09-28
- Extend your agent with Model Context Protocol — Microsoft Copilot Studio | Microsoft Learn — read 2026-09-28
- Standard harness licensing — Microsoft Copilot Studio | Microsoft Learn — read 2026-09-28
- Add an MCP server to your agent as a tool (GitHub Copilot preview) — Microsoft Copilot Studio | Microsoft Learn — read 2026-09-28
Frequently asked questions
- Who can add an MCP server in Copilot Studio?
- This is a maker/admin flow, not an end-user chat setting. You need a Copilot Studio user license or the Copilot Studio authors role in the Power Platform admin center, plus a tenant with Copilot Credit capacity provisioned — Microsoft documents that a Copilot Studio tenant prepaid Copilot Credit pack subscription is required before a user license can be assigned. A trial license lets you build and test an agent's MCP connection in the test chat panel, but Microsoft documents that a trial license cannot publish the agent.
- Why doesn't my agent see the MCP server's tools?
- Generative orchestration has to be turned on for the agent — Microsoft documents this as a requirement to use MCP at all, separate from the server connecting successfully. Also confirm the server actually returned a tool list (check the Add tool dialog after creating the connection) and that the tool descriptions are clear enough for the orchestrator to pick them; Microsoft's guidance is to improve a tool's description on the server if the agent isn't invoking it as expected.
- Which OAuth 2.0 type should I pick — Dynamic discovery, Dynamic, or Manual?
- Try Dynamic discovery first if the server supports OAuth 2.0 dynamic client registration (DCR) with a discovery endpoint — Microsoft documents it as the simplest option, since Copilot Studio registers itself automatically. If the server supports DCR but not the discovery mechanism, use Dynamic and supply the authorization and token URLs yourself. If the server doesn't support DCR at all, use Manual and supply the client ID, client secret, authorization URL, token URL, and refresh URL from the identity provider's own app registration.