Alternative For DCR (Dynamic Client Registration) #45
Replies: 1 comment 3 replies
-
Hi @philip-ulrich , thanks for bringing this up — it’s a really good point and worth discussing in more detail. From my perspective, implementing DCR directly inside the lib may not be the best approach, since the actual registration request is ultimately initiated by the MCP Client, not the lib itself. So even if we were to handle the registration inside the lib, the risk of abuse still exists — the only difference would be whether the MCP Client registers directly with the IdP or indirectly through the MCP Server via the lib. That’s why we’ve leaned toward supporting pre-registered clients instead — and why the MCP Client is designed to accept a pre-provisioned Client ID. This ensures better control and avoids the security risk of dynamic registrations entirely. Did I understand your concerns correctly? I’d really like to make sure we’re on the same page and continue the conversation to find the right balance here. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
I'm not sure how much of this comes down to this implementation vs how the standard for MCP servers are defined - but I'd like to remove some of the risk of DCR. A lot of enterprise environments don't even have it enabled and really it only needs to exist at the MCP Server level. Then you have have registered MCP servers and don't risk having malicious ones that auto log someone in and scrap their token.
Would it be within scope to implement DCR within the lib? Or at the very least add some sort of way to add headers to pass a token on to the OAuth servers to protect registration (and realistically, all the calls). IMO, the former would be the most ideal.
Beta Was this translation helpful? Give feedback.
All reactions