
mcp-gopls
by hloiseau·★ 84·综合分 47
基于 gopls 的 Go 语言 MCP 服务器,提供 LSP 驱动的分析、测试、覆盖率和工具支持。
概述
mcp-gopls 是一个 MCP 服务器,连接 AI 助手与 Go 的强大语言服务器 (gopls)。它提供了一整套 LSP 功能,包括代码导航、诊断、格式化、测试执行、覆盖率分析和 Go 模块管理。相比 gopls 内置的 MCP 实现,该服务器提供了更多开发操作功能,如运行测试、整理模块和分析覆盖率。
试试问 AI
装完之后,这里有 5 个你可以让 AI 做的事:
什么时候选它
当你需要通过 MCP 获取完整的 Go 语言工具(包括 gopls 内置 MCP 服务器中不可用的 LSP 功能),并且已经在处理 Go 项目时,选择 mcp-gopls。
什么时候不要选它
如果你只需要基本的内省工具(如诊断和符号搜索),则应避免使用,此时 gopls 内置的 MCP 服务器已经足够,无需额外的二进制文件。
此 server 暴露的工具
从 README 抽取出 12 个工具go_to_definitionNavigate to the definition of a symbol
find_referencesList all references for a symbol
check_diagnosticsFetch cached diagnostics for a file
get_hover_infoReturn hover markdown for a symbol
get_completionReturn completion labels at a position
format_documentReturn formatting edits for an entire document
rename_symbolReturn workspace edits for a rename
list_code_actionsList available code actions for a range
search_workspace_symbolsSearch workspace-wide symbols
analyze_coverageRun go test with coverage + optional per-function report
run_go_testExecute go test for a package/pattern
run_govulncheckExecute govulncheck on the codebase
可对比工具
安装
# 安装服务器
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 对比
最后更新于 · 由 README + GitHub 公开数据自动生成。