Back to MCP Integrations

lsp-mcp MCP

MCP integration for lsp-mcp MCP within. Connect external services and extend Claude's capabilities.

0 installsAuthor: Community

Installation

curl -fsSL https://claudekit.xyz/i/lsp-mcp | bash

Description

MCP сервер, который выступает мостом между LLM и серверами Language Server Protocol (LSP), позволяя LLM запрашивать информацию о hover, автодополнение кода, диагностику и действия с кодом для более точных предложений по коду.

Установка

NPX

npx tritlo/lsp-mcp <language-id> <path-to-lsp> <lsp-args>

Из исходников

git clone https://github.com/your-username/lsp-mcp.git
cd lsp-mcp
npm install
npm run build

Конфигурация

Конфигурация MCP

{
  "mcpServers": {
    "lsp-mcp": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "tritlo/lsp-mcp",
        "<language-id>",
        "<path-to-lsp>",
        "<lsp-args>"
      ]
    }
  }
}

Доступные инструменты

ИнструментОписание
get_info_on_locationПолучить информацию о hover в определенном месте файла
get_completionsПолучить предложения автодополнения в определенном месте файла
get_code_actionsПолучить действия с кодом для определенного диапазона в файле
open_documentОткрыть файл на LSP сервере для анализа
close_documentЗакрыть файл на LSP сервере
get_diagnosticsПолучить диагностические сообщения (ошибки, предупреждения) для открытых файлов
start_lspЗапустить LSP сервер с указанной корневой директорией
restart_lsp_serverПерезапустить LSP сервер без перезапуска MCP сервера
set_log_levelИзменить уровень детализации логирования сервера в рантайме

Возможности

  • Мост между LLM и серверами Language Server Protocol
  • Обновления диагностики в реальном времени через подписки
  • Информация о hover кода и предложения автодополнения
  • Действия с кодом и обработка ошибок
  • Комплексная система логирования с 8 уровнями серьезности
  • Настраиваемый в рантайме уровень логирования
  • Языко-специфичные расширения (включена поддержка Haskell)
  • Интеграционные тесты для TypeScript LSP
  • MCP ресурсы для диагностики, hover и автодополнений
  • Подписки на ресурсы для обновлений в реальном времени

Примеры использования

Получить информацию о hover для функции на линии 3, столбец 5 в Haskell файле
Получить предложения автодополнения кода в определенной позиции файла
Получить диагностические ошибки и предупреждения для всех открытых файлов
Получить действия с кодом для исправления ошибок в определенном диапазоне кода
Запустить LSP сервер для директории проекта перед анализом кода

Ресурсы

Примечания

Требует Node.js v16+ и npm. Необходимо явно запустить LSP сервер с помощью инструмента start_lsp перед использованием другой LSP функциональности. Поддерживает расширения для языко-специфичных возможностей. Файлы должны быть открыты с помощью open_document перед доступом к диагностике или другим операциям, специфичным для файлов.