ZeroMCP v0.1.0 is here. v0.2.0 coming soon.
10 Languages HTTP Transport Open Source Harness

How fast is your
MCP server?

MCP over stdio is a demo. Production means HTTP. ZeroMCP gives you a handler function — plug it into whatever framework your team already runs.

ZeroMCP vs Official SDKs. Same tool. Same transport.

Both servers run the same hello tool in Docker containers over HTTP. 5 minutes sustained load. Same benchmark client, same methodology.

Rust 2.1x
ZeroMCP (Actix) 5,111 req/s 0.17% CPU · 4 MB
vs.
Official SDK 2,452 req/s 0.03% CPU · 2,420 MB*
* rmcp leaks memory: 126 MB → 2.4 GB over 5 minutes.
Full comparison →
Node.js 1.7x
ZeroMCP (bare http) 4,539 req/s 0.02% CPU · 26 MB
vs.
Official SDK 2,610 req/s 0.02% CPU · 174 MB
Full comparison →
C# 1.8x
ZeroMCP (ASP.NET) 4,421 req/s 1.47% CPU · 314 MB
vs.
Official SDK 2,517 req/s 0.05% CPU · 78 MB
Full comparison →
Go 4.5x
ZeroMCP (Chi) 4,024 req/s 0.00% CPU · 23 MB
vs.
Official SDK 893 req/s 0.03% CPU · 44 MB
Full comparison →
Java 1.4x
ZeroMCP (Javalin) 3,791 req/s 0.16% CPU · 207 MB
vs.
Official SDK 2,658 req/s 0.15% CPU · 217 MB
Full comparison →
Ruby 1.5x
ZeroMCP (Rack+Puma) 3,217 req/s 0.06% CPU · 26 MB
vs.
Official SDK 2,163 req/s 0.04% CPU · 56 MB
Full comparison →
Kotlin 5.2x
ZeroMCP (Ktor) 2,848 req/s 0.11% CPU · 194 MB
vs.
Official SDK 548 req/s 0.19% CPU · 204 MB
Full comparison →
Python 4.1x
ZeroMCP (Starlette) 2,623 req/s 0.28% CPU · 27 MB
vs.
Official SDK 635 req/s 0.04% CPU · 87 MB
Full comparison →
Swift 23x
ZeroMCP (Vapor) 1,730 req/s 0.21% CPU · 96 MB
vs.
Official SDK 74 req/s 1.76% CPU · 39 MB
Full comparison →
PHP 92x
ZeroMCP (Slim) 1,561 req/s 0.00% CPU · 33 MB
vs.
Official SDK 17 req/s 0.36% CPU · 64 MB
Full comparison →

What breaks under pressure

"Every AI coding session spawns a tree of child processes. When the session ends, these processes are supposed to terminate. They don't." We sent 21 attack scenarios at 3 official MCP SDKs. Malformed JSON, binary garbage, memory leaks, hanging tools, rapid-fire floods.

C#
20/21
1 degraded (tool hang timeout)
PHP
19/21
2 corrupted (giant string, slow tool)
Ruby
19/21
1 crashed (binary garbage), 1 corrupted

Official SDK vs ZeroMCP

Side-by-side for each language. Code examples, architecture, what you gain and what you lose.


Methodology

Don't trust our numbers. Run them yourself. Docker containers, pinned versions, open-source harness.

Transport

JSON-RPC 2.0 over HTTP POST. The same protocol MCP clients use in production.

Environment

Docker containers (Ubuntu 24.04), isolated CPU/memory allocation.

Duration

300 seconds sustained load. Snapshots every 10 seconds. 50 warmup requests discarded.

Metrics

Throughput (req/s), latency (p50/p95/p99), memory (VmRSS), CPU (utime + stime).

Chaos

21 attacks per language. Malformed input, binary garbage, memory leaks, hanging tools, rapid-fire.

Frameworks

ZeroMCP embedded as a handler function. No proxy. No sidecar. Same process as your server.

Run it yourself on GitHub →