MCP Server for gRPC
Documentation
grpcmcp
A simple MCP server that will proxy to a grpc backend based on a provided descriptors file or using reflection.
Quick Start
1. Install the binary: go install . or go install github.com/adiom-data/grpcmcp Ensure the go bin directory is in your PATH.
2. In a terminal, run the example grpc server go run example/main.go. This will start a grpc health service on port 8090 with server reflection enabled. Note that this runs on the default port that grpcmcp will connect to.
3. SSE Transport In another terminal, run grpcmcp --hostport=localhost:3000 --reflect. Specifying hostport will use SSE. The SSE endpoint will be served at http://localhost:3000/sse.
3. STDIN Transport Set up the MCP config. e.g.
"grpcmcp": {
"command": "grpcmcp",
"args": ["--reflect"]
}Options / Features
grpcmcp --help for a full list of options.
hostportstring - When set, use SSE, and this serves as the server host:port.
descriptorsstring - Specify file location of the protobuf definitions generated frombuf build -o protos.pborprotoc --descriptor_set_out=protos.pbinstead of using gRPC reflection.
reflect- If set, use reflection to retrieve gRPC endpoints instead of descriptor file.
urlstring - Specify the url of the backend server.
servicesstring - Comma separated list of fully qualified gRPC service names to filter.
bearerstring - Token to attach in anAuthorization: Bearerheader.
bearer-envstring - Environment variable for token to attach in anAuthorization: Bearerheader. Overridesbearer.
headerstring (repeatable) - Headers to add inKey: Valueformat.
Help
Join our Discord at https://discord.gg/hDjx3DehwG
Similar MCP
Based on tags & features
Trending MCP
Most active this week