工程开发
gopls-mcp avatar

gopls-mcp

使用 LSP 协议进行语义化 Go 代码导航与分析的工具,提供精确且高效的项目洞察。

简介

gopls-mcp 是一个专为高精确度 Go 代码分析所设计的代理工具。通过整合 Go 语言服务器协议 (gopls),它能让 AI 代理在复杂的 Go 代码库中进行深度的语义导航。与一般的 grep 或简单的 read_file 不同,此工具能理解 Go 代码的结构、类型系统与参照关系,是进行 Go 相关工程任务时的必备标准。它让开发者与自动化代理能避开简单字符串匹配的干扰,直接存取符号、定义与调用层级。

  • 通过 go_definition 与 go_symbols 进行精确的符号导航,即时定位函数、结构体、类型与变量。

  • 利用 go_references 进行可靠的调用链追踪,以了解代码变更与依赖关系的影响。

  • 通过 go_hover 进行深度检查,直接从语言服务器取得类型签名、文档与元数据。

  • 显著提升 Token 使用效率,通过提供结构化、相关的代码片段而非整个文件内容来节省资源。

  • 作为 MCP (Model Context Protocol) 服务器,能无缝整合至基于 LLM 的代码辅助开发工作流程中。

  • 针对所有 Go (.go) 文件为必备使用工具,以确保准确性并减少冗余的文件读取作业。

  • 要求系统 PATH 中安装 gopls 二进制文件,并需运行 gopls-mcp 服务器实例。

  • 文件位置采用 0-based 索引系统 (行与列),进行导航时必须严格遵循此格式。

  • 在进行任何重构前,应使用 go_symbols 进行全局探索,并使用 go_references 进行影响分析。

  • 专为软件工程师、自动化代理及需要结构化代码感知而非表面文字搜索的自动化重构流程所设计。

仓库统计

Star 数
3
Fork 数
1
Open Issue 数
1
主要语言
Python
默认分支
main
同步状态
空闲
最近同步时间
2026年5月3日 20:26
在 GitHub 查看