Datawiza
Back to blog
Published July 20, 2026Blog

MCP DCR vs. CIMD After DCR Deprecation: The Enterprise Decision

Abstract DCR versus CIMD feature image
Table of contents

The MCP 2026-07-28 specification made the direction explicit: Dynamic Client Registration (DCR) is deprecated. New MCP implementations should use Client ID Metadata Documents (CIMD), while DCR remains only for backward compatibility with authorization servers that do not yet support CIMD.

This is not an immediate breaking change. DCR still works, and the MCP deprecated-features registry says its earliest possible removal is the first specification revision released on or after July 28, 2027. But it changes the architecture decision: DCR is now a migration dependency to reduce, not a registration model to build around.

For enterprise teams, that still does not make CIMD the whole security answer. CIMD gives an authorization server a stable way to retrieve client metadata. It does not tell your organization whether that client is approved, which employee or agent is behind a request, or which MCP tools and data the client may use.

What changed in MCP 2026-07-28

The July 2026 release changed both the status of DCR and the operational rules around client registration:

  • DCR is formally deprecated. New implementations should use CIMD. Existing implementations may retain DCR as a compatibility fallback while clients and authorization servers migrate.
  • DCR clients must declare an application type. Native applications such as desktop clients, CLI tools, and localhost applications should use application_type: "native"; remote browser applications should use application_type: "web". This prevents OIDC authorization servers from rejecting valid loopback redirect URIs because they defaulted the client to a web application.
  • DCR credentials are authorization-server-specific. Clients must bind dynamically registered credentials to the issuer that created them. If protected-resource metadata points to a different authorization server, the client must not reuse those credentials and must register again.
  • CIMD identifiers are portable. A CIMD client ID is a self-hosted HTTPS URL that an authorization server resolves when needed. The same identifier can therefore be used with multiple authorization servers without a new DCR record at each one.

The underlying OAuth Client ID Metadata Document work is still an active IETF Internet-Draft, currently draft-ietf-oauth-client-id-metadata-document-02, rather than a final RFC. MCP has nevertheless adopted CIMD as its preferred registration path for clients and authorization servers without a prior relationship.

The MCP client registration priority in 2026

The current MCP specification defines four choices in this order:

  1. Use pre-registered client information when the client already has credentials for that authorization server.
  2. Use CIMD when the authorization server advertises client_id_metadata_document_supported: true.
  3. Use DCR as a fallback only when the authorization server exposes a registration endpoint and CIMD is unavailable.
  4. Ask the user for client information when no automated registration option works.

That ordering matters. Pre-registration remains the preferred enterprise choice when you control both sides and can approve a known client. CIMD is the preferred dynamic choice when the client and authorization server have no prior relationship. DCR is now the compatibility bridge.

What each MCP registration mechanism actually proves

Pre-registration proves prior administrative approval

An administrator created or approved the client before use. When you operate the MCP server, authorization server, and allowed-client inventory, pre-registration provides the clearest governance boundary. Its limitation is scale: it requires an onboarding process for every client and authorization server relationship.

CIMD provides stable, domain-linked client metadata

With CIMD, the client ID is an HTTPS URL such as https://client.example.com/oauth/client.json. The authorization server fetches that document and validates the client ID and redirect URIs. This creates a stable namespace tied to control of the publishing domain and avoids creating a new registration record at every authorization server.

CIMD should not be described as automatic enterprise approval or complete software attestation. A metadata document says what the publisher declares about the client. A public client using token_endpoint_auth_method: "none" does not prove that every running instance is genuine. Stronger client authentication can use private_key_jwt with published public keys, but organizational approval and runtime authorization remain separate decisions.

DCR proves that registration succeeded

DCR lets a client send metadata to a registration endpoint and receive a client ID, and sometimes credentials. That helps interoperability, but an open registration endpoint does not by itself establish organizational trust. It also creates client-record lifecycle, cleanup, rate-limit, abuse-monitoring, and issuer-binding work for the authorization server.

Enterprise-Managed Authorization governs token issuance

The optional Enterprise-Managed Authorization extension, also discussed as Cross App Access, lets an enterprise identity provider govern authorization for supported MCP connections. It is an important organizational control, but support is not universal and it does not replace fine-grained runtime policy for every tool call, argument, data path, rate limit, or downstream credential.

CIMD implementation checklist

For MCP client developers

  • Host the client metadata at an HTTPS URL with a path component. Do not use a bare origin as the client ID.
  • Include at least client_id, client_name, and redirect_uris. The document's client_id must exactly match the URL used to retrieve it.
  • Register redirect URIs exactly. Do not rely on wildcard, partial, or normalized matching.
  • Do not publish shared client secrets in the document. CIMD can describe public clients or use asymmetric client authentication such as private_key_jwt.
  • Keep the URL stable. Changing it changes the client ID, and deleting it breaks new authorization attempts after cached metadata expires.

For authorization-server operators

  • Advertise CIMD support with client_id_metadata_document_supported: true in authorization-server metadata.
  • Require an exact match among the requested client ID, the fetched URL, and the document's client_id value.
  • Validate authorization-request redirect URIs against the metadata document using exact string comparison.
  • Treat metadata retrieval as an SSRF boundary: block special-use IP ranges, restrict schemes, resolve DNS safely, and do not automatically follow redirects.
  • Cache valid metadata according to HTTP cache headers. Do not cache failed, invalid, or malformed responses. The current IETF draft recommends limiting the document read to 5 KB.
  • Apply request limits and monitoring. CIMD removes the DCR registration write path, but authorization requests can still trigger remote metadata retrieval and abuse pressure.

