n8n-io/n8n · error · NodeOperationError

Only the "load", "update", "insert", and "retrieve-as-tool"…

Error message

Only the "load", "update", "insert", and "retrieve-as-tool" operation modes are supported with execute

What it means

Mode-validation error raised in the vector store node's execute(). It fires when the node's selected operation mode is none of the four modes the runtime execute path supports (load, update, insert, retrieve-as-tool). Generic guard mapping unsupported mode selections to a clear error instead of undefined behavior.

Solutions

  1. Set the node's operation mode to one of load, update, insert, or retrieve-as-tool.
  2. Check the mode parameter value for typos or stale workflow data referencing a removed mode.
  3. For insert-like behaviour use 'insert'; for querying inside an AI chain use 'retrieve-as-tool'.
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at packages/@n8n/ai-utilities/src/utils/vector-store/createVectorStoreNode/createVectorStoreNode.ts:466 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of n8n-io/n8n@5ac6606e81 (2026-08-12). Data as JSON: /api/errors/5f353acd85a161f6. Report an issue: GitHub.

Appendix: source

Thrown at packages/@n8n/ai-utilities/src/utils/vector-store/createVectorStoreNode/createVectorStoreNode.ts:466

				if (mode === 'retrieve-as-tool') {
					const items = this.getInputData(0);
					const resultData = [];

					for (let itemIndex = 0; itemIndex < items.length; itemIndex++) {
						const docs = await handleRetrieveAsToolExecuteOperation(
							this,
							args,
							embeddings,
							itemIndex,
						);
						resultData.push(...docs);
					}

					return [resultData];
				}

				throw new NodeOperationError(
					this.getNode(),
					'Only the "load", "update", "insert", and "retrieve-as-tool" operation modes are supported with execute',
				);
			} catch (error) {
				normalizeVectorStoreError(this.getNode(), error);
			}
		}

		/**
		 * Method to supply data to AI nodes
		 * Supports 'retrieve' and 'retrieve-as-tool' operation modes
		 */
		async supplyData(this: ISupplyDataFunctions, itemIndex: number): Promise<SupplyData> {
			try {
				const mode = this.getNodeParameter('mode', 0) as NodeOperationMode;

				// Get the embeddings model connected to this node
				const embeddings = (await this.getInputConnectionData(

View on GitHub (pinned to 5ac6606e81)