gRPC CLI vs grpcui
gRPC CLI
grpc.github.iogrpcui
github.comSide by side
| Figure | gRPC CLI | grpcui |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Web | — | Yes |
| Windows | Yes | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| Self-hosted | — | Yes |
| Plans published | 1 | 1 |
| Spec score · gRPC Tools | 8.1 (#5) | 8.0 (#9) |
| License | The gRPC repository identifies its license as Apache-2.0. | grpcui is released under the MIT license. |
| Platforms | The documentation mentions Windows, Mac, and Linux in its proto-path instructions. | web_and_desktop |
| Purpose | gRPC CLI is a command-line tool included in the gRPC repository for interacting with gRPC servers. | grpcui is a command-line tool for interacting with gRPC servers through a browser-based web UI. |
Plans
In their own words
gRPC CLI
gRPC CLI is a free, open-source command-line tool in the gRPC repository for inspecting services and calling remote methods. It can send unary RPCs, attach metadata to requests, display metadata received from a server, and handle common server authentication. With server reflection, it can list services and methods; when reflection is unavailable, local proto files can supply service definitions and request or response types. Requests can be read in proto text or wire form. Responses can be displayed as text or written to a file in wire form. Streaming RPC support is described as a desired capability, not part of the documented core functionality. The tool runs on Linux, macOS, and Windows, but must be built from repository source. The documented process uses CMake and the `make grpc_cli` build target. Its documentation describes the tool as not yet up to par in user-friendliness and says grpcurl is better maintained in its current state. The gRPC repository identifies its license as Apache-2.0.
grpcui
grpcui is a free, open-source command-line tool for interacting with gRPC servers through a browser-based interface. It is aimed at gRPC APIs rather than REST APIs and can discover service schemas through server reflection, .proto source files, or compiled protoset files. Its interface builds dynamic forms for protobuf messages, including well-known types, oneofs, and maps, and also accepts a complete JSON request body. grpcui supports RPC methods including streaming, then displays response headers, messages or errors, trailers, and readable HTML tables. It connects to plaintext and TLS servers, including mutual TLS with client certificates. Streaming requests have a constraint: they must be constructed all at once, so bidirectional streams cannot be handled interactively like they can with grpcurl. The project also provides Go packages for embedding a form or complete web UI in a Go HTTP server. Installation is documented through Homebrew on macOS or Linux, and through the Go install command. It is released under the MIT license.