Repository navigation
Releases
v0.7.0
v0.6.3
What's Changed
- fix: decode docker CLI output as UTF-8 with replacement by @dboeckli in #59
- chore: bump version to 0.6.3 by @dboeckli in #60
Full Changelog: v0.6.2...v0.6.3
v0.6.2
What's Changed
- chore: bump the artifact actions to their latest patches by @dboeckli in #56
- chore: bump version to 0.6.2 by @dboeckli in #57
Full Changelog: v0.6.1...v0.6.2
v0.6.1
v0.6.0
v0.6.0 — Server-level read-only mode
This release adds a read-only mode that reduces the server's tool surface at
registration time (#31).
It is defense in depth next to the MCP gateway's allow/ask/deny policy and keeps
tools/list small for read-only clients.
Read-only mode
Start the server with --read-only, or set
MCP_SERVER_DOCKER_READ_ONLY=1 (1/true/yes/on, case-insensitive):
"args": [
"--from",
"git+https://github.com/dboeckli/mcp-server-docker@v0.6.0",
"mcp-server-docker",
"--read-only"
]"env": {
"MCP_SERVER_DOCKER_READ_ONLY": "1"
}For the sbx MCP gateway, append --read-only to the comma-separated --args
list, e.g. sbx mcp add docker --args "--from,...,mcp-server-docker,--read-only".
Behavior
- Default mode is unchanged: all 31 tools.
- Read-only mode exposes the 17 tools annotated with
readOnlyHint=true. - The 14 write/destructive tools are not registered: they are absent from
tools/listand calls to them returnUnknown tool. - The container
logs/statsresources and thedocker_composeprompt remain
available; both resources are read-only and the prompt executes nothing. - The filter is one central
is_tool_enabledpredicate, so
disable-destructiveand enable/disable lists can be added later without
touching individual tools.
Read-only mode is a best-effort guardrail, not a sandbox boundary. The process
still has host Docker access; keep gateway policy and sandbox isolation in
place.
Compatibility
No breaking changes. Default tool names, schemas, resources, and prompts are
unchanged.
Changes
- #39 — add server-level read-only mode (
--read-only/MCP_SERVER_DOCKER_READ_ONLY) - #40 — bump version to 0.6.0
Full Changelog: v0.5.0...v0.6.0
v0.5.0
v0.5.0 — Docker/Buildx introspection tools
This release adds the read-only Docker and Buildx introspection tools requested
in #26, shipped in
four small slices. The tool surface grows from 22 to 31 tools.
New tools
Disk and cache
buildx_du— Buildx cache usage per builder. Queries all builders by
default; usebuilderto inspect one andverbose=truefor individual
cache records. A failing builder is reported per entry without failing the
whole call.system_df—docker system dfsummary including reclaimable space.
verbose=trueadds per-image, per-container, per-volume, and build-cache
detail.
Inspect and history
buildx_inspect— builder driver, status, nodes, and endpoints.image_inspect— image attributes withConfig.Envand
ContainerConfig.Envvalues replaced by<redacted>.image_history— image layer history. This tool is intentionally not
redacted: layerCreatedBycommands can contain secrets baked into the
image.
Container diagnostics
container_inspect— full container attributes with environment values
redacted.container_processes— equivalent ofdocker top.
Host diagnostics
version— Docker server version.system_info— curated host and storage-driver diagnostics. Proxy and
registry configuration are excluded.
Safety
- All new tools are read-only and carry
readOnlyHint,idempotentHint, and
openWorldHint=false, so they are safe to allow-list in an MCP gateway and
are ready for server-level read-only mode (#31). - Environment values are never returned by
image_inspector
container_inspect. prune_*andcontainer_execare intentionally not part of this release.
Compatibility
No breaking changes. Existing tools and resources are unchanged.
Changes
- #34 — add
buildx_duandsystem_df - #35 — add
buildx_inspect,image_inspect, andimage_history - #36 — add
container_inspectandcontainer_processes - #37 — add
versionandsystem_info - #38 — bump version to 0.5.0
Full Changelog: v0.4.3...v0.5.0
v0.4.3
What's Changed
- Add versioned repository ruleset definitions by @dboeckli in #7
- Configure Renovate by @renovate[bot] in #8
- Configure dependency updates and pin GitHub Actions by @dboeckli in #9
- Keep Renovate configuration next to Dependabot by @dboeckli in #13
- Pin floating tool and image versions by @dboeckli in #14
- Constrain Renovate Python and Node.js updates by @dboeckli in #21
- Update dependency nodejs to v26 by @renovate[bot] in #22
- Update python Docker tag to v3.12.16 by @renovate[bot] in #17
- Update devbox packages by @renovate[bot] in #15
- Lock file maintenance by @renovate[bot] in #19
- Update dependency paramiko to v5 by @renovate[bot] in #18
- Surface tool errors with mcp 2.3 by @dboeckli in #23
- Lock file maintenance by @renovate[bot] in #20
- Bump version to 0.4.3 by @dboeckli in #24
New Contributors
Full Changelog: v0.4.2...v0.4.3
v0.4.2
v0.4.1
What's Changed
- Fix
buildx_logsref handling and stderr capture by @dboeckli in #3- Accepts the
refreturned bybuildx_history/buildx_list(uses its last path segment, the build ID) - Captures build logs that
docker buildx history logswrites to stderr
- Accepts the
- Add CI workflow for lint, tests and Docker image by @dboeckli in #2
- Bump version to 0.4.1 by @dboeckli in #4
Full Changelog: v0.4.0...v0.4.1