# Mockwave

An open-source, multi-protocol mock server for HTTP, GraphQL, SOAP, and gRPC, with weighted traffic splitting, dynamic JavaScript responses, chaos-testing fault injection, and an MCP server so an AI assistant can generate mock rules directly.

Mockwave defines mock rules and simulations in JSON, managed through a real-time browser admin UI or generated by an AI assistant, and responds to HTTP REST, GraphQL, SOAP, and reflection-free gRPC requests. Rules can weight traffic between a mock response and forwarding to a real service, compute dynamic responses with per-simulation JavaScript (via Goja), and be hot-reloaded without restarting the server.

It supports JSON file, DynamoDB, MongoDB, and Azure Cosmos DB store backends, captures matched or unmatched requests for later assertion with global TTL expiry, and can inject chaos -- latency, errors, resets, truncation, throttling -- to simulate degraded services or cascading failures without host agents or root access. An AWS-specific mode intercepts SNS, SQS, and EventBridge publishes on the mock port for assertion, optionally forwarding them on to the real broker.

`mockwave mcp` exposes a Model Context Protocol server so Claude Code can create rules, manage simulations, and auto-generate mocks from an OpenAPI 2.0 or 3.0 specification.

Website: https://github.com/lfdubiela/mockwave
