← WebMCP Directory

Tool tree

enchanted-realities.github.io

Health & EducationTools verified
Website
Agents and humans sharing live geometry instead of screenshots. The page registers 16 WebMCP tools (document.modelContext) so an agent can construct, label, point, and read the board as data — on…
Explore capabilities
    aergebra_create_pointAction

    Create a point at board coordinates (x, y). Returns its id and name. Points are the atoms every other shape is built from.

    View tool JSON
    {
      "name": "aergebra_create_point",
      "kind": "act",
      "impl": "imperative",
      "description": "Create a point at board coordinates (x, y). Returns its id and name. Points are the atoms every other shape is built from.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "x": {
            "type": "number",
            "description": "x coordinate on the board"
          },
          "y": {
            "type": "number",
            "description": "y coordinate on the board"
          }
        },
        "required": [
          "x",
          "y"
        ]
      },
      "page": "/aergebra/"
    }
    aergebra_create_segmentAction

    Create a segment between two existing points.

    View tool JSON
    {
      "name": "aergebra_create_segment",
      "kind": "act",
      "impl": "imperative",
      "description": "Create a segment between two existing points.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "a": {
            "type": "string",
            "description": "First endpoint — an id like AER3, or the human name shown in the Inspector"
          },
          "b": {
            "type": "string",
            "description": "Second endpoint — an id like AER3, or the human name shown in the Inspector"
          }
        },
        "required": [
          "a",
          "b"
        ]
      },
      "page": "/aergebra/"
    }
    aergebra_create_circleAction

    Create a circle from a center point and a point on its rim.

    View tool JSON
    {
      "name": "aergebra_create_circle",
      "kind": "act",
      "impl": "imperative",
      "description": "Create a circle from a center point and a point on its rim.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "center": {
            "type": "string",
            "description": "Center point — an id like AER3, or the human name shown in the Inspector"
          },
          "radiusPoint": {
            "type": "string",
            "description": "A point on the rim — an id like AER3, or the human name shown in the Inspector"
          }
        },
        "required": [
          "center",
          "radiusPoint"
        ]
      },
      "page": "/aergebra/"
    }
    aergebra_create_polygonAction

    Create a polygon from three or more existing points, in order.

    View tool JSON
    {
      "name": "aergebra_create_polygon",
      "kind": "act",
      "impl": "imperative",
      "description": "Create a polygon from three or more existing points, in order.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "vertices": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "Vertex point — an id like AER3, or the human name shown in the Inspector"
            },
            "minItems": 3,
            "description": "Vertex points in order"
          }
        },
        "required": [
          "vertices"
        ]
      },
      "page": "/aergebra/"
    }
    aergebra_group_objectsAction

    Group two or more objects into a named cluster (a unit that can carry meaning and be framed or exported together).

    View tool JSON
    {
      "name": "aergebra_group_objects",
      "kind": "act",
      "impl": "imperative",
      "description": "Group two or more objects into a named cluster (a unit that can carry meaning and be framed or exported together).",
      "inputSchema": {
        "type": "object",
        "properties": {
          "names": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "Object — an id like AER3, or the human name shown in the Inspector"
            },
            "minItems": 2,
            "description": "Objects to group"
          }
        },
        "required": [
          "names"
        ]
      },
      "page": "/aergebra/"
    }
    aergebra_set_meaningAction

    Attach a human-readable meaning to an object or group (this is its visible label — objects show their MEANING, never an arbitrary letter). Pass no meaning to clear it.

    View tool JSON
    {
      "name": "aergebra_set_meaning",
      "kind": "act",
      "impl": "imperative",
      "description": "Attach a human-readable meaning to an object or group (this is its visible label — objects show their MEANING, never an arbitrary letter). Pass no meaning to clear it.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Object or group — an id like AER3, or the human name shown in the Inspector"
          },
          "meaning": {
            "type": "string",
            "description": "The meaning to attach; omit to clear"
          }
        },
        "required": [
          "name"
        ]
      },
      "page": "/aergebra/"
    }
    aergebra_set_stateAction

    Set an object's status colour: charcoal = at rest, brown = blocked track (tracks only), orange = ready/where the hold sits, teal = free and willing. Omit state to clear. Illegal combinations are refused with an explanation.

    View tool JSON
    {
      "name": "aergebra_set_state",
      "kind": "act",
      "impl": "imperative",
      "description": "Set an object's status colour: charcoal = at rest, brown = blocked track (tracks only), orange = ready/where the hold sits, teal = free and willing. Omit state to clear. Illegal combinations are refused with an explanation.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Object — an id like AER3, or the human name shown in the Inspector"
          },
          "state": {
            "type": "string",
            "enum": [
              "charcoal",
              "brown",
              "orange",
              "teal"
            ],
            "description": "Status colour; omit to clear"
          }
        },
        "required": [
          "name"
        ]
      },
      "page": "/aergebra/"
    }
    aergebra_frame_groupAction

    Draw a frame around an existing group, marking it as one settled unit on the board.

    View tool JSON
    {
      "name": "aergebra_frame_group",
      "kind": "act",
      "impl": "imperative",
      "description": "Draw a frame around an existing group, marking it as one settled unit on the board.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "group": {
            "type": "string",
            "description": "Group — an id like AER3, or the human name shown in the Inspector"
          }
        },
        "required": [
          "group"
        ]
      },
      "page": "/aergebra/"
    }
    aergebra_highlightAction

    Point at things: light up the named objects so the human sees exactly what you are talking about. Use this instead of describing locations in prose — shared geometry beats 'the circle on the left'.

    View tool JSON
    {
      "name": "aergebra_highlight",
      "kind": "act",
      "impl": "imperative",
      "description": "Point at things: light up the named objects so the human sees exactly what you are talking about. Use this instead of describing locations in prose — shared geometry beats 'the circle on the left'.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "names": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "Object — an id like AER3, or the human name shown in the Inspector"
            },
            "minItems": 1,
            "description": "Objects to light up"
          }
        },
        "required": [
          "names"
        ]
      },
      "page": "/aergebra/"
    }
    aergebra_clear_highlightAction

    Turn off all highlights you switched on.

    View tool JSON
    {
      "name": "aergebra_clear_highlight",
      "kind": "act",
      "impl": "imperative",
      "description": "Turn off all highlights you switched on.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "required": []
      },
      "page": "/aergebra/"
    }
    aergebra_get_algebraAnswer

    Read the whole construction as algebra: one line per object with its definition, id and meaning. This is the board as DATA — use it instead of a screenshot.

    View tool JSON
    {
      "name": "aergebra_get_algebra",
      "kind": "answer",
      "impl": "imperative",
      "description": "Read the whole construction as algebra: one line per object with its definition, id and meaning. This is the board as DATA — use it instead of a screenshot.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "required": []
      },
      "page": "/aergebra/"
    }
    aergebra_get_viewAnswer

    Read the camera as data: the board window, the content bounds, and how much of the view the content occupies. Use it to know what the human is currently looking at — never guess from pixels.

    View tool JSON
    {
      "name": "aergebra_get_view",
      "kind": "answer",
      "impl": "imperative",
      "description": "Read the camera as data: the board window, the content bounds, and how much of the view the content occupies. Use it to know what the human is currently looking at — never guess from pixels.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "required": []
      },
      "page": "/aergebra/"
    }
    aergebra_get_receiptsAnswer

    Read the last n receipts — the append-only record of everything that happened in this document, human actions and agent actions on the same line.

    View tool JSON
    {
      "name": "aergebra_get_receipts",
      "kind": "answer",
      "impl": "imperative",
      "description": "Read the last n receipts — the append-only record of everything that happened in this document, human actions and agent actions on the same line.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "n": {
            "type": "number",
            "description": "How many recent receipts (default 20)"
          }
        },
        "required": []
      },
      "page": "/aergebra/"
    }
    aergebra_fit_viewAction

    Auto-fit the camera to the content so everything constructed is visible and readable.

    View tool JSON
    {
      "name": "aergebra_fit_view",
      "kind": "act",
      "impl": "imperative",
      "description": "Auto-fit the camera to the content so everything constructed is visible and readable.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "required": []
      },
      "page": "/aergebra/"
    }
    aergebra_load_documentAction

    Replace the current document with a serialized Aergebra document (the JSON a save or serialize_document produced). The board rebuilds and auto-fits.

    View tool JSON
    {
      "name": "aergebra_load_document",
      "kind": "act",
      "impl": "imperative",
      "description": "Replace the current document with a serialized Aergebra document (the JSON a save or serialize_document produced). The board rebuilds and auto-fits.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "json": {
            "type": "string",
            "description": "A serialized Aergebra document"
          }
        },
        "required": [
          "json"
        ]
      },
      "page": "/aergebra/"
    }
    aergebra_serialize_documentAction

    Serialize the whole document (objects, groups, meanings, states, receipts) to JSON — the full construal, portable.

    View tool JSON
    {
      "name": "aergebra_serialize_document",
      "kind": "act",
      "impl": "imperative",
      "description": "Serialize the whole document (objects, groups, meanings, states, receipts) to JSON — the full construal, portable.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "required": []
      },
      "page": "/aergebra/"
    }