返回市场
godoc-MCP服务器

godoc-MCP服务器

作者:yikakia32 星标更新:2025-07-15

项目介绍

godoc-mcp-server

从 pkg.go.dev 搜索 Golang 包及其文档,并作为 MCP 服务器提供信息给 LLM。

安装

你可以从 发布页面 下载编译好的二进制文件。

或者你可以从源码安装并自行编译:

go install github.com/yikakia/godoc-mcp-server/cmd/godoc-mcp-server@latest

使用

只需使用你的客户端进行请求。它通过标准 I/O 提供服务。

待办事项

  • localCache
    • 使用本地缓存避免每次搜索(来自 Reddit 用户)
  • searchPackage
    • 被多少个包导入
  • getPackageInfo
    • 获取示例
  • release
    • 使用 GitHub Actions 发布到多个平台

开发经验

描述非常重要,当描述参数时应告诉客户端如何使用一个工具的输出,并将其格式转换以匹配另一个工具的输入。

例如,searchPackage 的输出包含子包的名称,但不包含包的名称。因此,如果希望 LLM 使用 getPackageInfo 来获取子包的信息,我为参数 packageName 写了如下描述:

用于搜索的包名。如果之前使用过 searchPackages,并且用户想要获取子包的信息。你应该将它们组合起来。例如,当用户查询 mcp 并返回 packageName: github.com/mark3labs/mcp-go/mcp 和子包 client,那么如果用户想要获取 client 包的信息,你应该将 packageName 设置为 github.com/mark3labs/mcp-go/mcp/client 而不是 client。

在使用这个详细的描述时,LLM 将会在搜索后告诉你一些子包的名称。你可以直接告诉它你想要获取哪个包的信息,或哪个包和子包的名称,它会将它们组合起来并调用 getPackageInfo 来获取信息。

所以,也许我们应该让用户配置这些描述,使工具更加有用和高效。

库使用

此模块导出的 Go API 目前应被视为不稳定,并可能有重大更改。未来,我们可能会提供稳定性;如果有使用场景需要这种稳定性,请提交一个问题。

许可证

本项目根据 MIT 开源许可证的条款授权。请参阅 MIT 获取完整条款。