← WebMCP Directory

Tool tree

hexmend.hex-machina.workers.dev

AI & AgentsTools verified
Website
An agent gym where humans decide what matters and agents prove the smallest repair, over seven WebMCP tools on one executable graph.
Explore capabilities
    inspect_spellAction

    Inspect the current spell graph, its version, desired outcome, and sacred constraints.

    View tool JSON
    {
      "name": "inspect_spell",
      "kind": "act",
      "impl": "imperative",
      "description": "Inspect the current spell graph, its version, desired outcome, and sacred constraints.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "nodeIds": {
            "type": "array",
            "description": "Optional unique rune IDs to include; omit to inspect the complete spell.",
            "items": {
              "type": "string",
              "description": "A rune ID returned by reset or inspect_spell.",
              "minLength": 1,
              "maxLength": 128,
              "enum": [
                "moonwell",
                "moonrise",
                "multiply",
                "summon-ducks",
                "umbrella",
                "pour",
                "room",
                "moonflower",
                "bloom",
                "soften",
                "mirror",
                "release"
              ]
            },
            "minItems": 1,
            "maxItems": 12,
            "uniqueItems": true
          }
        },
        "additionalProperties": false
      }
    }
    trace_effectAction

    Trace bounded, ordered causal paths from a source or into a known spell effect, including cycles and type violations.

    View tool JSON
    {
      "name": "trace_effect",
      "kind": "act",
      "impl": "imperative",
      "description": "Trace bounded, ordered causal paths from a source or into a known spell effect, including cycles and type violations.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "effectId": {
            "type": "string",
            "description": "A side-effect ID returned by simulate_cast; omit to trace the current active effect.",
            "minLength": 1,
            "maxLength": 128,
            "enum": [
              "flooded-observatory"
            ]
          },
          "sourceId": {
            "type": "string",
            "description": "Optional active source rune to trace forward; mutually exclusive with effectId.",
            "minLength": 1,
            "maxLength": 128,
            "enum": [
              "moonwell"
            ]
          },
          "maxDepth": {
            "type": "integer",
            "description": "Maximum number of directed edges per returned path; defaults to 8.",
            "minimum": 1,
            "maximum": 12
          },
          "maxPaths": {
            "type": "integer",
            "description": "Maximum number of ordered paths to return; defaults to 3.",
            "minimum": 1,
            "maximum": 5
          }
        },
        "oneOf": [
          {
            "required": [
              "effectId"
            ],
            "not": {
              "required": [
                "sourceId"
              ]
            }
          },
          {
            "required": [
              "sourceId"
            ],
            "not": {
              "required": [
                "effectId"
              ]
            }
          },
          {
            "not": {
              "anyOf": [
                {
                  "required": [
                    "effectId"
                  ]
                },
                {
                  "required": [
                    "sourceId"
                  ]
                }
              ]
            }
          }
        ],
        "additionalProperties": false
      }
    }
    simulate_castAction

    Simulate the current spell or a current proposed patch without mutating editor state, and return an ordered event trace.

    View tool JSON
    {
      "name": "simulate_cast",
      "kind": "act",
      "impl": "imperative",
      "description": "Simulate the current spell or a current proposed patch without mutating editor state, and return an ordered event trace.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "patchId": {
            "type": "string",
            "description": "Optional current patch ID from propose_spell_patch to simulate as an unapplied preview.",
            "pattern": "^patch-(umbrella|dampener|temporal-guard|direct)-v[0-9]+$",
            "maxLength": 128
          }
        },
        "additionalProperties": false
      }
    }
    explain_side_effectAction

    Return the smallest typed responsible subgraph, ordered causal steps, simulator-rule premises, and an edge-necessity proof for a side effect.

    View tool JSON
    {
      "name": "explain_side_effect",
      "kind": "act",
      "impl": "imperative",
      "description": "Return the smallest typed responsible subgraph, ordered causal steps, simulator-rule premises, and an edge-necessity proof for a side effect.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "sideEffectId": {
            "type": "string",
            "description": "The side-effect identifier returned by simulate_cast.",
            "minLength": 1,
            "maxLength": 128,
            "enum": [
              "flooded-observatory"
            ]
          }
        },
        "required": [
          "sideEffectId"
        ],
        "additionalProperties": false
      }
    }
    set_sacred_constraintAction

    Add, update, or remove a reversible human-authored preservation constraint.

    View tool JSON
    {
      "name": "set_sacred_constraint",
      "kind": "act",
      "impl": "imperative",
      "description": "Add, update, or remove a reversible human-authored preservation constraint.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "targetId": {
            "type": "string",
            "description": "The rune whose meaning the human wants to preserve.",
            "minLength": 1,
            "maxLength": 128
          },
          "reason": {
            "type": "string",
            "description": "A short human-authored explanation of why this rune matters.",
            "minLength": 1,
            "maxLength": 180
          },
          "preserve": {
            "type": "boolean",
            "description": "True to add or update the constraint; false to release it."
          }
        },
        "required": [
          "targetId",
          "reason"
        ],
        "additionalProperties": false
      }
    }
    propose_spell_patchAction

    Search for ranked spell repairs and return predicted outcomes, explicit preconditions, and the same structured operation ledger shown to the human without changing the graph.

    View tool JSON
    {
      "name": "propose_spell_patch",
      "kind": "act",
      "impl": "imperative",
      "description": "Search for ranked spell repairs and return predicted outcomes, explicit preconditions, and the same structured operation ledger shown to the human without changing the graph.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      }
    }
    apply_spell_patchAction

    Atomically revalidate and apply the exact human-reviewed operation ledger for a versioned spell patch, or revert it with a one-use token and matching receipt.

    View tool JSON
    {
      "name": "apply_spell_patch",
      "kind": "act",
      "impl": "imperative",
      "description": "Atomically revalidate and apply the exact human-reviewed operation ledger for a versioned spell patch, or revert it with a one-use token and matching receipt.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "patchId": {
            "type": "string",
            "description": "A current patch ID returned by propose_spell_patch.",
            "pattern": "^patch-(umbrella|dampener|temporal-guard|direct)-v[0-9]+$",
            "maxLength": 128
          },
          "revertToken": {
            "type": "string",
            "description": "The one-use token returned by the latest unchanged patch application.",
            "pattern": "^revert-patch-(umbrella|dampener|temporal-guard|direct)-v[0-9]+-after-v[0-9]+$",
            "maxLength": 160
          }
        },
        "oneOf": [
          {
            "required": [
              "patchId"
            ]
          },
          {
            "required": [
              "revertToken"
            ]
          }
        ],
        "additionalProperties": false
      }
    }