A command-line tool for calling gRPC servers, like curl but using JSON input over gRPC, with schema discovery via server reflection or proto files.
fullstorydev/grpcui
A command-line tool that starts a browser-based UI for interactively sending requests to gRPC servers, similar to Postman for REST.
Open-source alternative to:Postman
- Stars
- 5,935
- Forks
- 426
- Open issues
- 79
- Last commit
- 5 days ago
What is it?
grpcui lets developers call gRPC methods from a web browser without writing client code. Run it against a server and it serves a form-based UI where you pick a service and method, fill in request fields, add metadata, and inspect the response headers, body and trailers.
The tool discovers the service schema through server reflection, or from .proto source files or compiled protoset files when reflection is unavailable. The request form is generated dynamically from the message definition and supports nested messages, one-ofs, maps and well-known types such as Timestamp. Requests can also be entered as raw JSON.
Both plain-text and TLS connections are supported, including mutual TLS. Streaming methods are supported, though the whole request stream is composed before sending and the full response stream is shown afterward, so it does not support interactive bidirectional streaming. The project also ships Go packages for embedding the same UI into an existing HTTP server.
Key features
- 01Interactive web form generated from the gRPC service schema.
- 02Schema discovery via server reflection, .proto files, or protoset files.
- 03Supports plain-text and TLS, including mutual TLS.
- 04Supports unary and streaming methods, with raw JSON request editing.
- 05Displays response headers, messages, error status and trailers.
- 06Provides Go packages for embedding the UI in other HTTP servers.
Use cases
- Manually testing a gRPC service during development without writing a client.
- Exploring an unfamiliar gRPC API through its reflection-exposed methods.
- Debugging requests that need specific metadata or TLS client certificates.
- Embedding a gRPC testing console into an internal Go web application.
Quick start
- 1
Install with Homebrew (macOS or Linux)
brew install grpcui - 2
Or install from source with the Go tool
go install github.com/fullstorydev/grpcui/cmd/grpcui@latest - 3
Run grpcui against a plaintext gRPC server and open the printed URL in a browser
grpcui -plaintext localhost:12345
Things to know
- Bidirectional streams are not interactive: all request messages must be entered at once and all responses are shown together.
In collections
Topics
FAQ
- What is grpcui?
- A command-line tool that starts a browser-based UI for interactively sending requests to gRPC servers, similar to Postman for REST. grpcui lets developers call gRPC methods from a web browser without writing client code. Run it against a server and it serves a form-based UI where you pick a service and method, fill in request fields, add metadata, and inspect the response headers, body and trailers.
- Is grpcui free to use? What license does it have?
- grpcui is open source under the MIT license. Check the license terms before using it in commercial products.
- Is grpcui still maintained?
- Actively maintained. The last commit to grpcui was on Nov 2, 2026.
- What can I use grpcui for?
- Manually testing a gRPC service during development without writing a client. Exploring an unfamiliar gRPC API through its reflection-exposed methods. Debugging requests that need specific metadata or TLS client certificates. Embedding a gRPC testing console into an internal Go web application.
- How do I install grpcui?
- Install with Homebrew (macOS or Linux): brew install grpcui Or install from source with the Go tool: go install github.com/fullstorydev/grpcui/cmd/grpcui@latest Run grpcui against a plaintext gRPC server and open the printed URL in a browser: grpcui -plaintext localhost:12345
- Where can I get grpcui?
- The source code and installation instructions are on GitHub: https://github.com/fullstorydev/grpcui
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A CLI and HTTP server that turns OpenAPI v2/v3 and Postman Collection files into mock APIs with request validation and a validation proxy.
A native, local-first API client for REST, gRPC, GraphQL and WebSocket, written in Go, with a built-in traffic proxy.
Terminal API client that stores HTTP, GraphQL, gRPC, WebSocket and SSE requests as plain .http files you can version in git.
Open-source API development ecosystem for sending REST, GraphQL, WebSocket, SSE, Socket.IO and MQTT requests, offered as web, desktop and CLI apps.
Open-source API client that stores collections as plain-text files on your filesystem, an offline alternative to Postman and Insomnia.