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 } } }).
This page documents the HTTP endpoint POST /api/tools/state-machine-designer/execute. See the MCP reference →
Call it over REST
POST https://api.findutils.com/api/tools/state-machine-designer/execute · no API keys · 60 requests/min per IP
Execute — verified arguments
curl -X POST https://api.findutils.com/api/tools/state-machine-designer/execute \
-H "Content-Type: application/json" \
-d '{
"nodes": [
{
"id": "s1",
"data": {
"label": "Idle",
"stateType": "initial"
}
},
{
"id": "s2",
"data": {
"label": "Done",
"stateType": "final"
}
}
],
"edges": [
{
"source": "s1",
"target": "s2",
"label": "FINISH"
}
]
}' Parameter schema for this endpoint
curl https://api.findutils.com/api/tools/state-machine-designer Input schema
| Argument | Type | Required | Description |
|---|---|---|---|
| nodes | array | yes | States: [{ id, data: { label, stateType: initial|normal|final, description? } }]. Flat { id, label, stateType } objects are also accepted. |
| edges | array | yes | Transitions: [{ source, target, label }] where label is the event name (uppercased in the config; "EVENT" when missing). |
| machine_id | string | no | 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"
}
]
} Also an MCP tool
Claude, Cursor, and any MCP client can call this tool as
findutils:state_machine_designer after one connect command.
Connect once
claude mcp add findutils --transport http https://mcp.findutils.com/ More Validation tools
Email Validate
Validate an email address and break it into local / domain / TLD parts.
Html Formatter
Format (beautify) or minify HTML and return the result with a tag-balance validation report.
Json Validate
Validate a JSON string.
Openapi Validator
Validate an OpenAPI 3.x (or Swagger 2.0) document given as JSON or YAML and return a report with errors, warnings, and summary info (title,
Phone Format
Format a phone number to E.164 (+CCNNNNNNN…) given an optional country calling code.
Url Validate
Validate that a string is a well-formed URL and (optionally) require HTTPS.
Wvw Apps Json Generator
Build and validate an apps.json manifest for wvw.dev (World Vibe Web) from a store object and a list of apps.
Xml Formatter
Beautify or minify an XML document and return the formatted text.