CLAUDE_CODE_DISABLE_STRUCTURED_OUTPUTS

Updated by

CLAUDE_CODE_DISABLE_STRUCTURED_OUTPUTS is a Claude Code environment variable: Turns structured outputs off for gateways or providers (such as Mantle) that reject them. The changelog ties this to session titles, memory recall and prompt hooks failing in that setup; with the variable set, Claude Code skips the structured-outputs path those features use. Added in v2.1.288. Added in v2.1.288 and still present in v2.1.294. It is listed in the official reference.

StatusPresent in v2.1.294
AddedAdded in v2.1.288
CategoryFeature toggles
Official docsListed

How to set it

For one session, export it in the shell that starts Claude Code:

export CLAUDE_CODE_DISABLE_STRUCTURED_OUTPUTS=<value>
claude

To apply it to every session, add it to the env object of a settings file:

// ~/.claude/settings.json
{
  "env": {
    "CLAUDE_CODE_DISABLE_STRUCTURED_OUTPUTS": "<value>"
  }
}

Release notes that mention it

Related variables

Frequently asked questions

What does CLAUDE_CODE_DISABLE_STRUCTURED_OUTPUTS do?

Turns structured outputs off for gateways or providers (such as Mantle) that reject them. The changelog ties this to session titles, memory recall and prompt hooks failing in that setup; with the variable set, Claude Code skips the structured-outputs path those features use. Added in v2.1.288.

Which Claude Code version has CLAUDE_CODE_DISABLE_STRUCTURED_OUTPUTS?

Added in v2.1.288 and still present in v2.1.294.

How do I set CLAUDE_CODE_DISABLE_STRUCTURED_OUTPUTS?

Export it before starting Claude Code (export CLAUDE_CODE_DISABLE_STRUCTURED_OUTPUTS=value), or add it to the "env" object in ~/.claude/settings.json to apply it to every session.

All variables, searchable: Claude Code environment variables.