grpcui is a CLI tool that provides a web-based GUI for interacting with gRPC servers. It allows you to browse service schemas (via reflection, .proto files, or protoset files), construct requests using a dynamic HTML form or raw JSON, and view responses including metadata (headers/trailers) and message bodies.
Basic Usage
Run the tool against your server address. If your server does not use TLS, use the -plaintext flag.
grpcui -plaintext localhost:12345
Once running, the tool will output a URL (e.g., http://127.0.0.1:60551/...) which you can open in a browser to access the Web UI.
Key Features
- Dynamic Web Form: Automatically generates a form based on the protobuf message structure, including support for nested messages,
oneof fields, maps, and repeated fields. - Well-known Types: Provides specialized UI for types like
google.protobuf.Timestamp (date picker) and google.protobuf.StringValue (simple textbox). - JSON Input: A dedicated tab allows you to paste or edit the entire request as a raw JSON object using standard Protobuf JSON mapping.
- Streaming Support: Supports streaming RPCs by allowing you to define a sequence of messages (rendered as a list/array in the UI).
- Response Inspection: Displays response headers, trailers, and the response body (or error messages with gRPC status codes) in a human-readable table format.