MCP Catalogs
首页mcp-gopls screenshot

mcp-gopls

by hloiseau·84·综合分 47

基于 gopls 的 Go 语言 MCP 服务器,提供 LSP 驱动的分析、测试、覆盖率和工具支持。

developer-toolsai-llm
11
Forks
3
活跃 Issue
4 个月前
最近提交
2 天前
收录于

概述

mcp-gopls 是一个 MCP 服务器,连接 AI 助手与 Go 的强大语言服务器 (gopls)。它提供了一整套 LSP 功能,包括代码导航、诊断、格式化、测试执行、覆盖率分析和 Go 模块管理。相比 gopls 内置的 MCP 实现,该服务器提供了更多开发操作功能,如运行测试、整理模块和分析覆盖率。

试试问 AI

装完之后,这里有 5 个你可以让 AI 做的事:

:AI 助手使用完整 LSP 功能分析 Go 代码库
:自动化执行 Go 测试和生成覆盖率报告
:借助 AI 使用 LSP 工具重构 Go 代码
:mcp-gopls 与 gopls 内置 MCP 有何区别?
:支持哪些 Go 版本?

什么时候选它

当你需要通过 MCP 获取完整的 Go 语言工具(包括 gopls 内置 MCP 服务器中不可用的 LSP 功能),并且已经在处理 Go 项目时,选择 mcp-gopls。

什么时候不要选它

如果你只需要基本的内省工具(如诊断和符号搜索),则应避免使用,此时 gopls 内置的 MCP 服务器已经足够,无需额外的二进制文件。

此 server 暴露的工具

从 README 抽取出 12 个工具
  • go_to_definition

    Navigate to the definition of a symbol

  • find_references

    List all references for a symbol

  • check_diagnostics

    Fetch cached diagnostics for a file

  • get_hover_info

    Return hover markdown for a symbol

  • get_completion

    Return completion labels at a position

  • format_document

    Return formatting edits for an entire document

  • rename_symbol

    Return workspace edits for a rename

  • list_code_actions

    List available code actions for a range

  • search_workspace_symbols

    Search workspace-wide symbols

  • analyze_coverage

    Run go test with coverage + optional per-function report

  • run_go_test

    Execute go test for a package/pattern

  • run_govulncheck

    Execute govulncheck on the codebase

可对比工具

gopls built-in mcpshell-mcp

安装

# 安装服务器
go install github.com/hloiseau/mcp-gopls/v2/cmd/mcp-gopls@latest

# 配置 Claude Desktop
{
  "mcpServers": {
    "mcp-gopls": {
      "command": "mcp-gopls",
      "args": ["--workspace", "/absolute/path/to/your/go/project"],
      "env": {
        "MCP_GOPLS_LOG_LEVEL": "info"
      }
    }
  }
}

FAQ

mcp-gopls 与 gopls 内置 MCP 有何区别?
mcp-gopls 提供更多面向开发的工具,如 go test、覆盖率分析和 go mod tidy,而 gopls 内置 MCP 更侧重于诊断和符号搜索等内省工具。
支持哪些 Go 版本?
已测试兼容 Go 1.25.x 和 gopls@latest。项目积极维护与最新 Go 版本的兼容性。

mcp-gopls 对比

GitHub →

最后更新于 · 由 README + GitHub 公开数据自动生成。