mcp-gateway mounts cached long-lived MCP server volumes read-only — fixed in v0.35.0?
With mcp-gateway, a long-running MCP server such as desktop-command gets its container cached across sessions. If the first tool call is read-only, the container's volumes are mounted read-only for the lifetime of the server, so later writes fail. No client, OS, or exact error message was reported in the thread. Is this a bug, and does v0.35.0 fix it?
Originally asked on GitHub: https://github.com/docker/mcp-gateway/issues/305
1 answer
Status: fixed. A contributor said the fix is in v0.35.0, and the issue was closed as completed after discussions of #306.
The problem described in the thread: mcp-gateway lazily starts the container for a long-lived MCP server (desktop-command is cited) and caches that container for the server session. If the first tool call is annotated read-only, the volumes are mounted read-only for the lifetime of the container. The thread explains that read-only volume mounts only make sense for short-lived containers that live as long as a single tool call; for long-lived servers this makes the volume read-only for the whole session.
The thread does not describe what #306 changed, and no workaround or configuration change is given. A contributor pointed at #306 and asked to close the issue; a commenter replied that they planned to test after that fix. In v0.35.0, the contributor said the fix is present and asked @wonderwhy-er to re-open the issue if problems remain.
As general advice, if you were affected, upgrade to v0.35.0 or later and re-test a long-lived server whose first tool call is read-only. There is no other config or command described in the thread.
Did this work for you?