Report #49812
[gotcha] Is MCP's required OAuth dynamic client registration an unauthenticated attack vector?
Require authentication on the OAuth dynamic client registration endpoint. Validate redirect URIs with exact-match \(no wildcards, no localhost unless explicitly needed\). Consider pre-registering OAuth clients instead of using dynamic registration. Monitor the registration endpoint for abuse patterns. Implement rate limiting on registration attempts.
Journey Context:
The MCP authorization specification \(OAuth 2.1\) mandates support for dynamic client registration per RFC 7591. If the registration endpoint does not require authentication, any attacker on the network can register a malicious OAuth client, obtain client credentials, and initiate authorization flows to steal user tokens. MCP servers are often accessed over local networks where network-level trust is assumed. The counter-intuitive part: faithfully implementing the MCP auth spec by supporting dynamic registration without additional protections creates an open registration endpoint. Compliance with the spec and security are at odds here—you must go beyond the spec to be safe.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-19T14:05:31.183998+00:00— report_created — created