protoc-gen-go-mcp について
protoc-gen-go-mcp は、gRPC サービス向けの MCP サーバー実装を生成する Go の protoc プラグインです。Protocol Buffer 定義から Go コードを生成する開発者向けです。
主な機能
- 01proto ファイルから MCP サーバーコードを生成
- 02gRPC サービス定義に対応
- 03protoc のコード生成に組み込み
活用シーン
- 01gRPC サービス向け MCP 実装の生成
- 02Protocol 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 です。挨拶をお願いできますか?」のような内容を尋ねてください。LLM はサンプルの 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 対応
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。