gRPC CLI

What gRPC CLI is
gRPC CLI is a free, open-source command-line tool in the gRPC repository for inspecting gRPC services and making unary RPC calls. It can attach metadata to requests, show metadata returned by a server, and handle common server authentication. With server reflection, it can list a server’s services and methods. If 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. The tool is available for Linux, macOS, and Windows, with a desktop deployment model. It must be built from the gRPC source repository: the documented build uses CMake and the `make grpc_cli` target. The documentation describes user-friendliness as below par and identifies streaming RPC support as a desired capability rather than part of its current core functionality. It also says grpcurl is better maintained than gRPC CLI in its current state. The gRPC repository identifies the license as Apache-2.0. The listed free plan costs nothing and covers building from source and unary RPC calls.
Who it suits
gRPC CLI suits developers or operators who need to inspect gRPC services and call remote methods from the command line. It is a fit for people comfortable building from source and working with server reflection or local proto files.
What it does well
- Makes unary RPC calls to gRPC servers.
- Attaches request metadata and displays returned metadata.
- Handles common server authentication.
- Lists services and methods using server reflection.
- Uses local proto files when reflection is unavailable.
- Runs on Linux, macOS, and Windows.
What to know first
- Must be built from the gRPC source repository.
- Documentation says it is not yet user-friendly.
- Streaming RPC support is listed as desired, not core functionality.
- Documentation says grpcurl is better maintained.
Limits
The free plan covers building from source and unary RPC calls. Streaming RPC support is described as a desired capability rather than documented core functionality.
Plans
| Plan | Billed and limits | Price |
|---|---|---|
| gRPC CLI | Build from source · unary RPC calls | Free |
As grpc.github.io lists them, read 7 Oct 2026. The maker's own page has the final word.
Getting started
- Open the gRPC CLI documentation website.
- Use a Linux, macOS, or Windows environment.
- Build the tool from the gRPC repository source with CMake.
- Run the `make grpc_cli` build target.
- Use server reflection or provide local proto files for service definitions and request or response types.
gRPC CLI is a command-line utility for inspecting gRPC servers and calling their methods. It suits developers comfortable building from source who want service discovery and unary requests from a terminal. Its focused workflow is useful, but the build burden and limited maturity make it less appealing as an everyday client.
Overview
The tool pairs service inspection with basic request-and-response calls. Reflection can expose a server’s services and methods, while support for common authentication and metadata covers routine access needs. Developers already working with the gRPC repository may value that combination; others must weigh it against a source build and documentation that acknowledges shortcomings in user-friendliness.
Key features
- Service discovery: Server reflection lets gRPC CLI list services and methods, making it useful for exploring servers that expose their definitions. Most commands need reflection. If it is unavailable, local proto files can provide service definitions and request or response types.
- Unary calls and metadata: The CLI sends unary RPCs, attaches metadata, displays received metadata, and handles common server authentication. That is enough for straightforward request-and-response work, but not streaming workflows.
- Proto message formats: Requests can be read in text or wire form; responses can be displayed as text or written in wire form to a file. This gives command-line users practical flexibility when supplying inputs or capturing output.
- Build process: The documented route is to build from the gRPC repository source with CMake and the make grpc_cli target. That is manageable for developers familiar with the project’s build process, but a real barrier for anyone expecting a ready-to-run download.
Pricing
gRPC CLI is free and open source under the Apache-2.0 license. Its sole plan, gRPC CLI, costs nothing and includes a source build and unary RPC calls. The price is straightforward; the trade-off is that getting started requires building the tool yourself.
Platforms
gRPC CLI is listed for Linux, macOS, and Windows. It is a desktop tool, with command-line access to gRPC services rather than a web interface.
Who it's for
This is a sensible fit for developers who need to inspect reflected gRPC services or make unary calls from a terminal, and who are comfortable compiling software from source. It is a weaker choice for users who want a more polished client, need streaming RPCs, or cannot rely on server reflection or supply local proto files.
Pros and cons
- Pros: Reflection-based service and method discovery; unary calls with metadata and common authentication; local proto-file fallback; flexible text and wire message handling; free, Apache-2.0-licensed software.
- Cons: Requires a CMake source build; most commands rely on server reflection unless local proto files are supplied; streaming is not part of its current core functionality; its documentation says it is not yet up to par in user-friendliness and describes grpcurl as better maintained.
Alternatives
For a broader selection, browse gRPC Tools. Consider grpcui if you prefer an option with Linux, macOS, Windows, self-hosted, and web platform support; its open-source plan is free. Kreya is another free-plan option for individuals, with request history limited to the latest request; it is freemium and not open source.
protoc-gen-doc is a free, MIT-licensed option to consider for Protobuf documentation work. ProtoCall may suit users who want a free app with GitHub imports and manually created workspaces. For static documentation generation, sabledocs is a free open-source generator that requires Python 3.11 or later and a Protobuf descriptor file.
Bandura offers a free plan for personal and commercial use with no account, paid seats, or feature tiers. Evans is another free, open-source gRPC client. FintX has a free open-source plan with unlimited gRPC clients, saved requests, import and export, tabs per method, a JSON editor, and projects.
Verdict
Choose gRPC CLI if you want a free terminal tool for discovering gRPC services and making unary calls, and can build it from source. Its command-line coverage is useful for focused inspection and request work, but look elsewhere if you need streaming or a more user-friendly, actively maintained tool; the documentation itself points to grpcurl as better maintained.
Verdict
Choose gRPC CLI if you need a free command-line tool for inspecting gRPC services and making unary calls, and can build it from source. Its documented core does not include streaming RPC calls, and the documentation describes grpcurl as better maintained.
Questions
How much does gRPC CLI cost?
The listed plan is free.
Is gRPC CLI open source?
Yes. It is identified as open source, and the gRPC repository lists the Apache-2.0 license.
Which platforms does it support?
Linux, macOS, and Windows.
Does gRPC CLI support streaming RPCs?
Streaming is described as a desired capability, not part of its documented core functionality.
How do I get started?
The tool must be built from the gRPC repository source using CMake and the `make grpc_cli` target.
Does it need server reflection?
Most commands need server reflection. Local proto files can provide service definitions and request or response types when reflection is unavailable.
Facts from gRPC CLI's own pages
- Alternative tool
- The documentation says grpcurl is better maintained than this tool in its current state. · grpc.github.io, 4 Oct 2026
- Authentication
- The documented core functionality includes handling common authentication to a server. · grpc.github.io, 4 Oct 2026
- Build and availability
- The tool must be built from the gRPC repository source using CMake and the grpc_cli build target. · grpc.github.io, 7 Oct 2026
- Build requirement
- The documentation says the tool must be built from source and describes it as not yet up to par in user-friendliness. · grpc.github.io, 4 Oct 2026
- Build system
- The documented build procedure uses CMake and the command make grpc_cli. · grpc.github.io, 4 Oct 2026
- Current maturity
- The documentation says the tool is not yet up to par in user-friendliness and that grpcurl is better maintained. · grpc.github.io, 7 Oct 2026
- Intended users
- The documentation describes use by people inspecting gRPC services and calling remote methods from the command line. · grpc.github.io, 7 Oct 2026
- License
- The gRPC repository identifies its license as Apache-2.0. · github.com, 7 Oct 2026
- Message formats
- It can read proto requests in text or wire form, display proto responses in text, and write wire-form responses to a file. · grpc.github.io, 7 Oct 2026
- Metadata and authentication
- It can attach and display metadata and handle common server authentication. · grpc.github.io, 7 Oct 2026
- Platforms
- The documentation mentions Windows, Mac, and Linux in its proto-path instructions. · grpc.github.io, 4 Oct 2026
- Prerequisite
- Most commands need server reflection, though local proto files can be used as an alternative. · grpc.github.io, 7 Oct 2026
- Proto files
- It can use local proto files to find request and response types when server reflection is unavailable. · grpc.github.io, 7 Oct 2026
- Purpose
- gRPC CLI is a command-line tool included in the gRPC repository for interacting with gRPC servers. · grpc.github.io, 7 Oct 2026
- RPC calls
- It can send unary RPCs and display their responses. · grpc.github.io, 7 Oct 2026
- Service discovery
- It can list services and methods through server reflection, and infer request and response types from reflection results. · grpc.github.io, 7 Oct 2026
- Streaming
- The documentation lists streaming RPC support as a desired capability, rather than among the tool’s current core functionality. · grpc.github.io, 4 Oct 2026
- Streaming support
- Sending streaming RPCs is listed as a capability the tool should support, rather than among its current core functionality. · grpc.github.io, 7 Oct 2026
Where gRPC CLI stands on Freedom251
- gRPC Tools#5 of 24