
godoc-mcp

2025.01.17
42
GoGo 文档访问开发工具开发效率
`godoc-mcp` 是一个基于 Model Context Protocol (MCP) 的服务,专门用于高效访问 Go 语言的文档。它通过直接提供包文档而非整个源代码文件,帮助大型语言模型(LLMs)更高效地理解 Go 项目。该工具显著减少了理解和使用 Go 包所需的 token 数量,从而提升了 LLMs 在 Go 开发中的性能。
View on GitHub
Overview
产品定位
godoc-mcp
是一个专为 Go 语言开发者设计的文档访问工具,旨在通过 MCP 协议为 LLMs 提供高效的 Go 文档访问能力。
核心功能
- 高效的文档访问:仅返回必要的文档信息,显著减少 token 使用。
- 结构化信息:提供一致且结构化的官方包文档。
- 项目导航:智能处理项目结构,帮助理解多包项目。
- 集成友好:可与其他 MCP 服务器协同工作,支持高级和详细的代码分析。
- 性能优化:内置缓存和优化的 token 使用,使文档检索快速高效。
- 本地支持:无需互联网连接即可访问文档。
适用场景
- 项目理解:快速了解 Go 项目的包结构和功能。
- 接口理解:获取特定包的接口文档。
- 实现指导:查看特定接口或类型的实现文档。
- API 使用:理解如何创建和使用特定类型或函数。
- 库探索:探索第三方库的文档。
- 方法发现:查看特定类型的方法列表。
- 学习指导:获取特定包或类型的配置和使用说明。
- 包浏览:查看项目中的多个包及其功能。
工具列表
- get_doc 工具:用于获取 Go 包或文件的文档,支持以下参数:
path
:Go 包或文件的路径(导入路径或文件路径)。target
(可选):特定符号(函数、类型等)的文档。cmd_flags
(可选):额外的 go doc 命令标志。working_dir
(可选):模块感知文档的工作目录。
常见问题解答
- 本地路径问题:确保路径包含 Go 源文件或指向包含 Go 包的目录。
- 模块相关错误:确保在 MCP 服务器配置中正确设置了 GOPATH 和 GOMODCACHE 环境变量。
- 模块上下文处理:服务器自动处理外部包的模块上下文,但特殊情况下可提供特定的 working_dir。
使用教程
使用依赖
确保已安装 Go 环境。
安装教程
go install github.com/mrjoshuak/godoc-mcp@latest
调试方式
安装完成后,可通过配置 MCP 服务器来使用 godoc-mcp
。示例配置如下:
{
"mcpServers": {
"godoc": {
"command": "/path/to/godoc-mcp",
"args": [],
"env": {
"GOPATH": "/path/to/go",
"GOMODCACHE": "/path/to/go/pkg/mod"
}
}
}
}