{"version":"2.1.271","anchor":"mcp-oauth-flow-no-longer-retriesholds-pending-flow-state-on","canonical_anchor":"mcp-oauth-flow-no-longer-retriesholds-pending-flow-state-on","heading":"OAuth flows no longer retry after an explicit denial","tier":"notice","area":"Elsewhere","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.271\/e\/mcp-oauth-flow-no-longer-retriesholds-pending-flow-state-on","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.271","markdown":"### OAuth flows no longer retry after an explicit denial\n\nExplicitly denying an OAuth prompt (MCP or device-flow) is now treated differently from a timeout, skipping the retry path\n\n**What**\n\nWhen you explicitly deny an OAuth authorization prompt, Claude Code now recognizes this as a deliberate choice rather than a failure. Previously, an explicit denial was handled the same way as a timeout or generic OAuth error, which triggered a retry\/reset path (clearing stored client IDs and holding pending flow state). Now, error text matching `OAuth error: access_denied` is detected and excluded from that retry path.\n\n- This applies to the MCP OAuth flow.\n\n- This applies to the OAuth device-authorization flow.\n\n**Why**\n\nThis avoids unnecessary retries or state resets when you've intentionally said no to an OAuth connection, rather than treating your denial like a transient network or timeout failure.\n\n- Area: Elsewhere\n- Tier: You'll notice\n- Useful: 2\/5\n- Signal: 1\/5"}