agents · review · first seen Nov 7, 10:31 UTC
Anthropic changes Claude Code auto mode and MCP tasks
Claude Code v2.1.319 shipped changes to auto mode checks, MCP tasks, and permission handling. Builders should care because gateway configuration and unattended terminal runs may now take different paths at a tool call.
In short
- With telemetry or feature flags off, uncheckable auto mode calls ask or deny; the classifier fallback is no longer automatic.
- MCP tasks move to the background in the terminal, with an environment variable to wait inside the tool call.
- Permission prompts can become denials that let the turn continue.
What shipped
Claude Code v2.1.319 was released on 06 Nov at 17:04. Its auto mode change is conditional: when telemetry or feature flags are off, including behind LLM gateways, calls the server cannot check are asked about or denied. Claude Code no longer falls back to its built-in classifier in that case. That is a change in how an uncheckable call is handled, not a stated change to every auto mode call. [1][2]
The release notes give gateway operators two controls. Set CLAUDE_CODE_AUTO_MODE_SERVER=0 to keep using the built-in classifier. Behind an LLM gateway, CLAUDE_CODE_AUTO_MODE_SERVER=1 enables the server-side check even when CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS is set. If managed settings set the latter, they must also set the former to 1 for that server-side path. The notes say Bedrock, Vertex and Foundry are unchanged by this auto mode change. [1]
Claude Code shipped support for MCP tasks in the terminal. When an MCP server runs a tool call as a task, Claude Code moves it to the background immediately and tells Claude the result when it finishes. CLAUDE_CODE_DISABLE_MCP_TASK_BACKGROUND makes Claude Code wait for that MCP task within its tool call instead. This is a choice about when the tool call returns, not a claim that the underlying task completes sooner. [1]
A separate permissions.denyInsteadOfPrompting setting denies a tool call that would wait for a permission prompt and lets the turn continue. The release notes name terminal sessions, subagents and teammates as covered contexts. It changes a blocking prompt into a denial; it does not grant the requested permission. [1]
Why it matters if you build
For a builder running Claude Code through an LLM gateway, the first decision is which check path is intended. If telemetry or feature flags are off, leaving the server unable to check a call can now produce a question or denial rather than a built-in classifier decision. If managed settings disable experimental betas and the operator wants the server-side check, the release notes require CLAUDE_CODE_AUTO_MODE_SERVER=1 as well. If the intention is to retain the built-in classifier, the documented switch is CLAUDE_CODE_AUTO_MODE_SERVER=0. I would review that choice before relying on an unattended run. [1]
For a terminal workflow that delegates work to an MCP server, backgrounding changes the handoff. Claude Code moves on from the tool call while the task is still running, then receives its result later. A workflow that needs the result inside the original tool call can use CLAUDE_CODE_DISABLE_MCP_TASK_BACKGROUND. The excerpts give no duration, concurrency limit or resource-cost figure. I would test the ordering that matters to my workflow rather than assume a throughput gain. [1]
For an unattended terminal session or a delegated run, permissions.denyInsteadOfPrompting offers a way to avoid waiting on a prompt. The tradeoff is direct: the call is denied and the turn continues. I would use it only where a denied action is preferable to a paused run, then inspect how the rest of the turn responds. The supplied material does not say that the requested action is retried or completed. [1]
How to try it today
- Check that your terminal is running Claude Code v2.1.319 before testing these shipped changes.
- If you use an LLM gateway with telemetry or feature flags off, test an auto mode call the server cannot check and observe whether it asks or denies.
- Choose the documented auto mode path deliberately: CLAUDE_CODE_AUTO_MODE_SERVER=0 for the built-in classifier, or =1 for the server-side check behind a gateway with experimental betas disabled.
- Run an MCP tool call that the server runs as a task. Compare the default background handoff with CLAUDE_CODE_DISABLE_MCP_TASK_BACKGROUND set.
- In a terminal test, set permissions.denyInsteadOfPrompting and observe a call that would otherwise wait for a permission prompt. Check what the continued turn does after denial.
What we checked
Every claim below was walked down the source ladder. The rung is how close the source is to the thing itself; the tense is the source's own.
-
shipped L0 · primary
Claude Code v2.1.319 was released on 06 Nov at 17:04.
per GitHub releases · anthropics/claude-code (L0) -
shipped L0 · primary
With telemetry or feature flags off, auto mode asks about or denies calls the server cannot check instead of falling back to the built-in classifier.
per GitHub releases · anthropics/claude-code (L0) -
shipped L0 · primary
Claude Code moves MCP tool calls run as tasks to the background and tells Claude the result when they finish.
per GitHub releases · anthropics/claude-code (L0) -
shipped L0 · primary
The permissions.denyInsteadOfPrompting setting denies tool calls that would wait on a permission prompt and continues the turn.
per GitHub releases · anthropics/claude-code (L0)
What is not confirmed
The excerpts do not establish how often a server cannot check a call, which such calls will be asked about rather than denied, or whether the new path changes an application's completion rate. They give no measured latency or cost effect for MCP background tasks, and no guarantee that a continued turn succeeds after a permission denial. Those are local test questions, not reported release outcomes. [1][2][3]
Who should act, who should wait
I would act now if I operated Claude Code behind an LLM gateway, depended on a synchronous MCP task result, or ran terminal and delegated turns that could stall at permission prompts. I would check the relevant settings and exercise a representative call before relying on the behavior. I would wait on a broader rollout decision if it required measured effects on latency, costs or completion: the supplied notes specify controls and behavior, not those results. Bedrock, Vertex and Foundry users have no stated auto mode change here, though the separately listed MCP and permission changes may still warrant a workflow test. [1][2][3]
Sources
- v2.1.319 — GitHub releases · anthropics/claude-code L0 · primary