LSP MCP Server
позволяет LLM взаимодействовать с LSP серверами для получения подсказок и диагностики кода
Описание
LSP MCP Server — это Node.js сервер на TypeScript, выступающий мостом между LLM и Language Server Protocol. Он запускает LSP клиент, предоставляя инструменты для запросов hover, completions, code actions и диагностики. Поддерживает ресурсы для реального времени обновлений, расширения для языков (например, Haskell), логирование и конфигурацию. Идеален для интеграции LSP в AI-системы, улучшая точность code suggestions и анализа кода в проектах на различных языках программирования.
Возможности
Инструменты MCP
get_info_on_location для hover, get_completions для подсказок, get_code_actions для действий, open/close_document для файлов, get_diagnostics для ошибок.
Ресурсы MCP
lsp-diagnostics:// для диагностики с подпиской, lsp-hover:// и lsp-completions:// для информации по позициям в файлах.
Управление LSP
start_lsp и restart_lsp_server для инициализации и перезапуска сервера с root_dir.
Логирование
8 уровней (debug до emergency), цветной вывод, runtime-изменение через set_log_level.
Расширения
Поддержка языковых расширений (Haskell и др.) с кастомными инструментами и промптами.
Установка
Предварительно: Node.js (v16+), npm. Для демо: GHC (8.10+), Cabal (3.0+).
- Клонируйте репозиторий: git clone https://github.com/your-username/lsp-mcp.git && cd lsp-mcp
- Установите зависимости: npm install
- Соберите: npm run build
Для запуска: npx tritlo/lsp-mcp
/path/to/lsp [lsp-args…] Конфигурация в JSON: {“mcpServers”: {“lsp-mcp”: {“type”: “stdio”, “command”: “npx”, “args”: [“tritlo/lsp-mcp”, “ ”, “ ”, “ ”]}}} Перед использованием вызовите start_lsp с root_dir.