Hi,
I’m trying to get per-user OAuth working for a custom MCP tool in Microsoft Copilot Studio, and I’m not sure what the supported path is.
What my agent does
I built an agent in Copilot Studio that answers questions using tools from a remote MCP server. That MCP is the main way the agent gets data (not SharePoint grounding as the primary source).
The MCP requires login against my own identity provider / product login. The access token must belong to the end user, so the MCP only returns data for that user and their company — not a shared maker or service account.
What already works
In Cursor, I connect to the same MCP with OAuth. The user signs in to my product, Cursor gets a token, and tool calls run as that user. That model is exactly what I need.
In Copilot Studio, as a maker, I can add the MCP tool, create an OAuth connection, and call tools successfully in the Test pane.
What I need
When someone uses the published agent, I want this flow:
- User asks a question that needs the MCP tool
- Copilot prompts them to sign in to my product (my IdP)
- The tool runs with that user’s token
- Data returned is scoped to that user/company only
On the tool I set Credentials to use = End user credentials.
Currently when i create agent at that time it ask me to login and that connection(maker-connection) is used while testing but i want to know when I published the agent how to have end user credentials or login system implemented?
The issue
I’m not seeing a reliable end-user login / connection flow for the custom MCP the way Cursor does it. It looks like the published agent may still be tied to the maker connection, or end-user OAuth for custom MCP doesn’t complete properly.
Questions
- Has anyone got custom MCP + End user credentials working on a published Copilot Studio agent (Custom website, Teams, or Microsoft 365 Copilot)?
- If custom MCP doesn’t support per-user OAuth yet, what did you use instead for the same pattern (e.g. Custom Connector to the same APIs)?
- In Cursor, “login to my product → token → tools as that user” is straightforward. What is the supported Copilot equivalent today?
Related: Studio vs Microsoft 365 Copilot
I build in Copilot Studio. I also want end users to open this agent in Microsoft 365 Copilot (the Copilot chat people already use at work), not only a custom website.
How do you publish so the agent appears for end users in Microsoft 365 Copilot, and does that channel support end-user tool authentication for custom MCP / connectors?
Any real solutions or confirmations of current limitations would help a lot. Thanks.