Announcements
Hi all,
I've built a Copilot Studio agent and published it, where User A was the one who published/created the agent. This agent uses an MCP server to perform actions like creating records.
Now when User B (a different user) uses this agent to create a record, the record ends up showing "Created by: User A" instead of "Created by: User B" — even though User B is the one actually interacting with the agent and triggering the record creation through the MCP server.
Ideally, the record should reflect the actual signed-in user performing the action (User B), not the user who published the agent, so that record ownership/creation is properly traceable per user.
Has anyone faced this same issue when using an MCP server with Copilot Studio agents? Is this happening because the MCP server connection/authentication is running under the publisher's (User A's) credentials/context instead of passing through the current user's identity?
How can we make sure the "Created by" (or equivalent CreatedBy/ModifiedBy) field correctly reflects the actual user interacting with the agent, rather than defaulting to whoever published it? Is there a way to configure the MCP server or the agent's connection settings (e.g., per-user authentication, "Run only users" connections, or passing user context/token through MCP) so each action is attributed to the correct user?
Any guidance on the right setup to fix this would be really helpful.
Thanks in advance!
From what you've described, it sounds like the MCP action is running under the credentials of the connection used to configure the MCP server (User A), rather than the identity of the user interacting with the agent (User B). As a result, the backend system records User A in the CreatedBy/ModifiedBy fields instead of User B. Connect your agent to an existing Model Context Protocol (MCP) server - Microsoft Copilot Studio | Microsoft Learn I'd recommend checking how the MCP server is authenticated. If it's using a shared connection, API key, service account, or publisher-owned credentials, this behavior is expected. To have records attributed to the actual user, the MCP server and backend API typically need to support delegated/per-user authentication and pass the signed-in user's identity or token through the request flow. Lab MCS10 - Consuming an MCP server with OAuth 2.0 - Copilot Developer Camp Have you verified whether the MCP server is receiving the user's identity claims/token, and whether the downstream record creation API is using that delegated identity when creating records? That is usually the key factor in getting CreatedBy to reflect the interacting user rather than the publisher. Consuming an authenticated MCP server with a custom engine agent in Copilot Studio
Under review
Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.
Congratulations to our community stars!
Expanding mentorship, skilling, and AI innovation
These are the community rock stars!
Stay up to date on forum activity by subscribing.
sannavajjala87 160 Super User 2026 Season 1
11manish 145
Haque 121