| name | workflow |
| description | Use when the user asks to create, build, inspect, validate, or run computational workflows, DAG pipelines, relaxation→static chains, NEB/IRC workflows, or HPC job submission flows.
|
CatGO Workflow Skill
All MCP workflow operations use the single catgo_workflow tool with an action parameter.
Current Reality
Do not assume old workflow docs are still correct.
Important current behavior:
create creates a workflow that already contains one structure_input node.
run starts execution immediately. It does not open a confirmation dialog.
connect defaults both handles to structure if omitted.
node_types is only a discovery list. It does not give full node schema.
Quick Reference
| Action | Purpose | Required Params |
|---|
list | List all workflows | — |
templates | List available templates | — |
node_types | List node types by category | category? |
create | Create workflow | name, template_id? |
get | Read workflow graph | workflow_id |
add_node | Add node | workflow_id, node_type, params? |
remove_node | Remove node | workflow_id, node_id |
connect | Connect nodes | workflow_id, from_id, to_id, from_handle?, to_handle? |
set_params | Update params | workflow_id, node_id, params |
validate | Validate graph | workflow_id |
run | Start execution immediately | workflow_id, run_config? |
pause | Pause workflow | workflow_id |
resume | Resume workflow | workflow_id, run_config? |
status | Get run status | workflow_id |
step_error | Get failure detail | workflow_id, step_id |
Safe Build Sequence
1. Discover
- Call
node_types first for coarse discovery.
- Call
templates if the user wants a preset.
2. Create
{"action": "create", "name": "TiO2 slab workflow"}
Immediately after create:
- Call
get
- Check the graph
- Reuse the auto-created
structure_input unless the workflow truly needs multiple independent inputs
3. Add Nodes
{"action": "add_node", "workflow_id": "...", "node_type": "geo_opt"}
{"action": "add_node", "workflow_id": "...", "node_type": "single_point"}
4. Set Parameters
{"action": "set_params", "workflow_id": "...", "node_id": "...", "params": {"software": "vasp", "ENCUT": 520}}
5. Connect Carefully
Only omit handles when both sides are obviously single-structure nodes.
Safer form:
{
"action": "connect",
"workflow_id": "...",
"from_id": "n1",
"to_id": "n2",
"from_handle": "structure",
"to_handle": "structure"
}
Do Not Do These
- Do not assume
create returns an empty graph.
- Do not blindly add another
structure_input after create.
- Do not assume
connect can guess the right handle for multi-port nodes.
- Do not treat
validate warnings as harmless.
- Do not call
run before the user has provided a valid run configuration when HPC settings matter.
Minimal Reliable Pattern
node_types
create
get
add_node
set_params
connect with explicit handles when needed
validate
get
run