run_workflow
Executes a saved workflow by sending its requests in order, passing values between steps and stopping at the first failure; returns each step's status, set variables, and final response.
Instructions
Run a saved workflow: its requests are sent in order, values are carried from one response to the next (never shown if secret), and it stops at the first step that fails. Returns each step's status and the variables it set, plus the last response in full.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"name": "<name>"
},
"name": "run_workflow"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | The workflow's name (see list_workflows). | |
| cleanup | No | Remove the variables this run stored once it is done (the later steps have used them by then), so runs do not leave values behind. Values extracted with `scope: "run"` are never stored at all. | |
| variables | No | {{variable}} values for every step of this run. | |
| include_last_response | No | Whether the result carries the last step's full response. Default: yes, unless a `return` produced the output (then it is left out, since the output is the answer). `true` or `false` overrides. The step results, the variables set and the `return` output are always there. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ok | Yes | True when every step passed. | |
| steps | Yes | ||
| output | No | What the last `return` step produced (see `Step::return`): the answer the run was written to give. | |
| workflow | Yes | ||
| cancelled | No | True when the run was cancelled before it finished. | |
| steps_run | Yes | How many steps ran (a failed step stops the rest). | |
| cleaned_up | No | With `cleanup`: the variables the run stored and then removed. | |
| last_response | No | The last response that came back, in full. | |
| stopped_early | No | True when a `stop_if` ended the run before the last step. |