关于 Gopls Go Language Server
MCP-GOPLS 将 gopls 的 Go 语言服务功能封装为 MCP 服务,供 Go 开发者及 MCP 兼容工具使用。它提供代码导航、诊断、搜索和编辑操作;项目说明代码由 Claude Code 生成,未经人工审查。
主要功能
- 01跳转定义与查找引用
- 02获取诊断及符号悬停信息
- 03搜索符号和查找接口实现
- 04跨文件重命名符号
- 05格式化代码并整理导入
适用场景
- 01导航 Go 项目代码
- 02检查编译错误与静态分析结果
- 03重命名符号并整理导入
- 04查看接口实现及文件符号大纲
MCP 相关
该服务将 gopls 功能作为工具提供给 MCP 客户端,涵盖代码导航、诊断、搜索、重命名和格式化。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
暂未收录安装方式
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
MCP-GOPLS
一个封装 gopls、用于提供 Go 语言服务功能的 MCP(Model Context Protocol)服务。
⚠️ WARNING:整个项目由 Claude Code 生成,未经人工代码审查。虽然项目通过了测试且看起来可以正常运行,但请在生产环境中格外谨慎地使用。代码尚未针对安全性、性能或边缘情况进行审计。请参阅 DESIGN.md 了解 AI 生成的设计文档。
功能
现已实现 gopls 的所有语言服务功能:
- GoToDefinition:跳转到符号定义
- FindReferences:查找符号的所有引用
- GetDiagnostics:获取编译错误和静态分析结果
- Hover:获取光标下符号的信息
- SearchSymbol:在工作区中搜索符号(支持部分匹配)
- RenameSymbol:重命名工作区中的符号(直接应用更改到文件)
- FindImplementers:查找实现某个接口的所有类型
- ListDocumentSymbols:获取文件中定义的符号概览
- FormatCode:按照 gofmt 标准格式化 Go 源代码(将更改应用到文件)
- OrganizeImports:整理导入语句(对导入项进行分组和排序,并将更改应用到文件)
安装
go install github.com/yantrio/mcp-gopls/cmd/mcp-gopls@latest
与 Claude 集成
Claude Code
-
安装 mcp-gopls:
go install github.com/yantrio/mcp-gopls/cmd/mcp-gopls@latest -
添加到 Claude Code:
claude mcp add mcp-gopls "$(which mcp-gopls)" -
重启 Claude Code:
claude restart -
验证安装:
claude mcp list
Claude Desktop
-
安装 mcp-gopls(与上文相同)
-
编辑 Claude Desktop 配置:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
- macOS:
-
将以下内容添加到
mcpServers部分:{ "mcpServers": { "mcp-gopls": { "command": "mcp-gopls", "args": [] } } }或使用自定义工作区:
{ "mcpServers": { "mcp-gopls": { "command": "mcp-gopls", "args": ["-workspace", "/path/to/your/go/project"] } } } -
重启 Claude Desktop
用法
# Run with default settings (uses gopls in PATH and current directory as workspace)
mcp-gopls
# Specify gopls path and workspace
mcp-gopls -gopls /path/to/gopls -workspace /path/to/project
# Using environment variables
export GOPLS_PATH=/path/to/gopls
export MCP_GOPLS_WORKSPACE=/path/to/project
mcp-gopls
要求
- Go 1.24.3+
- gopls(Go 语言服务)
安装 gopls
go install golang.org/x/tools/gopls@latest
开发
# Clone the repository
git clone https://github.com/yantrio/mcp-gopls
cd mcp-gopls
# Build the project
go build ./cmd/mcp-gopls
# Run tests
go test ./...
许可证
MIT
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。