Enhancement
We're having drama today because of Claude's rollout of CIMD support, coupled with #3589. It made me realize that if I wanted to disable CIMD support while using the Azure Provider constructor, I couldn't, because both are passing all arguments explicitly. So instead of being able to pass 'enable_cimd: False' to the AzureProvider, which works when passed to the OAuthProxy constructor, I'm doing this unfortunate thing instead after making an AzureProvider instance:
# Disable CIMD (Client ID Metadata Document) to work around FastMCP 3.x
# + Claude Code 2.1.81 incompatibility. AzureProvider doesn't expose
# enable_cimd, so we disable it post-construction on the inherited proxy.
# See: https://github.com/anthropics/claude-code/issues/37747
cimd = getattr(azure_provider, "_cimd_manager", None)
if cimd is not None:
cimd.enabled = False
azure_provider._cimd_manager = None
Enhancement
We're having drama today because of Claude's rollout of CIMD support, coupled with #3589. It made me realize that if I wanted to disable CIMD support while using the Azure Provider constructor, I couldn't, because both are passing all arguments explicitly. So instead of being able to pass 'enable_cimd: False' to the AzureProvider, which works when passed to the OAuthProxy constructor, I'm doing this unfortunate thing instead after making an AzureProvider instance: