-
Notifications
You must be signed in to change notification settings - Fork 18
Connecting Microsoft Copilot
Microsoft brands several different products as "Copilot." Only some support connecting to external MCP servers:
| Product | MCP Support | Notes |
|---|---|---|
| Copilot Studio | ✅ Yes — UI wizard with dynamic tool discovery | Recommended path. Requires Copilot Studio license. |
| Microsoft 365 Copilot (Teams, Office apps) | ✅ Yes — via agent connectors in app manifest | Developer-oriented. Requires M365 Copilot license. |
| Copilot app (iOS, Mac, Windows, web) | ❌ No MCP extensibility | Consumer product. No way to connect external servers. |
| GitHub Copilot | ✅ Yes | Separate product, separate docs, not covered here. |
If you're an individual user with a personal Microsoft subscription or the free Copilot app from the App Store, you cannot connect to Salesforce's MCP servers through Microsoft's products. There is no self-service "paste a URL" flow. Use Claude or ChatGPT instead — both allow individual subscribers to connect directly.
If you're an enterprise admin with Copilot Studio or Microsoft 365 Copilot, read on.
Copilot Studio provides a wizard-driven UI for connecting to external MCP servers. Unlike the other Microsoft paths (manifest files, VS Code toolkits), Copilot Studio dynamically discovers tools from your server — no static tool declarations, no redeployment when tools change. This is the closest experience to how Claude and ChatGPT handle MCP connections.
Microsoft's definitive guide:
Follow that guide for the Microsoft side. The rest of this page covers the Salesforce-specific setup you'll need to complete first.
For a video walkthrough of MCP in the Microsoft ecosystem, see: MCP in Microsoft 365 Copilot (YouTube)
Before starting the Copilot Studio wizard, gather these from your Salesforce org:
| Item | Where to Find It | Example |
|---|---|---|
| MCP Server URL | See URL patterns | https://api.salesforce.com/platform/mcp/v1/platform/sobject-all |
| OAuth Client ID | Your External Client App's consumer key | |
| OAuth Client Secret | Your External Client App's consumer secret | |
| Authorization URL | Depends on org type (see below) | https://login.salesforce.com/services/oauth2/authorize |
| Token URL | Depends on org type (see below) | https://login.salesforce.com/services/oauth2/token |
| Scopes | Fixed | mcp_api refresh_token |
| Org Type | Authorization URL | Token URL |
|---|---|---|
| Production / Developer Edition | https://login.salesforce.com/services/oauth2/authorize |
https://login.salesforce.com/services/oauth2/token |
| Sandbox | https://test.salesforce.com/services/oauth2/authorize |
https://test.salesforce.com/services/oauth2/token |
| My Domain required | https://{your-domain}.my.salesforce.com/services/oauth2/authorize |
https://{your-domain}.my.salesforce.com/services/oauth2/token |
Follow the standard ECA setup guide, with one addition:
Add Microsoft's OAuth redirect URI to your External Client App's callback URL list:
https://teams.microsoft.com/api/platform/v1.0/oAuthRedirect
Copilot Studio may also generate a callback URL during the OAuth configuration wizard. If it provides one, add that to your ECA as well.
When the wizard asks for authentication type, choose OAuth 2.0 → Manual, then enter:
- Client ID → your ECA consumer key
- Client Secret → your ECA consumer secret
- Authorization URL → the appropriate URL from the table above
- Token URL → the appropriate URL from the table above
-
Scopes →
mcp_api refresh_token
Copilot Studio will provide a callback URL after creation. Copy it back to your Salesforce ECA's allowed redirect URIs if you haven't already added it.
Once connected, Copilot Studio discovers tools from the MCP server automatically. When Salesforce adds or updates tools on the server, Copilot Studio picks up the changes without any redeployment on your end.
| Aspect | Claude / ChatGPT / Cursor | Copilot Studio |
|---|---|---|
| Tool discovery | Dynamic | Dynamic |
| Configuration | End user pastes URL + authenticates | Admin configures in Copilot Studio |
| Tool updates | Automatic | Automatic |
| Self-service for individuals | Yes | No — requires enterprise admin |
| Licensing | Consumer subscription sufficient | Copilot Studio license required |
The main difference isn't technical — it's organizational. Claude and ChatGPT let any subscriber connect on their own. Copilot Studio puts the admin in control of which MCP servers are available and who can use them.
| Symptom | Likely Cause | Fix |
|---|---|---|
| OAuth sign-in fails | Redirect URI missing | Add https://teams.microsoft.com/api/platform/v1.0/oAuthRedirect (and any Copilot Studio callback URL) to your ECA |
| Auth works but API calls fail | Wrong OAuth endpoint for org type | Use test.salesforce.com for sandboxes, My Domain URL if required |
| Tools not appearing | Generative orchestration disabled | Enable generative orchestration in Copilot Studio (required for MCP) |
| Connection timeout | Server URL unreachable | Verify the MCP server URL is correct and accessible from Microsoft's infrastructure |
| Scopes error | Missing or wrong scopes | Ensure scopes are exactly mcp_api refresh_token
|
- Connect your agent to an existing MCP server — the definitive step-by-step guide
- Extend your agent with MCP (overview)
- Video: MCP in Microsoft 365 Copilot
Once connected, proceed to Testing and Evaluating Your MCP Client for validation guidance.
Getting Started
- Quick Start Guide
- See It in Action
- Confirming Availability
- Configuring an External Client App
- Connecting Your MCP Client
Testing & Debugging
- Testing and Evaluating Your MCP Client
- Testing and Debugging with Postman
- Client Tips and Troubleshooting
Security & Governance
Reference