n8n-io/n8n · error · NodeOperationError
This fallback model is not supported in
Error message
This fallback model is not supported in ${version} version of the Agent node. Please upgrade the Agent node to the latest version. What it means
Fires in Tools Agent V2 execute when the model wired into the fallback Chat Model input is a Responses-API model: the LangChainJS default call handling for Responses API + tools is broken in this node version, so such a fallback is rejected and the user is told to upgrade the Agent node (V3 handles calls differently).
Solutions
- Upgrade the Agent node to V3 so the fallback model also uses the working call path.
- Swap the fallback model for a non-Responses-API variant.
- If fallback is not strictly needed, disable the needsFallback option.
Defensive patterns
Strategy: validation
Validate before calling
const fallbackModel = needsFallback ? await getChatModel(this, 1) : null;
if (fallbackModel && checkIsResponsesApi(fallbackModel)) {
throw new NodeOperationError(this.getNode(), 'Fallback model uses Responses API — upgrade Agent to V3 or pick a different fallback.');
} Type guard
function isResponsesApiModel(model: unknown): boolean {
return checkIsResponsesApi(model as BaseChatModel);
} Prevention
- Use a non-Responses-API model as the fallback on V2.
- Upgrade to V3 to use Responses-API fallbacks.
- Test the fallback path explicitly during development.
When it happens
Trigger: Tools Agent V2 with needsFallback=true and the model connected to the Fallback Model input uses the Responses API.
Common situations: User added a fallback model that happens to be a Responses-API model; same model used for both primary and fallback on V2.
Related errors
- This model is not supported in
- Please connect a model to the Fallback Model input or…
- Please connect a model to the Fallback Model input or…
- The "text" parameter is empty.
- Human-in-the-Loop nodes cannot be used inside a sub-agent…
AI-assisted analysis of n8n-io/n8n@5ac6606e81 (2026-08-12).
Data as JSON: /api/errors/c9f0125f3a21e6a0.
Report an issue: GitHub.
Appendix: source
Thrown at packages/@n8n/nodes-langchain/nodes/agents/Agent/agents/ToolsAgent/V2/execute.ts:287
0,
) as number;
const needsFallback = this.getNodeParameter('needsFallback', 0, false) as boolean;
const memory = await getOptionalMemory(this);
const model = await getChatModel(this, 0);
assert(model, 'Please connect a model to the Chat Model input');
const fallbackModel = needsFallback ? await getChatModel(this, 1) : null;
// FIXME: remove when this is fixed: https://github.com/langchain-ai/langchainjs/pull/9082
// Responses API + tools is broken when using langchain default call handling. In V3 calls are handled differently, so it works.
if (checkIsResponsesApi(model)) {
throw new NodeOperationError(
this.getNode(),
`This model is not supported in ${version} version of the Agent node. Please upgrade the Agent node to the latest version.`,
);
}
if (checkIsResponsesApi(fallbackModel)) {
throw new NodeOperationError(
this.getNode(),
`This fallback model is not supported in ${version} version of the Agent node. Please upgrade the Agent node to the latest version.`,
);
}
if (needsFallback && !fallbackModel) {
throw new NodeOperationError(
this.getNode(),
'Please connect a model to the Fallback Model input or disable the fallback option',
);
}
// Check if streaming is enabled
enableStreaming = this.getNodeParameter('options.enableStreaming', 0, true) as boolean;
for (let i = 0; i < items.length; i += batchSize) {
const batch = items.slice(i, i + batchSize);
const batchPromises = batch.map(async (_item, batchItemIndex) => {View on GitHub (pinned to 5ac6606e81)