Measured 2026-08-19 on Windows 11: eleven popular MCP servers hold 178-422MB of RAM each (median 188MB), start in 0.5-1.9 seconds warm, and a concurrent five-server stack totals 961.6MB — confirmed by two independent measurement paths. Runtime floors: 52MB bare Node, 15MB bare Python. Published as open CC BY 4.0 CSV.
By LK Wood IV · Published 2026-08-20 · ~3 min read · St. Louis County, MO
The short version
I benchmarked eleven of the most-recommended MCP servers for what they cost to keep resident. The answer: 178-422MB of RAM each (median 188MB), ready in 0.5-1.9 seconds warm, with tool counts from 1 to 26. A realistic concurrent five-server stack totals 961.6MB, and two independent measurement paths confirmed that figure to the decimal. Tool count barely predicts weight. The runtime and framework dominate.
Download: mcp-server-bench-2026-08.csv. CC BY 4.0, per-iteration arrays included.
The measured table
| Server | Version | Ready | RSS | Tools |
|---|---|---|---|---|
| GitHub (legacy npm) | 0.6.2 | 547ms | 178MB | 26 |
| Playwright | 1.63.0-alpha-2026-08-05 | 618ms | 227MB | 24 |
| Time (Python) | 1.29.0¹ | 619ms | 181MB | 2 |
| Sequential-thinking | 0.2.0 | 666ms | 186MB | 1 |
| Memory | 0.6.3 | 667ms | 187MB | 9 |
| Filesystem | 0.2.0 | 692ms | 188MB | 14 |
| Git (Python) | 1.29.0¹ | 699ms | 185MB | 12 |
| Fetch (Python) | 1.29.0¹ | 717ms | 220MB | 1 |
| Context7 | 4.0.2 | 815ms | 214MB | 2 |
| Desktop Commander | 0.2.47 | 1,705ms | 275MB | 26 |
| Qdrant (Python, 3.12 pin) | 1.29.0¹ | 1,881ms | 422MB | 2 |
¹ The four Python servers self-report 1.29.0 via serverInfo. That is a framework version string rather than each package’s own release number.
Controls on the same box: bare Node resident loop 52.1MB, bare Python loop 15.2MB. Five-server concurrent stack components: memory 189.8, filesystem 187.1, fetch 221.7, git 184.5, GitHub 178.5. Total: 961.6MB.
Method
Each iteration spawns the server fresh (npx or uvx, warm package cache after one discarded warmup), completes the MCP initialize handshake over stdio, requests tools/list, then samples RSS across the full descendant process tree. I report medians of five iterations, three for the two servers benched later the same evening, marked in the CSV. The bench script lives in our repo at ops/bench/mcp/mcp_bench.py. For the decision layer, meaning which servers earn their memory and which to skip, read the companion article.
Known limitations, named: one Windows 11 machine, warm caches, stdio transport only, readiness and listing timed rather than per-tool-call latency under load. The GitHub entry is the legacy npm package; GitHub’s current first-party server ships as a Go binary and hosted remote. Version 1.0.0 of this dataset; changes will be logged in the update history above.
Frequently asked questions
How much RAM does an MCP server use?
How was the five-server stack measured?
Why does the dataset sum the whole process tree?
What are the measurement conditions?
Evidence ledger
- Last updated
- Methodology
- This guide was written and edited by Lowell K. Wood IV in St. Louis County, MO. Specs and prices verified against vendor and project documentation current on the date above. Full editorial standard: methodology.
- Update log
- 2026-08-20 — v1.0.0 first publication. 11 servers, 5 iterations each (3 for the two late additions, marked in the CSV), warm package cache, stdio JSON-RPC initialize + tools/list, RSS summed over the full descendant process tree. Five-stack total cross-checked psutil vs PowerShell WorkingSet64: 961.6MB exact agreement.
- Corrections
- Spotted an error or a stale number? Email hello@techfuelhq.com. Confirmed corrections are added to the update log above.