For internal MCP servers you operate

Use pre-registration for sanctioned clients first.

If you operate the MCP server, authorization server, and client inventory, pre-register the clients you trust and review them through your normal application-governance process. This follows the current MCP selection priority and keeps the allowed client set explicit.

Support CIMD when you intentionally accept clients that were not pre-registered. Apply the validation, caching, and SSRF requirements above. Keep DCR only while a known compatibility requirement remains; do not make it the default path for a new internal platform.

For MCP servers exposed to customers

CIMD is the practical default when customer clients and your authorization server have no prior relationship. It avoids making every customer create a client record before connecting and gives the authorization server a stable URL from which to retrieve client metadata.

That does not remove tenant policy. You still need to decide which customer, user, role, subscription, agent, or environment may see and call each tool. CIMD identifies published client metadata; it does not replace user authorization, tenant isolation, rate limits, logging, or abuse controls.

Retain DCR only for customer tools that still require it. Measure actual DCR usage so you know which clients block retirement, and apply registration rate limits and lifecycle cleanup while the endpoint remains available.

For employees and agents connecting outward

You do not control which registration mechanism an external MCP server accepts. CIMD may make a client easier for that server to identify, but it does not tell your enterprise whether the destination is approved, which user initiated the connection, what data was sent, or which tools were invoked.

For outbound MCP usage, client registration is an interoperability question. Enterprise governance is the larger security question.

A practical migration path from DCR to CIMD

  1. Inventory DCR dependencies. Identify which clients register dynamically, which authorization servers issue the records, and whether each client can publish a stable HTTPS metadata URL.
  2. Add CIMD support before removing DCR. Authorization servers should advertise CIMD capability; clients should prefer it when advertised and retain DCR fallback only where required.
  3. Harden the remaining DCR path. Require the correct application_type, bind stored credentials to the issuing authorization-server identifier, rate-limit registration, and clean up unused records.
  4. Monitor fallback usage. Log which client and authorization-server combinations still use DCR instead of CIMD.
  5. Retire DCR by compatibility evidence, not by assumption. The MCP registry makes DCR eligible for removal no earlier than a revision released on or after July 28, 2027, but your endpoint should remain only as long as supported clients demonstrably need it.

The enterprise questions no client ID can answer

Client registration determines how a client introduces itself to an authorization server. It does not decide everything the client may do after authorization.

Enterprise MCP governance still needs answers to four questions:

  • Which identity is behind the request, including the user, group, agent, and client?
  • Which MCP server, tool, action, argument, and data path is being requested?
  • What rate, cost, credential, data, and environment limits should apply?
  • Where is the audit trail for security review and compliance?

Enterprise-Managed Authorization moves the ecosystem toward IdP-anchored token issuance, which is valuable. But it does not, by itself, enforce a consistent decision on every MCP tool call across every client and server in use today.

Where an MCP gateway fits

The practical enterprise pattern is to use the best registration mechanism each connection supports, then enforce runtime policy at a layer that does not depend on every MCP client and server implementing the same optional extension.

Datawiza Agent Gateway sits inline between AI agents and MCP servers. It binds traffic to enterprise identity such as Microsoft Entra ID, Okta, or Ping, applies tool and action policy, protects downstream credentials, attributes usage to users and agents, and records each decision.

That makes a gateway complementary to the MCP specification. Pre-registration, CIMD, and DCR determine how a client obtains an identity at the authorization server. The gateway governs what an authenticated client, user, or agent may do at runtime.

For the underlying OAuth flow, resource indicators, protected-resource discovery, and token validation rules, see MCP Authentication Explained. For runtime controls after authentication, see Tool Execution Security for Autonomous Agents.

Sources reviewed

FAQ

Is Dynamic Client Registration removed from MCP?

No. DCR was deprecated in MCP 2026-07-28 but remains available for backward compatibility. New implementations should use CIMD instead. DCR is eligible for removal only in a specification revision released on or after July 28, 2027, and the actual removal may happen later.

Should an MCP deployment use DCR or CIMD?

Use pre-registration when you already manage the client and authorization server relationship. Use CIMD when they have no prior relationship and the authorization server advertises support. Keep DCR only as a compatibility fallback for clients or authorization servers that have not migrated.

Does CIMD authenticate the running MCP client?

Not necessarily. CIMD lets an authorization server retrieve metadata from a stable HTTPS client ID and validate redirect URIs. That establishes a domain-linked metadata identity, but a public client does not automatically prove that every running instance is genuine. Deployments that need stronger client authentication can use asymmetric methods such as private_key_jwt where supported.

Is CIMD a final OAuth RFC?

No. OAuth Client ID Metadata Document is still an active IETF Internet-Draft. MCP nevertheless recommends that clients and authorization servers support it and has deprecated DCR in its favor.

Does CIMD make MCP enterprise-ready?

CIMD improves client identification and registration interoperability. It does not decide which software your organization approves, which users and agents may connect, which tools they may call, or how access is limited and audited. Those decisions require enterprise identity and runtime policy enforcement.

What does an MCP gateway add after client registration?

An MCP gateway can bind requests to enterprise users and agents, enforce tool- and action-level policy, protect downstream credentials, apply rate and usage limits, and produce a consistent audit trail. These controls complement pre-registration, CIMD, DCR, and Enterprise-Managed Authorization rather than replacing them.

Datawiza is Easy to Get Started

Sign up to secure your AI agents and critical enterprise apps

Try Datawiza