MCP server for describing and invoking gRPC methods
grpc-invoke-mcp is an MCP server for calling gRPC methods from AI agents like Claude Code, Codex, Cursor, and other MCP-compatible tools.
It gives agents a simple way to inspect gRPC APIs and invoke unary RPCs using either server reflection or local .proto files. This is useful when you want an agent to explore services, understand request and response schemas, make real gRPC calls, and test gRPC integrations during agent-driven development without writing one-off scripts.
.proto filesRun the server with npx:
npx -y @grulex/grpc-invoke-mcp@latest
The package downloads a platform-specific grpc-invoke-mcp binary during installation.
Project config file: .mcp.json
{
"mcpServers": {
"grpc-invoke": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@grulex/grpc-invoke-mcp@latest"]
}
}
}
Optional CLI setup:
claude mcp add --transport stdio grpc-invoke -- npx -y @grulex/grpc-invoke-mcp@latest
User config file: ~/.codex/config.toml
[mcp_servers.grpc-invoke]
command = "npx"
args = ["-y", "@grulex/grpc-invoke-mcp@latest"]
Optional CLI setup:
codex mcp add grpc-invoke -- npx -y @grulex/grpc-invoke-mcp@latest
Project config file: .cursor/mcp.json
{
"mcpServers": {
"grpc-invoke": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@grulex/grpc-invoke-mcp@latest"]
}
}
}
You can also install it globally in ~/.cursor/mcp.json.
grpc_describeUse this tool to inspect services, methods, and message types.
Common use cases:
.proto filesgrpc_callUse this tool to invoke unary gRPC methods with a JSON request body.
Common use cases:
localhost:50051 using reflection."helloworld.Greeter/SayHello."helloworld.Greeter/SayHello on localhost:50051 with { \"name\": \"World\" }."package.Service/Method using proto_files and import_paths instead of reflection."This package exposes an MCP server over stdio. Your agent starts it locally and discovers tools such as:
grpc_describe for schema inspectiongrpc_call for unary RPC invocationUnder the hood, the npm package launches a native grpc-invoke-mcp binary bundled at install time. The binary supports:
.proto definitionsThe installer currently targets:
npx cannot start the serverMake sure Node.js and npx are installed and available in your PATH.
The npm package downloads a release artifact during installation, so your machine needs network access to GitHub Releases.
If the target server does not expose gRPC reflection, use local .proto files and import_paths instead.
Check the target host, port, TLS settings, and whether the server expects plaintext or TLS.
Confirm the config file is in the right location for your client, restart the client if needed, and verify the server appears in the MCP list or tools panel.
If you work with gRPC services, this MCP server lets AI agents inspect and call those services directly. Instead of translating API details by hand, you can let Claude Code, Codex, Cursor, or other MCP-compatible agents explore the contract and execute safe, targeted requests for debugging, integration work, API discovery, and gRPC testing in agent-driven development workflows.
MIT
Source-derived launch command. Check the maintainer’s required arguments and credentials before running:
npx -y @grulex/grpc-invoke-mcpMerge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.
{
"mcpServers": {
"io-github-grulex-grpc-invoke-mcp": {
"command": "npx",
"args": [
"-y",
"@grulex/grpc-invoke-mcp"
]
}
}
}Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.
Claude Desktop setup reference@grulex/grpc-invoke-mcpnpmio.github.grulex/grpc-invoke-mcp works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.
~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.~/.cursor/mcp.jsonRestart Cursor for changes to take effect..vscode/mcp.jsonReload VS Code window for changes to take effect.~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect..mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.