Virtual Agent
Run an LLM as a tool-calling agent. The agent receives a prompt, decides which
of the connected AI::VirtualTool nodes to call (and with what arguments), and
the workflow routes execution into the chosen tool's branch. Use this for
flexible "decide-then-do" flows where the next step depends on the user
request.
With Conversation memory enabled, the agent also exposes a session_id
input: calls sharing the same session id form a multi-turn conversation,
including the agent's past tool calls. Memory only activates when a non-empty
session id arrives at run time. Pair with AI::VirtualToolResult on the tool
branches to write each tool's outcome back into the session so the model knows
what happened on the next turn.
For exposing your tools to external MCP clients (Claude Desktop, IDE plugins,
…) use AI::MCPEndpoint instead.
Pre-requisite: Install an AI provider application from Profile > {Organization} > Applications.
The provider must support tool/function calling.
Parameters
Configured AI application supporting tool calling.
Model identifier supporting tool calling. Defaults to the provider's recommended model when left empty.
System prompt describing the agent's role, when it should call which tool, and any output rules. Sent before the user prompt on every call.
Enables multi-turn conversation memory and the session_id input
connector. Exchanges sharing the same session id are replayed as
conversation history. Off by default.
Only shown when Conversation memory is enabled. How long an idle
conversation is kept, in seconds (default 3600). The TTL is refreshed on
every exchange.
Only shown when Conversation memory is enabled. Maximum number of past
messages replayed per call (default 20). Older messages are dropped
first.
Input
The user message the agent must satisfy.
Only present when Conversation memory is enabled. Optional. Accepted
types: PlainText or Integer. Runs sharing the same session id share
conversation history. When left unwired or empty at run time, the call is
treated as a one-shot call without memory.
Output
Connect one or more AI::VirtualTool nodes here. The agent picks which to
call per prompt, and the matching tool branch is executed with the
arguments the model produced.
PlainText, optional. The model's plain-text answer when it chose not to
call any tool. Skipped (its children are pruned) whenever a tool was
called.