# MCP Filesystem server 1.0.0 (Node 20) / 2.0.1 (Node 24): our test log

Canonical: https://theagenticweekly.com/tests/mcp-server-filesystem · Last verified: 2026-10-25 · Published: 2026-10-25 · Author: Agentic Weekly (operated independently from Texas, US) · Evidence: Tested by us on 2026-10-25. Local open-weight model, not the vendor's hosted models. A smoke test on a CPU-only box, not a benchmark.

> MCP Filesystem server answered over stdio in 279 ms cold (v1.0.0, Node 20) and 187 ms (v2.0.1, Node 24); median call 0.8 to 1.0 ms.

## Result at a glance

Table: MCP Filesystem server test record

| Field | Value |
|---|---|
| Result | Passed |
| Version tested | 1.0.0 (Node 20) / 2.0.1 (Node 24) |
| Date and time | 2026-10-25, 22:37 to 23:08 CDT (America/Chicago) |
| Task | A small Python client written with the official MCP Python SDK (2.3.0) spawns the server as a child process over stdio, times the initialize handshake (cold start: spawn to initialize result), times one tools/list, then times 30 sequential tools/call requests and reports the median and 95th percentile. Numbers are milliseconds on the rig described on the methodology page. |
| Model used | none (no language model involved) |
| Hardware | Linux x86_64 virtual machine (Debian 13), 8 vCPU (Intel Xeon, 1 thread per core), 15 GiB RAM, no GPU |
| Node 20 / secure-filesystem-server 1.0.0 | cold start 279 ms; tools/list 10.3 ms (14 tools); 30 x read_text_file: median 0.8 ms, p95 2.1 ms |
| Node 24 / secure-filesystem-server 2.0.1 | cold start 187 ms; tools/list 8.0 ms (14 tools); 30 x read_text_file: median 1.0 ms, p95 2.4 ms |

## What we found

- On Node 20 npm resolved version 1.0.0; on Node 24 it resolved 2.0.1. The 2.x line needs Node 24 or newer, and npm picks an older version on Node 20 without telling you.
- Cold start fell from 279 ms (1.x, Node 20) to 187 ms (2.x, Node 24), and the median call from 0.8 ms to 1.0 ms; both are well under a frame of video, so the practical difference is the startup, not the calls.
- The server exposed 14 tools on 1.x and 14 on 2.x.
- Sandbox check (v2.0.1, allowed root work/fsroot): reading /etc/hostname and a path using ../ to leave the root were both refused with 'Access denied - path outside allowed directories'; listing the root and writing a file inside it worked. That is four requests, a smoke test and not a security audit.

## What we ran, step by step

Table: Commands run, wall-clock time and exit code

| Step | Wall time | Exit code | Notes |
|---|---|---|---|
| npm install on Node 20.19.2 (cold) | 2.5 s | 0 | Resolved 1.0.0; 37 MB in 136 packages; load 3.45. |
| npm install on Node 24.22.1 (cold) | 0.9 s | 0 | Resolved 2.0.1; 25 MB in 37 packages; load 1.71. |
| Latency run: Node 20 / secure-filesystem-server 1.0.0 | n/a | 0 | secure-filesystem-server 1.0.0 (protocol 2025-11-25). cold start 279 ms; tools/list 10.3 ms (14 tools); 30 x read_text_file: median 0.8 ms, p95 2.1 ms. Load 2.50. |
| Latency run: Node 24 / secure-filesystem-server 2.0.1 | n/a | 0 | secure-filesystem-server 2.0.1 (protocol 2025-11-25). cold start 187 ms; tools/list 8.0 ms (14 tools); 30 x read_text_file: median 1.0 ms, p95 2.4 ms. Load 1.45. |
| Sandbox check | n/a | 0 | Results in the excerpt below. |

Exact commands (paths shortened)

```
# npm install on Node 20.19.2 (cold)
npm install --no-audit --no-fund --cache /tmp/npmcache @modelcontextprotocol/server-filesystem

# npm install on Node 24.22.1 (cold)
npm install --no-audit --no-fund --cache /tmp/npmcache @modelcontextprotocol/server-filesystem

# Latency run: Node 20 / secure-filesystem-server 1.0.0
node work/npm/mcp-server-filesystem/node_modules/.bin/mcp-server-filesystem /workspace/tests2/work/fsroot

# Latency run: Node 24 / secure-filesystem-server 2.0.1
/workspace/tests2/tools/node-v24.22.1-linux-x64/bin/node work/npm24/mcp-server-filesystem/node_modules/.bin/mcp-server-filesystem /workspace/tests2/work/fsroot

# Sandbox check
python mcpsec.py  # four tools/call requests (script uses the official MCP Python SDK client)
```

