run_workflow
Advance a planned VMware workflow through approval gates, pausing for human sign-off and returning pending steps when external dispatch is required.
Instructions
[WRITE] Advance a planned workflow. Pauses at approval gates.
IMPORTANT — this MCP server has no dispatcher and cannot call other skills' MCP tools itself. Steps are recorded as 'not_executed' and the run finishes with outcome='dispatch_required' (NOT 'completed'), returning each pending step's skill/tool/params. YOU (the calling agent) must then perform those skill/tool calls in order. A workflow only reaches 'completed' when every step genuinely executed via a real dispatcher (embedders supplying one to WorkflowExecutor).
Safety: the workflow is structurally reviewed before each run. Runs are REFUSED if review finds ungated destructive or unclassifiable steps, or destructive steps inside a parallel group. For a built-in template, force=True overrides that (forced runs are written to the workflow audit log). For a custom workflow (create_workflow, design_workflow, or a YAML template) an ungated step is refused even with force=True: add a require_approval step before it instead.
When an approval gate is reached, the workflow pauses with state 'awaiting_approval'. Call approve() to continue.
Returns: Current workflow state with 'outcome' (completed | awaiting_approval | dispatch_required | failed) and, when dispatch is required, a 'pending_dispatch' list of steps for the agent to perform.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| force | No | Bypass blocking review findings on a built-in template. Use only with explicit human consent; the bypass is audited. Has no effect on a custom workflow's missing approval gate. | |
| workflow_id | Yes | The workflow ID from plan_workflow. |