gRPC Transport for MCP
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@gRPC Transport for MCPcall my_tool with x=42"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
gRPC Transport for MCP
Experimental / Proof of Concept
This package is a proof of concept for experimentation purposes. It is not intended for production use. The official Python package is being developed at GoogleCloudPlatform/mcp-grpc-transport-py — please follow/star that repo to stay updated.
A gRPC transport implementation for the Model Context Protocol (MCP) using FastMCP.
Background
SEP: gRPC as a native MCP transport — the specification enhancement proposal
Features
Server: expose a FastMCP server over gRPC
Client: call a gRPC MCP server and get back native
mcp.typesobjectsTool calls with text and image content, structured output, and progress reporting
Proto definitions sourced from GoogleCloudPlatform/mcp-grpc-transport-proto
Installation
uv syncThe proto package (mcp-transport-proto) is fetched directly from GitHub via [tool.uv.sources] — no manual proto compilation needed.
Server
import asyncio
from mcp.server.fastmcp import FastMCP
from grpcmcp import serve_grpc
mcp = FastMCP("My Server")
@mcp.tool()
async def my_tool(x: int) -> str:
"""Does something useful."""
return str(x)
if __name__ == "__main__":
asyncio.run(serve_grpc(mcp)) # default: 0.0.0.0:50051
# asyncio.run(serve_grpc(mcp, port=9090))Client
import asyncio
from grpcmcp import GRPCClient
async def main():
async with GRPCClient("localhost", 50051) as client:
tools = await client.list_tools()
for tool in tools.tools:
print(f"{tool.name}: {tool.description}")
result = await client.call_tool("my_tool", {"x": 42})
for content in result.content:
if content.type == "text":
print(content.text)
asyncio.run(main())GRPCClient reference
Parameter | Type | Description |
|
| Server hostname |
|
| Server port |
|
| Default per-call timeout in seconds |
|
| Raw gRPC channel options |
Method | Returns |
|
|
|
|
Running the examples
Start the server:
uv run python example/grpc_example_server.pyIn another terminal, run the client:
uv run python example/grpc_example_client.pyRequirements
Python >= 3.10
grpcio >= 1.78.0
protobuf >= 4.25.0
mcp == 1.25.0
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/pawbhard/grpcmcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server