← WebMCP Directory

Tool tree

sema.run

liveDeveloper Tools
https://sema.run/
Try Sema in the browser — a Lisp with first-class LLM primitives. No install required, runs entirely in WebAssembly.
Explore capabilities
read_editoranswer

Read Sema source from the playground editor. Use this before editing or running unfamiliar code.

View tool JSON
{
  "name": "read_editor",
  "kind": "answer",
  "impl": "imperative",
  "description": "Read Sema source from the playground editor. Use this before editing or running unfamiliar code.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "offset": {
        "type": "integer",
        "minimum": 0,
        "default": 0,
        "description": "Zero-based character offset at which to start reading."
      },
      "limit": {
        "type": "integer",
        "minimum": 1,
        "maximum": 12000,
        "default": 1500,
        "description": "Maximum number of characters to return."
      }
    },
    "additionalProperties": false
  }
}
write_editoract

Replace the playground editor contents with Sema source code.

View tool JSON
{
  "name": "write_editor",
  "kind": "act",
  "impl": "imperative",
  "description": "Replace the playground editor contents with Sema source code.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "code": {
        "type": "string",
        "description": "Complete Sema source to place in the editor."
      }
    },
    "additionalProperties": false,
    "required": [
      "code"
    ]
  }
}
format_editoract

Format the current Sema source in the playground editor.

View tool JSON
{
  "name": "format_editor",
  "kind": "act",
  "impl": "imperative",
  "description": "Format the current Sema source in the playground editor.",
  "inputSchema": {
    "type": "object",
    "properties": {},
    "additionalProperties": false
  }
}
run_editoract

Run the current Sema source and wait for evaluation to finish.

View tool JSON
{
  "name": "run_editor",
  "kind": "act",
  "impl": "imperative",
  "description": "Run the current Sema source and wait for evaluation to finish.",
  "inputSchema": {
    "type": "object",
    "properties": {},
    "additionalProperties": false
  }
}
stop_runact

Cancel the active worker-backed Sema evaluation when one is running.

View tool JSON
{
  "name": "stop_run",
  "kind": "act",
  "impl": "imperative",
  "description": "Cancel the active worker-backed Sema evaluation when one is running.",
  "inputSchema": {
    "type": "object",
    "properties": {},
    "additionalProperties": false
  }
}
read_outputanswer

Read the current playground output, including values, printed lines, errors, and timing.

View tool JSON
{
  "name": "read_output",
  "kind": "answer",
  "impl": "imperative",
  "description": "Read the current playground output, including values, printed lines, errors, and timing.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "offset": {
        "type": "integer",
        "minimum": 0,
        "default": 0,
        "description": "Zero-based character offset at which to start reading."
      },
      "limit": {
        "type": "integer",
        "minimum": 1,
        "maximum": 12000,
        "default": 1500,
        "description": "Maximum number of characters to return."
      }
    },
    "additionalProperties": false
  }
}
find_examplesanswer

Find bundled Sema examples by filename, category, or identifier.

View tool JSON
{
  "name": "find_examples",
  "kind": "answer",
  "impl": "imperative",
  "description": "Find bundled Sema examples by filename, category, or identifier.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "query": {
        "type": "string",
        "default": "",
        "description": "Case-insensitive text used to filter examples."
      },
      "limit": {
        "type": "integer",
        "minimum": 1,
        "maximum": 20,
        "default": 10,
        "description": "Maximum examples to return."
      }
    },
    "additionalProperties": false
  }
}
load_exampleact

Load one bundled Sema example into the editor by identifier or filename.

View tool JSON
{
  "name": "load_example",
  "kind": "act",
  "impl": "imperative",
  "description": "Load one bundled Sema example into the editor by identifier or filename.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "id": {
        "type": "string",
        "description": "Example identifier such as getting-started/hello.sema or hello.sema."
      }
    },
    "additionalProperties": false,
    "required": [
      "id"
    ]
  }
}
list_filesanswer

List one directory in the playground virtual filesystem.

