Tool tree
FlowLens turns a selected workflow path into live, typed context for WebMCP agents.
Implementation
gradeNot graded
gradeNot graded
get_workflow_summaryAnswer
Read the current workflow, validation, selection, and run summary.
View tool JSON
{
"name": "get_workflow_summary",
"kind": "answer",
"impl": "imperative",
"description": "Read the current workflow, validation, selection, and run summary.",
"inputSchema": {
"type": "object",
"properties": {
"detail": {
"type": "string",
"enum": [
"compact",
"nodes",
"runs"
]
}
},
"additionalProperties": false
}
}list_workflow_node_typesAnswer
Read the finite node catalog and safe configuration contracts.
View tool JSON
{
"name": "list_workflow_node_types",
"kind": "answer",
"impl": "imperative",
"description": "Read the finite node catalog and safe configuration contracts.",
"inputSchema": {
"type": "object",
"properties": {
"category": {
"type": "string",
"enum": [
"all",
"logic",
"actions",
"flow"
]
}
},
"additionalProperties": false
}
}add_workflow_nodeAction
Add a configured node at a bounded canvas position with a version guard.
View tool JSON
{
"name": "add_workflow_node",
"kind": "act",
"impl": "imperative",
"description": "Add a configured node at a bounded canvas position with a version guard.",
"inputSchema": {
"type": "object",
"properties": {
"nodeType": {
"type": "string",
"enum": [
"event",
"transform",
"condition",
"assign",
"notification",
"delay",
"end"
]
},
"x": {
"type": "number",
"minimum": 0,
"maximum": 1400
},
"y": {
"type": "number",
"minimum": 0,
"maximum": 600
},
"expectedVersion": {
"type": "integer",
"minimum": 1,
"maximum": 100000,
"description": "Workflow version visible in the app."
},
"config": {
"oneOf": [
{
"type": "object",
"properties": {
"eventType": {
"type": "string",
"minLength": 1,
"maxLength": 120
}
},
"required": [
"eventType"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"mappings": {
"type": "array",
"minItems": 1,
"maxItems": 20,
"items": {
"type": "object",
"properties": {
"from": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"to": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"defaultValue": {
"type": "string",
"minLength": 1,
"maxLength": 120
}
},
"required": [
"from",
"to"
],
"additionalProperties": false
}
}
},
"required": [
"mappings"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"field": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"operator": {
"type": "string",
"enum": [
"equals",
"not_equals",
"exists"
]
},
"value": {
"type": "string",
"minLength": 1,
"maxLength": 120
}
},
"required": [
"field",
"operator"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"queue": {
"type": "string",
"minLength": 1,
"maxLength": 120
}
},
"required": [
"queue"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"channel": {
"type": "string",
"enum": [
"in_app",
"email"
]
},
"template": {
"type": "string",
"minLength": 1,
"maxLength": 120
}
},
"required": [
"channel",
"template"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"milliseconds": {
"type": "integer",
"minimum": 0,
"maximum": 60000
}
},
"required": [
"milliseconds"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"outcome": {
"type": "string",
"minLength": 1,
"maxLength": 120
}
},
"required": [
"outcome"
],
"additionalProperties": false
}
]
}
},
"required": [
"nodeType",
"x",
"y",
"expectedVersion"
],
"additionalProperties": false
}
}update_workflow_nodeAction
Update an allowed node configuration field with a version guard.
View tool JSON
{
"name": "update_workflow_node",
"kind": "act",
"impl": "imperative",
"description": "Update an allowed node configuration field with a version guard.",
"inputSchema": {
"type": "object",
"properties": {
"nodeId": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"field": {
"type": "string",
"enum": [
"condition.field"
]
},
"value": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"expectedVersion": {
"type": "integer",
"minimum": 1,
"maximum": 100000,
"description": "Workflow version visible in the app."
}
},
"required": [
"nodeId",
"field",
"value",
"expectedVersion"
],
"additionalProperties": false
}
}connect_workflow_nodesAction
Create a valid non-duplicate connection with a version guard.
View tool JSON
{
"name": "connect_workflow_nodes",
"kind": "act",
"impl": "imperative",
"description": "Create a valid non-duplicate connection with a version guard.",
"inputSchema": {
"type": "object",
"properties": {
"source": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"sourcePort": {
"type": "string",
"enum": [
"output",
"true",
"false"
]
},
"target": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"targetPort": {
"type": "string",
"enum": [
"input"
]
},
"expectedVersion": {
"type": "integer",
"minimum": 1,
"maximum": 100000,
"description": "Workflow version visible in the app."
}
},
"required": [
"source",
"sourcePort",
"target",
"targetPort",
"expectedVersion"
],
"additionalProperties": false
}
}validate_workflowAction
Run structural, reachability, configuration, and cycle checks.
View tool JSON
{
"name": "validate_workflow",
"kind": "act",
"impl": "imperative",
"description": "Run structural, reachability, configuration, and cycle checks.",
"inputSchema": {
"type": "object",
"properties": {
"workflowVersion": {
"type": "integer",
"minimum": 1,
"maximum": 100000,
"description": "Workflow version visible in the app."
}
},
"additionalProperties": false
}
}list_workflow_fixturesAnswer
Read safe fixture metadata without returning complete payloads.
View tool JSON
{
"name": "list_workflow_fixtures",
"kind": "answer",
"impl": "imperative",
"description": "Read safe fixture metadata without returning complete payloads.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}run_workflow_simulationAction
Run a deterministic fixture and open its trace in the workspace.
View tool JSON
{
"name": "run_workflow_simulation",
"kind": "act",
"impl": "imperative",
"description": "Run a deterministic fixture and open its trace in the workspace.",
"inputSchema": {
"type": "object",
"properties": {
"fixtureId": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"expectedVersion": {
"type": "integer",
"minimum": 1,
"maximum": 100000,
"description": "Workflow version visible in the app."
}
},
"required": [
"fixtureId",
"expectedVersion"
],
"additionalProperties": false
}
}get_run_summaryAnswer
Read a bounded run result, branch path, and step identifiers.
View tool JSON
{
"name": "get_run_summary",
"kind": "answer",
"impl": "imperative",
"description": "Read a bounded run result, branch path, and step identifiers.",
"inputSchema": {
"type": "object",
"properties": {
"runId": {
"type": "string",
"minLength": 1,
"maxLength": 120
}
},
"required": [
"runId"
],
"additionalProperties": false
}
}compare_workflow_runsAction
Compare two runs by branch, outcome, status, and duration.
View tool JSON
{
"name": "compare_workflow_runs",
"kind": "act",
"impl": "imperative",
"description": "Compare two runs by branch, outcome, status, and duration.",
"inputSchema": {
"type": "object",
"properties": {
"beforeRunId": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"afterRunId": {
"type": "string",
"minLength": 1,
"maxLength": 120
}
},
"required": [
"beforeRunId",
"afterRunId"
],
"additionalProperties": false
}
}