gRPC Mock Server
Test microservices without the real backend
Native Protocol Buffers support. Reflection enabled. All streaming modes. Start mocking gRPC in seconds, not minutes.
Full gRPC Protocol Support
Everything you need to mock gRPC services for testing and development.
Proto File Support
Load your .proto files directly. Mockd parses service definitions and generates mock responses automatically.
gRPC Reflection Enabled
Discover services at runtime without proto files. Works with grpcurl, Evans, and other reflection-aware tools.
All Streaming Modes
Unary, server streaming, client streaming, and bidirectional streaming. Full gRPC protocol support.
Method-Level Configuration
Configure responses per method. Different delays, errors, and responses for each RPC.
Metadata Matching
Match requests based on gRPC metadata headers. Route to different responses based on auth tokens, trace IDs, etc.
Error Simulation
Return specific gRPC status codes: UNAVAILABLE, DEADLINE_EXCEEDED, PERMISSION_DENIED, and more.
Simple Configuration
Define your gRPC mock in YAML. Load proto files or use reflection.
# mockd.yaml - gRPC mock configuration
version: "1.0"
admins:
- name: local
port: 4290
engines:
- name: default
httpPort: 4280
admin: local
workspaces:
- name: default
engines: [default]
mocks:
- id: grpc-services
workspace: default
type: grpc
grpc:
port: 50051
protoFiles:
- ./protos/user_service.proto
- ./protos/order_service.proto
reflection: true
services:
user.UserService:
methods:
GetUser:
response:
id: "1"
name: "John Doe"
email: "john@example.com"
delay: "50ms"
GetUserError:
match:
metadata:
x-test-error: "true"
error:
code: NOT_FOUND
message: "User not found"
order.OrderService:
methods:
StreamOrders:
responses:
- order_id: "ORD-001"
status: "PENDING"
- order_id: "ORD-002"
status: "SHIPPED"
streamDelay: "100ms"Why Mockd for gRPC?
See how Mockd compares to other gRPC mocking solutions.
vs WireMock
No Java runtime required. Mockd starts in <10ms vs WireMock's 5+ seconds.
- Single binary, no JVM
- <30MB vs 200MB+ memory
- Native gRPC support
vs GripMock
Multi-protocol support. Mock your REST, GraphQL, and gRPC services with one tool.
- 7 protocols in one binary
- Record & replay traffic
- CLI, MCP server, and HTTP admin API
vs Postman
Standalone server that works in CI/CD. No cloud dependency, no account required.
- Runs locally, works offline
- Docker & Kubernetes ready
- No usage limits or quotas
Use Cases
How teams use Mockd for gRPC testing and development.
Microservices Integration Testing
Test your service in isolation without spinning up the entire dependency graph. Mock upstream gRPC services with realistic responses.
CI/CD Pipeline Testing
Fast, deterministic tests in your pipeline. No flaky network calls, no external service dependencies.
Local Development
Develop frontend or client code without waiting for backend services. Mock responses that match your proto contracts.
Contract Testing
Validate that your client code handles all expected response types, including error cases and edge conditions.
Start Mocking gRPC in Under a Minute
Single Go binary. No dependencies. No Java. No Docker required.
curl -sSL https://get.mockd.io | sh
mockd init && mockd up