Skip to content

State Machine Designer MCP tool

MCP findutils:state_machine_designer

Validate a finite state machine given as nodes and edges and return a normalized machine config plus issues. Checks for missing ids, dangling transitions, duplicate labels, missing or multiple initial states, unreachable states, and outgoing transitions from final states. The config matches the designer's "Export Code" output ({ id, initial, states: { State: { EVENT: Target } } }).

Arguments

application/json
  • nodes

    array required

    States: [{ id, data: { label, stateType: initial|normal|final, description? } }]. Flat { id, label, stateType } objects are also accepted.

  • edges

    array required

    Transitions: [{ source, target, label }] where label is the event name (uppercased in the config; "EVENT" when missing).

  • machine_id

    string optional

    Id written into the config. Default: "stateMachine". Default "stateMachine".

Example arguments

Verified
{
  "nodes": [
    {
      "id": "s1",
      "data": {
        "label": "Idle",
        "stateType": "initial"
      }
    },
    {
      "id": "s2",
      "data": {
        "label": "Done",
        "stateType": "final"
      }
    }
  ],
  "edges": [
    {
      "source": "s1",
      "target": "s2",
      "label": "FINISH"
    }
  ]
}