What is gRPC?

gRPC is a high-performance RPC framework from Google that uses Protocol Buffers over HTTP/2 for compact, strongly-typed, bidirectional service-to-service calls, popular for internal microservice communication.

gRPC is a remote procedure call framework that lets a client invoke methods on a remote service as if they were local functions. It serializes messages with Protocol Buffers, a compact binary format defined in .proto schema files, and transports them over HTTP/2, which gives it multiplexed streams, header compression, and native support for bidirectional streaming. Compared with a JSON REST API, gRPC is faster on the wire, strongly typed end to end (the .proto file generates client and server stubs in many languages), and capable of streaming in both directions, which makes it a default choice for internal microservice-to-microservice communication in large systems. Its tradeoffs are real: the binary format is not human-readable, browser support requires a proxy layer (gRPC-Web), and the tooling has a steeper learning curve than calling a URL with curl. gRPC sits alongside REST and GraphQL as one of the three dominant API styles, each suited to different boundaries, REST for public web APIs, GraphQL for flexible client-driven queries, gRPC for tight, high-throughput service meshes. Note that MCP itself uses JSON-RPC over HTTP, not gRPC. For an AI agent navigating a microservice estate, knowing which services speak gRPC and where the .proto contracts live is useful architectural context to retain in shared memory.