View tool JSON
{
  "name": "list_files",
  "kind": "answer",
  "impl": "imperative",
  "description": "List one directory in the playground virtual filesystem.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "dir": {
        "type": "string",
        "default": "/",
        "description": "Absolute virtual directory path to list."
      }
    },
    "additionalProperties": false
  }
}
read_fileanswer

Read a UTF-8 text file from the playground virtual filesystem.

View tool JSON
{
  "name": "read_file",
  "kind": "answer",
  "impl": "imperative",
  "description": "Read a UTF-8 text file from the playground virtual filesystem.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "path": {
        "type": "string",
        "description": "Absolute virtual file path to read."
      },
      "offset": {
        "type": "integer",
        "minimum": 0,
        "default": 0,
        "description": "Zero-based character offset at which to start reading."
      },
      "limit": {
        "type": "integer",
        "minimum": 1,
        "maximum": 12000,
        "default": 1500,
        "description": "Maximum number of characters to return."
      }
    },
    "additionalProperties": false,
    "required": [
      "path"
    ]
  }
}
write_fileact

Create or replace a UTF-8 text file in the playground virtual filesystem.

View tool JSON
{
  "name": "write_file",
  "kind": "act",
  "impl": "imperative",
  "description": "Create or replace a UTF-8 text file in the playground virtual filesystem.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "path": {
        "type": "string",
        "description": "Absolute virtual file path to create or replace."
      },
      "content": {
        "type": "string",
        "maxLength": 1048576,
        "description": "UTF-8 text content, limited to 1 MiB."
      }
    },
    "additionalProperties": false,
    "required": [
      "path",
      "content"
    ]
  }
}
set_breakpointsact

Replace the debugger breakpoints with the requested one-based source lines.

View tool JSON
{
  "name": "set_breakpoints",
  "kind": "act",
  "impl": "imperative",
  "description": "Replace the debugger breakpoints with the requested one-based source lines.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "lines": {
        "type": "array",
        "items": {
          "type": "integer",
          "minimum": 1
        },
        "uniqueItems": true,
        "description": "One-based editor line numbers on which to pause."
      }
    },
    "additionalProperties": false,
    "required": [
      "lines"
    ]
  }
}
start_debuggingact

Start debugging the current Sema source and wait for a pause, finish, or error.

View tool JSON
{
  "name": "start_debugging",
  "kind": "act",
  "impl": "imperative",
  "description": "Start debugging the current Sema source and wait for a pause, finish, or error.",
  "inputSchema": {
    "type": "object",
    "properties": {},
    "additionalProperties": false
  }
}
continue_debuggingact

Continue the paused Sema debugger and wait for its next stable state.

View tool JSON
{
  "name": "continue_debugging",
  "kind": "act",
  "impl": "imperative",
  "description": "Continue the paused Sema debugger and wait for its next stable state.",
  "inputSchema": {
    "type": "object",
    "properties": {},
    "additionalProperties": false
  }
}
step_debuggeract

Step the paused Sema debugger into, over, or out and wait for its next stable state.

View tool JSON
{
  "name": "step_debugger",
  "kind": "act",
  "impl": "imperative",
  "description": "Step the paused Sema debugger into, over, or out and wait for its next stable state.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "mode": {
        "type": "string",
        "enum": [
          "into",
          "over",
          "out"
        ],
        "description": "Debugger stepping mode."
      }
    },
    "additionalProperties": false,
    "required": [
      "mode"
    ]
  }
}
stop_debuggingact

Stop the active Sema debugger and return the playground to its idle state.

View tool JSON
{
  "name": "stop_debugging",
  "kind": "act",
  "impl": "imperative",
  "description": "Stop the active Sema debugger and return the playground to its idle state.",
  "inputSchema": {
    "type": "object",
    "properties": {},
    "additionalProperties": false
  }
}
get_debug_stateanswer

Read debugger status, active line, breakpoints, locals, and stack frames.

View tool JSON
{
  "name": "get_debug_state",
  "kind": "answer",
  "impl": "imperative",
  "description": "Read debugger status, active line, breakpoints, locals, and stack frames.",
  "inputSchema": {
    "type": "object",
    "properties": {},
    "additionalProperties": false
  }
}