使用说明
去mcp
该项目是一个模型上下文协议(MCP)服务器,旨在为AI助手提供Go文档工具。它通过MCP公开了Go的文档和包列表功能,允许AI系统访问官方Go文档并更有效地理解Go代码库。
特性
- 转到文档访问:使用以下命令查询Go包、类型、函数或方法的文档
go doc命令。 - 软件包列表:使用以下命令列出Go模块中的可用包
go list命令。
需求
- 转到1.16或更高版本
- 配置了GOPATH的Go工作环境
- 访问要记录的包
设置
-
安装软件包:
go install github.com/wricardo/go-mcp@latest -
通过在MCP设置中添加以下内容来配置MCP兼容助手:
"go-mcp": { "command": "go-mcp", "env": { "WORKDIR": "/path/to/your/go/project" }, "disabled": false, "autoApprove": [] }
工具
-
go_doc:包、类型、函数或方法的Get Go文档。
- 参数:
pkgSymMethodOrField:用于查找文档的包、符号、方法或字段。cmd_flags:(可选)其他命令标志,如-all,-src,或-u.
- 参数:
-
go_list:列出Go包或模块。
- 参数:
packages:要列出的包装模式数组(例如。,["./...", "github.com/user/repo/..."]).cmd_flags:(可选)其他命令标志,如-json.
- 参数:
例子
使用go_doc
{
"pkgSymMethodOrField": "net/http",
"cmd_flags": ["-all"]
}
{
"pkgSymMethodOrField": "fmt.Println",
"cmd_flags": ["-src"]
}
使用go_list
{
"packages": ["./..."]
}
{
"packages": ["github.com/user/repo/module..."]
}
{
"packages": ["github.com/user/repo/..."]
}
最佳实践
- 始终尝试
go_doc在直接检查源代码之前 - 在查看特定符号之前,先从基本的软件包文档开始
- 使用
-all综合包文档标志 - 使用
-u标记以查看未显示的符号 - 使用
-src当文档不足时,标记以查看源代码
