gopls-mcp — MCP-сервер для Claude Code: что делает и как установить
MCP-сервер на базе gopls для семантического анализа кода на Go. Помогает агенту находить реализации интерфейсов и строить граф вызовов с точностью компилятора.
Открыть на GitHubЧто делает gopls-mcp
Проект создан на базе форка gopls и передаёт модели данные компилятора. Вместо текстового перебора строк агент обращается к семантике кода. Он видит систему типов Go напрямую. Инструмент определяет структуры под конкретный интерфейс, находит символы в соседних пакетах и корректно разбирает затенённые переменные.
В тестах на 11 задачах gopls-mcp потребовал в 2–4 раза меньше вызовов инструментов по сравнению с поиском через grep. Но для чтения одного файла запускать сервер избыточно: grep даёт меньше накладных расходов. В Claude Code плагин сам ставит бинарный файл и включает маршрутизацию.
Какие задачи решает
- находить структуры, реализующие заданный интерфейс
- строить иерархию вызовов функций между пакетами
- разрешать имена с учётом затенённых областей видимости
- исследовать зависимости между пакетами Go
Примеры запросов агенту
- Найди все типы, которые реализуют интерфейс
Readerв этом проекте. - Построй иерархию вызовов для функции
ProcessJob. - Покажи объявление структуры
Configи все пакеты, где она используется.
Как установить gopls-mcp
Установка
Команды запуска нет в реестре MCP — смотрите README репозитория
По шагам, с командами для каждой платформы: Как подключить MCP-сервер: Claude Code, Codex, Cursor, VS Code, Gemini CLI и другие
Вопросы о gopls-mcp
Как установить gopls-mcp в Claude Code?
В интерфейсе Claude Code добавьте репозиторий командой /plugin marketplace add https://github.com/xieyuschen/gopls-mcp.git, после чего установите плагин через /plugin install gopls-mcp. Установка бинарного файла и настройка навыка выполняются автоматически.
Что делает gopls-mcp?
Сервер подключает к языковой модели возможности gopls для разбора кода на Go. Агент получает данные о системе типов, проверяет реализацию интерфейсов и отслеживает зависимости между пакетами.
Чем gopls-mcp отличается от поиска через grep?
Обычный grep ищет только совпадения строк и не понимает области видимости. В тестах на 11 задачах gopls-mcp требовал в 2–4 раза меньше вызовов инструментов, хотя для поиска внутри одного файла grep остаётся быстрее и легче.