
cl-ai-project/cl-mcp
Developer toolsЭта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал
cl-ai-project/cl-mcp - кандидат на сервер MCP, импортированный из https://github.com/cl-ai-project/cl-mcp.
Обзор
cl-ai-project/cl-mcp - кандидат на сервер MCP, импортированный из https://github.com/cl-ai-project/cl-mcp.
Обзор (машинный перевод)
Сервер Model Context Protocol (MCP) для Common Lisp с поддержкой JSON-RPC 2.0 TCP и HTTP (Streamable HTTP). Это позволяет агентам ИИ взаимодействовать Среды Common Lisp с помощью структурированных инструментов для оценки REPL Загрузка системы, файловые операции, интроспекция кода и редактирование с учетом структуры.
Особенности
REPL оценка с инспекцией объекта — оценка форм, сверление на сложные результаты (CLOS экземпляры, хэш-таблицы и т.д.) и захват структурированного контекста ошибок с кадрами стека и локальными переменными ** Операции с файлами в песочнице** — файлы чтения/записи/списка, ограниченные корневыми каталогами проекта и каталогами источников системы ASDF, предотвращающие случайный доступ за пределы проекта
- ** Осведомленное о структуре редактирование Lisp** - замена, вставка и исправление форм верхнего уровня с использованием анализа Eclector CST с автоматическим восстановлением паринфера, сохранением форматирования и комментариев Code intelligence — поиск и описание символов; абоненты с их точными сайтами вызовов и тестами, которые их выполняют; иерархии классов CLOS, слоты и методы общей функции; макроспансия формы прямо из ее файла; поиск и просмотр файлов с помощью Lisp-aware с разрушенными подписями; поиск CLHS
Эта страница переведена автоматически. Технические детали смотрите в оригинале.
README
Показан фрагмент оригинального README. Открыть оригинал.
cl-mcp
A Model Context Protocol (MCP) server for Common Lisp, providing JSON-RPC 2.0 over stdio, TCP, and HTTP (Streamable HTTP). It enables AI agents to interact with Common Lisp environments through structured tools for REPL evaluation, system loading, file operations, code introspection, and structure-aware editing.
Features
- REPL evaluation with object inspection — evaluate forms, drill down into complex results (CLOS instances, hash-tables, etc.), and capture structured error context with stack frames and local variables
- Sandboxed file operations — read/write/list files restricted to the project root and ASDF system source directories, preventing accidental access outside the project
- Structure-aware Lisp editing — replace, insert, and patch top-level forms using Eclector CST parsing with automatic parinfer repair, preserving formatting and comments
- Code intelligence — symbol lookup and description; callers with their exact call sites and the tests that exercise them; CLOS class hierarchies, slots and generic-function methods; macroexpansion of a form straight from its file; Lisp-aware search and file viewing with collapsed signatures; CLHS lookup
- Structured test runner — run Rove, FiveAM and prove tests with pass/fail counts, failure details, and source locations
- Worker pool isolation — eval-dependent tools run in isolated child SBCL processes with automatic crash recovery, circuit breaker, and per-session affinity; an optional init hook can start your app inside the worker
- Three transports — stdio, TCP (multi-client), and Streamable HTTP (for Claude Code)
- Project scaffolding — generate a throwaway package-inferred project with Rove or FiveAM tests
- Optional contract checking — the
cl-spectool group (off by default) lists, reads and checks cl-spec contracts; see Optional tool groups
Tools at a glance
| Category | Tool | Purpose | Runs in |
|---|---|---|---|
| Project & files | fs-set-project-root |
Set this session’s project root | parent (the worker follows) |
fs-get-project-info |
Show the root and working directory | parent | |
fs-read-file / fs-write-file / fs-list-directory |
Text I/O inside the allowed roots | parent | |
project-scaffold |
Generate a new project skeleton | parent | |
| Lisp source | lisp-read-file |
Collapsed or pattern-expanded view of a file | parent |
lisp-edit-form / lisp-patch-form |
Replace, insert or delete a top-level form; scoped text patch | parent |
Установка
docker run --rm -it \Конфигурация
{
"mcpServers": {
"cl-mcp": {
"type": "http",
"url": "http://127.0.0.1:3000/mcp"
}
}
}