modelcontextprotocol / modelcontextprotocol/servers

Docker Image 1.0.2 Breaks Linux Users with Letter at Start of Path

Open
#3,628 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
TypeScript
Stars
90.5k
Forks
11.7k
Avg merge
2d 2h
Merged PRs (30d)
5

Description

Describe the bug
This 1.0.2 breaks linux users who's paths start with a letter. i.e. /h/path/to/data. We were very confused when our linux paths were converted to windows paths:

This error does not happen with mcp/filesystem:sha256-35fcf0217ca0d5bf7b0a5bd68fb3b89e08174676c0e0b4f431604512cf7b3f67; it only happens with mcp/filesystem:1.0.2.

To Reproduce
Steps to reproduce the behavior:

  1. Docker pull mcp/filesystem:1.0.2
  2. Configure with a linux path that starts with a /h/ or other letter
  3. Start up mcp server

Expected behavior
Should mount the correct path without changing it.

Logs
This is the error when the gateway tries to configure the mcp server:
Running mcp/filesystem:1.0.2 with [run --rm -i --init --security-opt no-new-privileges --cpus 1 --memory 2Gb --pull never -l docker-mcp=true -l docker-mcp-tool-type=mcp -l docker-mcp-name=filesystem -l docker-mcp-transport=stdio --network none -v /h/<username>/MCP_Development/data:/h/<username>/MCP_Development/data] and command [/h/<username>/MCP_Development/data]

mcp-gateway  | - filesystem: Error accessing directory H:\<username>\MCP_Development\data: Error: ENOENT: no such file or directory, stat 'H:\<username>\MCP_Development\data'
mcp-gateway  | - filesystem:     at async Object.stat (node:internal/fs/promises:1039:18)
mcp-gateway  | - filesystem:     at async file:///app/dist/index.js:44:23
mcp-gateway  | - filesystem:     at async Promise.all (index 0)
mcp-gateway  | - filesystem:     at async file:///app/dist/index.js:42:1 {
mcp-gateway  | - filesystem:   errno: -2,
mcp-gateway  | - filesystem:   code: 'ENOENT',
mcp-gateway  | - filesystem:   syscall: 'stat',
mcp-gateway  | - filesystem:   path: 'H:\\<username>\\MCP_Development\\data'
mcp-gateway  | - filesystem: }
mcp-gateway  |   > Can't start filesystem: failed to connect: calling "initialize": EOF

Additional context
N/A

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce with mcp/filesystem:1.0.2 using a Linux path beginning with /h/ and compare it with the working image digest. Start from the stack trace locations in /app/dist/index.js:42-44 and trace how the configured mount path reaches filesystem access. Done means the server preserves the Linux path and mounts the requested directory without converting it to a Windows path.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, typescript
Domain
backend, devops, operating-systems
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
56/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.