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 } } }).

Needs an API key. Running a tool needs an API key. Keys are not for sale yet: ask for early access. About API keys

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"
    }
  ]
}