Follow Discord
Sweep 22 Sep 2026 · 17:19Z Build v2.1.280 501 read Stable v2.1.267 Latest v2.1.280 Next v2.1.280 Feeds RSS JSON llms.txt Unofficial
Claude Code v2.1.274 ·

MCP tools now support 'step-up' re-authentication for insufficient permissions

MCP tool calls that fail from insufficient permissions now prompt you to re-authenticate for the missing scope, instead of a generic credential error

TierYou'll noticehow much it should matter to you
Useful3my rating, 1 to 5
Signal1worth watching, 1 to 5
AreaMCPwhat it touches
KindImprovementsin v2.1.274,
Group of 7 You'll notice

MCP tool calls that fail from insufficient permissions now prompt you to re-authenticate for the missing scope, instead of a generic credential error

What

  • MCP auth failures are now classified into two distinct kinds: credential_rejected (a flat, generic rejection) and a new step_up, which covers a 403 "insufficient_scope" response. This classification is handled by a new shared function/classifier instead of duplicated inline checks.
  • When an MCP tool call gets a 403 insufficient-scope error, Claude Code now surfaces a specific message asking you to re-authenticate for the additional permissions needed, rather than treating it like a generic expired or rejected credential.
  • Whether a step-up is pending is tracked per MCP client connection (via pendingStepUpScope), and this pending state is now properly cleared: when a fresh 401 (not 403) response is seen, when the underlying credential itself disappears (for example, "no token data found" or "token expired without refresh token"), and it's now only checked/set when the original request actually carried an Authorization header.
  • The auth-challenge interceptor now also ignores responses to requests that had no Authorization header at all, and parses the WWW-Authenticate header's scope through a shared helper instead of inline regular expressions.

Why Previously, an MCP server asking for additional OAuth permissions looked the same as a fully rejected or expired credential, so Claude Code could only tell you to "re-authenticate" without saying why. Now it can tell you specifically that more permissions (scope) are needed, and correctly resets that state once you've re-authenticated or the credential changes.

Read from
Names in the bundle/mcp
Since it was published

The entry above is what we published on the day. These lines were added later, as Anthropic's own pages caught up, and they sit beside the original rather than replacing it.

Confirmed since Anthropic's documentation has since written up /mcp, on Run Claude Code programmatically. * `/model`, `/effort`, `/fast`, `/color`, and `/rename` accept the value as an argument, for example `/model sonnet`, and `/mcp` with no argument prints a text summary of server status. These forms require Claude Code v2.1.205 or later and… headless see the edit
Added since A small documentation edit on Connect Claude Code to tools via MCP touched a line naming /mcp after this was published. * **In an interactive session**: `/mcp` shows the server as pending while Claude Code reconnects. After five failed attempts, Claude Code marks the server as failed, or as needing authentication when the server needs authorizing again. Whe… mcp see the edit
How sure we are
Two sources agreeTwo things we can check say the same as this entry.
Anthropic's documentation agreesA small documentation edit on Connect Claude Code to tools via MCP touched a line naming /mcp after this was published.
Anthropic's release notes agreeFixed MCP tool calls refused with 403 insufficient_scope being reported as an expired sign-in: the error now names the missing permissions…

See this entry in the whole of v2.1.274 →

Feedback