Labsco
MCP SERVER

Give an AI agent a sandboxed lab on a Mako or Xedge server — create it, start it, write files into it, run it, back it up, and move it to another machine.

Sandboxed Code Execution
Summary
The lab boundary is what makes agent-built code safe to run here.

Everything the agent writes lands in a named lab with its own storage directory, its own route and its own backup directory — so an agent building a device interface cannot scribble over the server or another project. The transfer design is the detail that stands out: exports hand back short-lived download URLs rather than pushing archive bytes through the MCP channel, and moving a lab between two independently authenticated servers never sends one server's token to the other. Explicit lab selection is the same instinct, applied to the everyday case.

What it is

An MCP server that runs inside Real Time Logic's Mako Server or Xedge and gives an agent a managed workspace, called a lab, to build web applications in. The agent creates and starts labs, writes files into them, pulls in official examples, and can back up, export and transfer a lab — all through a deliberately small MCP surface over streamable HTTP.

What you get
  • Runtime and lab state before anything is changed — `getRuntimeInfo`, `readRuntimeTrace`, `getLabStatus`, `listLabs`
  • Lab lifecycle: create, select, rename, delete, set the route it is served on, start and stop — `createLab`, `selectLab`, `renameLab`, `deleteLab`, `setLabBasePath`, `startLab`, `stopLab`
  • The official example catalog browsed, read and copied into a lab, with the copy staged outside the lab first so a failed read never leaves a half-written workspace — `getExampleCatalog`, `readExampleFile`, `copyExampleToLab`
  • Files listed, read, written and cleared inside the selected lab — `listLabFiles`, `readLabFile`, `writeLabFile`, `clearLab`
  • Backups taken, listed and restored — `backupLab`, `listLabBackups`, `restoreLab`
  • Export, import and machine-to-machine transfer of a whole lab, using short-lived direct download URLs so archive bytes never travel through the MCP channel and neither server's token is sent to the other — `prepareLabExport`, `prepareLabImport`, `prepareLabTransfer`, `importLabTransfer`
  • Resources the agent can cite for instructions, runtime state, lab status and the example root — `lspclaw://instructions`, `lspclaw://runtime`, `lspclaw://lab/status`, `lspclaw://examples/root`
  • Explicit selection when there is more than one lab: lab-bound tools refuse until one is chosen, and accept a one-call override without changing the session's selection
Requirements

The Mako Server Developer Edition, which ships LSP-Claw and its resources ready to run — running Mako as a service is preferred; Xedge standalone is documented as an alternative. An MCP-capable agent on the same machine. Optionally initialise a bearer token on first start with `mako -token your-mcp-bearer-token`, then sign in with it at the LSP-Claw web page; a GitHub token entered there unlocks the examples repository. Add the MCP server to your agent with the URL `http://localhost/lsp-claw/mcp.lsp`, then restart the agent or open a new session so it discovers the tools.