mcpField
P
protoc-gen-go-mcp

protoc-gen-go-mcp

本地服务
github.com/juliendoutre开发工具07 周前更新

关于 protoc-gen-go-mcp

protoc-gen-go-mcp 是一个 Go 语言 protoc 插件,可为 gRPC 服务生成 MCP 服务实现,适合从 Protocol Buffer 定义生成 Go 代码的开发者。

主要功能

  1. 01从 proto 文件生成 MCP 服务代码
  2. 02支持 gRPC 服务定义
  3. 03接入 protoc 代码生成流程

适用场景

  1. 01为 gRPC 服务生成 MCP 实现
  2. 02在 Protocol Buffer 代码生成流程中加入 MCP 输出

MCP 相关

该插件为 gRPC 服务生成 MCP 服务实现,使 MCP 客户端能够调用生成的服务。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

protoc-gen-go-mcp

入门

brew tap juliendoutre/protoc-gen-go-mcp https://github.com/juliendoutre/protoc-gen-go-mcp
brew install protoc-gen-go-mcp

用法

brew install protobuf
go install google.golang.org/protobuf/cmd/protoc-gen-go@latest
go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest
protoc ./example/api.proto --go_out=./example/ --go-grpc_out=./example/ --go-mcp_out=./example/

运行示例

cd example/cmd/mcp && go install .
cd ../../../example/cmd/server && go run .

打开你喜欢的 IDE,并将 MCP 添加到配置中。例如,在 Cursor 中:

// ~/.cursor/mcp.json
{
  "mcpServers": {
    "example": {
      "command": "mcp",
      "args": [],
      "env": {}
    }
  }
}

然后在聊天中提出类似“我叫 Julien,可以帮我获取一条问候语吗?”的问题。大模型应会请求示例 MCP 服务。

开发

检查代码
brew install golangci-lint
golangci-lint run
发布新版本
git tag -a v0.1.0 -m "New release"
git push origin v0.1.0
更新示例生成代码
go install .
protoc ./example/api.proto --go_out=./example/ --go-grpc_out=./example/ --go-mcp_out=./example/

参考资料

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。