Mcp Gopls

Mcp Gopls

🚀 MCP-GOPLS

MCP-GOPLS 是一个 MCP(模型上下文协议)服务器,它封装了 gopls 以提供 Go 语言服务器功能。

🚀 快速开始

MCP-GOPLS 是一个封装了 gopls 的 MCP 服务器,能为你提供 Go 语言服务器功能。不过需要注意的是,整个项目由 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

  1. 安装 mcp-gopls:
    go install github.com/yantrio/mcp-gopls/cmd/mcp-gopls@latest
    
  2. 添加到 Claude Code:
    claude mcp add mcp-gopls "$(which mcp-gopls)"
    
  3. 重启 Claude Code:
    claude restart
    
  4. 验证安装:
    claude mcp list
    

Claude Desktop

  1. 安装 mcp-gopls(与上述步骤相同)。
  2. 编辑 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
  3. mcpServers 部分添加以下内容:
    {
    "mcpServers": {
    "mcp-gopls": {
    "command": "mcp-gopls",
    "args": []
    }
    }
    }
    
    或者使用自定义工作区:
    {
    "mcpServers": {
    "mcp-gopls": {
    "command": "mcp-gopls",
    "args": ["-workspace", "/path/to/your/go/project"]
    }
    }
    }
    
  4. 重启 Claude Desktop。

💻 使用示例

基础用法

# 使用默认设置运行(使用 PATH 中的 gopls 并将当前目录作为工作区)
mcp-gopls

高级用法

# 指定 gopls 路径和工作区
mcp-gopls -gopls /path/to/gopls -workspace /path/to/project

# 使用环境变量
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

开发步骤

# 克隆仓库
git clone https://github.com/yantrio/mcp-gopls
cd mcp-gopls

# 构建项目
go build ./cmd/mcp-gopls

# 运行测试
go test ./...

📄 许可证

本项目采用 MIT 许可证。

⚠️ 重要提示

整个项目由 Claude Code 生成,未经过人工代码审查。虽然它通过了测试且看起来功能正常,但在生产环境中请务必极度谨慎使用。代码尚未进行安全性、性能或边缘情况的审计。

💡 使用建议

建议在使用前仔细阅读 DESIGN.md 了解 AI 生成的设计文档,同时在开发过程中按照开发步骤进行操作,以确保项目的正常运行。

  • 0 关注
  • 0 收藏,27 浏览
  • system 提出于 2025-10-02 00:24

相似服务问题

相关AI产品