## Raw output (excerpts)

Output of the timed call (Node 20 / secure-filesystem-server 1.0.0), first 300 characters

```
read_text_file({"path": "/workspace/tests2/work/fsroot/notes.txt"})
hello from the fixture file
hello from the fixture file
hello from the fixture file
hello from the fixture file
hello from the fixture file
hello from the fixture file
hello from the fixture file
hello from the fixture file
hello from the fixture file
hello from the fixture file
hello from the fixtu
```

Sandbox check against v2.0.1: the server was started with one allowed directory and asked to read outside it

```
read_text_file {'path': '/etc/hostname'} -> ERROR Access denied - path outside allowed directories: /etc/hostname not in /workspace/tests2/work/fsroot
read_text_file {'path': '/workspace/tests2/work/fsroot/../gitrepo/f'} -> ERROR Access denied - path outside allowed directories: /workspace/tests2/work/gitrepo/f not in /workspace/tests2/work/fsroot
list_directory {'path': '/workspace/tests2/work/fsroot'} -> ok [FILE] notes.txt
write_file {'path': '/workspace/tests2/work/fsroot/new.txt', 'content': 'x'} -> ok Successfully wrote to /workspace/tests2/work/fsroot/new.txt
```

## Gotchas and things that broke

- If a tutorial says 'npx -y @modelcontextprotocol/server-filesystem' and you are on Node 20 or 22, you will not get the latest 2.x server; check the version string the server reports in its initialize result.
- The server is a file-write tool: it can create and overwrite files inside its allowed directories. We only tested the path check with plain and ../ paths, not symlinks.

## What we did not test

- Remote (HTTP) transport, authentication and concurrent clients: only local stdio with one client was measured.
- Large payloads: calls used tiny inputs, so these latencies are protocol and process overhead, not throughput.
- Anything about answer quality: no model was involved in the latency numbers.
- These are single smoke-test runs; it is not a benchmark. The machine was shared with other jobs.

## Reproduce it

Versions change. These commands install whatever is latest on the day you run them unless a version is pinned, so expect different results later. The version we measured is in the table above.

```
npm install @modelcontextprotocol/server-filesystem
# then drive it with any MCP client over stdio; we used the Python SDK client in the research page's script description
node node_modules/.bin/mcp-server-filesystem /path/to/allowed/dir
```

## How to read this test

Every number on this page was measured on this one machine, which also ran other jobs, so timings are indicative and vary run to run. A pass means our small task worked once or as stated, a fail means it did not work as we ran it; neither says how the tool behaves with a vendor's frontier model, on a GPU, or at scale. Where a tool could not run without an account or a GPU, we say so instead of guessing.

See the [testing rig](https://theagenticweekly.com/methodology#testing-rig) for the hardware, the local model and the rules we follow, and the [test hub](https://theagenticweekly.com/tests) for every other test.

## FAQ

### How fast is the MCP Filesystem server?

On our shared 8 vCPU VM: 279 ms to start and answer initialize on Node 20 (v1.0.0) and 187 ms on Node 24 (v2.0.1); a call took 1.0 ms at the median.

## Sources

- [MCP reference servers repository](https://github.com/modelcontextprotocol/servers) (fetched 2026-10-25)

## Related

- [All test logs](https://theagenticweekly.com/tests)
- [Methodology and testing rig](https://theagenticweekly.com/methodology#testing-rig)
- [Study: MCP server startup and call latency over stdio](https://theagenticweekly.com/research/mcp-servers-latency-and-failures)
- [Study: the silent version downgrade on older Node, and other install traps](https://theagenticweekly.com/research/older-node-silent-downgrades)
- [MCP servers facts and sources](https://theagenticweekly.com/tools/mcp-servers)

## How to cite

Agentic Weekly, "MCP Filesystem server 1.0.0 (Node 20) / 2.0.1 (Node 24): our test log", last updated 2026-10-25, https://theagenticweekly.com/tests/mcp-server-filesystem
