We need a compliant, privacy‑preserving way to connect MS Copilot Studio to Glean via MCP that aligns with Copilot Studio’s supported auth schemes and enables per‑user access controls without custom headers.
Problem: MS Copilot Studio supports MCP auth via No Auth, API Tokens, and OAuth 2.0 without Dynamic Client Registration (DCR).
- Glean currently supports API Tokens and OAuth 2.1 with DCR.
- API Tokens are not viable:
- User‑based tokens aren’t supported in Copilot Studio per‑user configuration, which would cause the tool to run under the configurator’s identity and over‑permission all users.
- Global tokens require the custom X‑Glean‑ActAs header set dynamically to the invoking user’s email, which Copilot Studio cannot populate per request.
- Net result: there is no secure, least‑privilege, per‑user path to integrate Copilot Studio with Glean today.
Impact: Blocks enterprise adoption of the Glean MCP integration with Copilot Studio for production use.
- Creates data privacy and governance risk if workarounds are attempted (shared/global identity, over‑broad access).
- Prevents accurate auditing since requests cannot reliably reflect the actual end user.
Requested Solution: Please add an auth path that works with Copilot Studio’s constraints and enforces per‑user authorization in Glean:
- Support OAuth 2.0 without DCR with a manually registered client so Copilot Studio can complete OAuth without dynamic registration.
- Provide per‑request end‑user impersonation without requiring a bespoke header:
- Option A: Accept a standard OIDC/OAuth user assertion (e.g., Entra ID On‑Behalf‑Of) to map the caller’s user to a Glean identity.
- Option B: Allow configurable identity mapping from standard ID token/userinfo claims (email/UPN) to a Glean user, eliminating the need for X‑Glean‑ActAs.
- Preserve least‑privilege, row‑level security, and full auditability by attributing all actions to the real end user.
Acceptance Criteria: Admin can configure an OAuth client for MCP with no DCR and complete the auth handshake in Copilot Studio.
- Each MCP request executes under the invoking user’s identity without requiring X‑Glean‑ActAs or per‑user tokens stored in Copilot Studio.
- Authorization, filtering, and search results reflect the end user’s permissions.
- Audit logs show the actual end user for every request.
- Works across Copilot Studio connectors/tools with no custom code or dynamic header templates.
Alternatives Considered: API Tokens (user/global) are either unmanageable at scale or unsafe due to over‑permission and lack of dynamic end‑user context.
- Custom headers are not reliably supported per‑request in Copilot Studio.
Timeline Note: Support has indicated work toward “manual client registration” to enable OAuth without DCR, tentatively targeting end of next quarter (January 2026). Requesting prioritization and/or early access to a beta to unblock enterprise deployment.