LabscoMCP early access ↗
gornskewMCP SERVER

Cyborg Whisperer

Give an agent a live Lisp REPL — evaluate code, call HTTP endpoints, and check the backend is alive.

by gornskew ↗Sandboxed Code ExecutionCommunity

LABSCO SUMMARY

The interesting part is that the image stays live between calls.

An agent defines an object, inspects it, changes a slot and re-reads it — the same interactive loop a Lisp developer works in, rather than a compile-run-print cycle. Be clear about the split of responsibilities: this wrapper is only an HTTP client, so if it reports it cannot reach the backend, the fix is on the backend side — check that something answers on the ping endpoint before touching the client config.

What it is

A Node middleware that connects an MCP client to a running Lisp-based environment over a lightweight protocol. It is a pure HTTP client: you run the backend yourself, and the wrapper talks to it.

What you get

  • A Lisp evaluation tool taking code and an optional package, so the agent works in a live image rather than writing files
  • An HTTP request tool for any endpoint the backend exposes, with path, method and headers
  • A ping tool for confirming the backend is up before anything else is attempted
  • Tool names prefixed by the server name you configure, so several backends can be connected at once — one for each Lisp implementation, for example
  • Sandbox trust metadata advertised in the tool descriptions, with a note you can override

Requirements

Node.js 18 or newer, a clone of the repository your client can reach, and a running Lisply backend — the Docker Compose stack from the companion project, or your own. The wrapper does not start or manage containers. Defaults are --backend-host 127.0.0.1 and HTTP port 9081 on the host; --eval-timeout is 30000 ms and the request timeout is 10000 ms.

Setup effort

One command — wsl docker run -i --rm -u 1000:1000 --mount type=bind,src=/home/<YOUR_USERNAME>/projects,dst=/projects mcp/filesystem /projects