API testing for the era of AI coding agents.
An MCP server that lets AI agents perform API testing autonomously - REST, GraphQL, WebSocket, SSE, and gRPC - without any GUI, manual clicking, or heavyweight desktop app. A lightweight, token-efficient alternative to Postman and Bruno.
npx -y @thupham/volley-mcp · cursor / windsurf / claude / vscode
{
"tool": "http_request",
"input": {
"method": "POST",
"url": "https://api.example.com/login",
"body": { "user": "a", "pass": "{{secret_pass}}" },
"assert": [
{ "status": 200 },
{ "jsonpath": "$.token", "exists": true },
{ "timeMs": { "lt": 500 } }
],
"extract": { "token": "$.token" }
}
}
→ {
"status": 200,
"timeMs": 142,
"assertions": { "passed": 3, "failed": 0 },
"extracted": { "token": "***redacted***" },
"responseHandle": "resp_a1b2"
}Design pillars
Built for agents, not clickers
Four principles that shape every tool, every response, and every byte on the wire.
Declarative testing
Agent emits JSON, not JavaScript
Postman agent mode makes you write pm.test scripts. Volley assertions are structured data the model can emit directly — no code generation, no JS to parse, no verbose output.
Matchers: equals, notEquals, in, contains, matches (regex), exists, gt/gte/lt/lte, length, plus not: negation and schema: JSON Schema validation.
Protocols
One server, every protocol
Stop juggling Postman, a WS client, an SSE inspector, and a GraphQL playground. Volley covers them all behind a single MCP tool surface.
Why this exists
Postman without the Postman
The tools agents already use are GUI-first and verbose. Volley is the inverse: a small, open, token-thin tool surface designed for the model context.
| Pain with Postman / Bruno | Volley approach |
|---|---|
| Require human clicking in a GUI | Agent-native: everything is an MCP tool call |
| Postman is heavy, enterprise features are paywalled | Small, open, single local binary + thin MCP layer |
| Verbose responses blow up the LLM context window | Rust core summarizes/compresses output before it reaches the agent |
| Tests are JS scripts you write (pm.test / pm.expect) | Tests are declarative JSON the agent emits (assert + extract) |
| Collections are locked into proprietary formats | Plain YAML/JSON files, git-friendly |
| Separate tools per protocol | One server for REST/GraphQL/WS/SSE/gRPC |
Ship API tests from your editor.
Install Volley once and every agent you run gets a full API testing toolkit - no GUI, no copy-paste, no context bloat.