An AI companion integrated into Microsoft products that enhances productivity through intelligent assistance, content generation, and task automation.
Hello Florence,
Thank you for the detailed logs and support IDs. Based on the sequence described, the message “The MCP server rejected the request” appears misleading.
OAuth discovery, dynamic client registration, PKCE authorization, and the token exchange all completed successfully. Because no subsequent request reached the MCP server, the HTTP 400 appears to occur inside the Power Platform token service while processing, storing, or retrieving the token.
A dynamically registered public client using token_endpoint_auth_method=none is valid under OAuth/MCP standards. Copilot Studio documentation does not state that Dynamic discovery requires a client secret. Since the token exchange succeeded without one, this should not currently be classified as a server configuration error or by-design limitation. It is more likely a Power Platform interoperability issue, although internal telemetry is required to confirm it.
There is also no published token-size limit indicating that a response of approximately 2,400 bytes is excessive. Please verify that the response contains a string access_token, token_type: "Bearer", numeric expires_in, if supplied, and valid JSON with Content-Type: application/json.
For the other modes:
- The exact meaning of Authorization URL in Dynamic mode is insufficiently documented. An HTTP 500 from the Power Platform consent service requires examination of its internal logs.
- Manual mode does not expose a PKCE option, and the observed request did not contain a PKCE challenge. It therefore cannot currently be relied upon for an OAuth 2.1 MCP server that requires PKCE. Disabling PKCE on the server is not recommended.
- The classic connector editor showing No authentication is not conclusive because the MCP onboarding wizard can manage authentication separately.
At this stage, this should be treated as a suspected Power Platform token-service defect, not confirmed by-design behavior.