MCP Language Server
Предоставляет LLM доступ к семантическим инструментам LSP для анализа кода: определения, ссылки, переименование и диагностику.
Описание
Это сервер на Go, интегрирующий Language Server Protocol (LSP) с MCP для LLM. Поддерживает языки вроде Go, Rust, Python, TypeScript и C/C++ через серверы gopls, rust-analyzer, pyright и т.д. Ключевые особенности: навигация по кодовым базам, получение определений символов, поиск ссылок, диагностика ошибок, ховер-инфо и редактирование файлов. Идеально для AI-ассистированного программирования, где LLM нуждаются в глубоком понимании кода.
Возможности
Определение символов
Получает полный исходный код определения любого символа (функции, типа, константы) из кодовой базы.
Поиск ссылок
Находит все использования и ссылки на символ по всей кодовой базе.
Диагностика
Предоставляет информацию о предупреждениях и ошибках для конкретного файла.
Ховер-информация
Отображает документацию, подсказки типов или другую информацию для заданной позиции.
Переименование символа
Переименовывает символ во всем проекте.
Редактирование файла
Выполняет множественные текстовые правки в файле на основе номеров строк для надежного редактирования.
Установка
Установите Go: следуйте инструкциям на https://golang.org/doc/install.
Установите сервер: go install github.com/isaacphi/mcp-language-server@latest.
Установите LSP-сервер (например, для Go: go install golang.org/x/tools/gopls@latest).
Настройте MCP-клиент (пример для Claude Desktop в ~/Library/Application Support/Claude/claude_desktop_config.json):
{ “mcpServers”: { “language-server”: { “command”: “mcp-language-server”, “args”: ["–workspace", “/path/to/your/project”, “–lsp”, “gopls”], “env”: { “PATH”: “/opt/homebrew/bin:/Users/you/go/bin” } } } }
Аналогично для других языков (Rust, Python и т.д.) – см. README для деталей.