Skip to content

Commit 0f3e26d

Browse files
committed
feat: v0.8.0 - Compose Completeness
Add 16 new Compose MCP tools covering every remaining Docker Compose V2 command: config, cp, create, events, images, kill, ls, pause, unpause, port, rm, run, scale, start, stop, top. Add compose-scaling rule for flagging scaling blockers. Total: 84 MCP tools, 14 skills, 9 rules. Made-with: Cursor
1 parent bb57e86 commit 0f3e26d

27 files changed

+1218
-34
lines changed

.cursor-plugin/plugin.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
{
22
"name": "docker-developer-tools",
33
"displayName": "Docker Developer Tools",
4-
"version": "0.7.0",
5-
"description": "A Cursor plugin for Docker and container workflows - 14 skills, 8 rules, and 68 MCP tools for building, debugging, optimizing, and managing Docker containers, images, networks, and volumes. Includes a companion MCP server (docker-mcp) for live Docker CLI integration.",
4+
"version": "0.8.0",
5+
"description": "A Cursor plugin for Docker and container workflows - 14 skills, 9 rules, and 84 MCP tools for building, debugging, optimizing, and managing Docker containers, images, networks, and volumes. Includes a companion MCP server (docker-mcp) for live Docker CLI integration.",
66
"author": {
77
"name": "TMHSDigital",
88
"url": "https://github.com/TMHSDigital"

CHANGELOG.md

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,33 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [0.8.0] - 2026-03-29
9+
10+
### Added
11+
12+
#### MCP Server - Compose Completeness (+16, total 84)
13+
- `docker_composeConfig` - validate, resolve, and render a Compose file in canonical format (yaml/json output)
14+
- `docker_composeCp` - copy files between a Compose service container and the local filesystem (archive, index options)
15+
- `docker_composeCreate` - create Compose service containers without starting them (build, force-recreate, pull policy)
16+
- `docker_composeEvents` - receive real-time events from Compose containers (JSON format, service filter)
17+
- `docker_composeImages` - list images used by Compose service containers (JSON format)
18+
- `docker_composeKill` - force stop Compose service containers with configurable signal
19+
- `docker_composeLs` - list running Compose projects (all, filter options)
20+
- `docker_composePause` - pause Compose services
21+
- `docker_composeUnpause` - unpause Compose services
22+
- `docker_composePort` - print the public port for a Compose service port binding (tcp/udp protocol)
23+
- `docker_composeRm` - remove stopped Compose service containers (stop, volumes options)
24+
- `docker_composeRun` - run a one-off command on a Compose service (rm, detach, user, env, workdir, no-deps)
25+
- `docker_composeScale` - scale Compose services to a specified replica count via up --scale
26+
- `docker_composeStart` - start existing Compose service containers
27+
- `docker_composeStop` - stop Compose services without removing containers (timeout option)
28+
- `docker_composeTop` - display running processes in Compose service containers
29+
30+
#### Plugin
31+
- `compose-scaling` rule - flag scaling blockers: container_name preventing replicas, fixed host ports, missing resource limits, missing restart policy
32+
33+
---
34+
835
## [0.7.0] - 2026-03-29
936

1037
### Added
@@ -207,6 +234,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
207234
- Python test suite: plugin manifest, skills, rules, docs consistency, internal links, roadmap
208235
- Vitest test suite: error classes, docker-api utilities, input validation
209236

237+
[0.8.0]: https://github.com/TMHSDigital/Docker-Developer-Tools/releases/tag/v0.8.0
210238
[0.7.0]: https://github.com/TMHSDigital/Docker-Developer-Tools/releases/tag/v0.7.0
211239
[0.6.0]: https://github.com/TMHSDigital/Docker-Developer-Tools/releases/tag/v0.6.0
212240
[0.5.0]: https://github.com/TMHSDigital/Docker-Developer-Tools/releases/tag/v0.5.0

CLAUDE.md

Lines changed: 38 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,11 @@ Project documentation for Claude Code and AI assistants working on this reposito
44

55
## Project Overview
66

7-
Docker Developer Tools is a Cursor IDE plugin that integrates Docker and container workflows into Cursor's AI chat. It includes 14 skills, 8 rules, and a companion MCP server with 68 tools for live Docker CLI integration.
7+
Docker Developer Tools is a Cursor IDE plugin that integrates Docker and container workflows into Cursor's AI chat. It includes 14 skills, 9 rules, and a companion MCP server with 84 tools for live Docker CLI integration.
88

99
This is a monorepo - the Cursor plugin (skills and rules) and the companion MCP server live in the same repository. Docker's API is local (Docker Engine socket / CLI), so one repo is simpler for users to install and maintain.
1010

11-
**Version:** 0.7.0
11+
**Version:** 0.8.0
1212
**License:** CC-BY-NC-ND-4.0
1313
**Author:** TMHSDigital
1414

@@ -54,7 +54,7 @@ Docker-Developer-Tools/
5454
| `docker-advanced-workflows` | Multi-stage pipelines, sidecar patterns, healthchecks, signal handling |
5555
| `docker-multi-platform` | Multi-arch builds, buildx configuration, manifest lists, platform targeting |
5656

57-
## Rules (8)
57+
## Rules (9)
5858

5959
| Rule | Scope | Description |
6060
|------|-------|-------------|
@@ -66,8 +66,9 @@ Docker-Developer-Tools/
6666
| `docker-port-conflicts` | Dockerfiles, compose files | Flag port conflicts |
6767
| `docker-logging` | Dockerfiles, compose files | Flag missing logging drivers and log rotation |
6868
| `buildx-best-practices` | Dockerfiles, compose files | Flag multi-platform build issues, missing cache config |
69+
| `compose-scaling` | Compose files | Flag scaling blockers: container_name, fixed host ports, missing limits |
6970

70-
## MCP Server (68 tools)
71+
## MCP Server (84 tools)
7172

7273
The MCP server talks to Docker via CLI exec (`docker` commands) rather than the Docker Engine REST API. It uses stdio transport and requires `docker` to be available on PATH.
7374

@@ -114,7 +115,7 @@ The MCP server talks to Docker via CLI exec (`docker` commands) rather than the
114115
| `docker_save` | Save images to a tar archive |
115116
| `docker_load` | Load images from a tar archive |
116117

117-
### Compose (8)
118+
### Compose (24)
118119

119120
| Tool | Description |
120121
|------|-------------|
@@ -126,6 +127,22 @@ The MCP server talks to Docker via CLI exec (`docker` commands) rather than the
126127
| `docker_composeRestart` | Restart Compose services |
127128
| `docker_composePull` | Pull images for Compose services |
128129
| `docker_composeExec` | Execute a command in a running Compose service |
130+
| `docker_composeConfig` | Validate, resolve, and render a Compose file |
131+
| `docker_composeCp` | Copy files between service container and host |
132+
| `docker_composeCreate` | Create service containers without starting |
133+
| `docker_composeEvents` | Real-time events from Compose containers |
134+
| `docker_composeImages` | List images used by Compose services |
135+
| `docker_composeKill` | Force stop Compose service containers |
136+
| `docker_composeLs` | List running Compose projects |
137+
| `docker_composePause` | Pause Compose services |
138+
| `docker_composeUnpause` | Unpause Compose services |
139+
| `docker_composePort` | Print public port for a service binding |
140+
| `docker_composeRm` | Remove stopped service containers |
141+
| `docker_composeRun` | Run a one-off command on a service |
142+
| `docker_composeScale` | Scale services to a replica count |
143+
| `docker_composeStart` | Start existing service containers |
144+
| `docker_composeStop` | Stop services without removing |
145+
| `docker_composeTop` | Running processes per service |
129146

130147
### Volume Management (4)
131148

@@ -294,6 +311,22 @@ Full checklist with copy-paste commands: [CONTRIBUTING.md - Release Checklist](C
294311
| `docker compose restart` | `docker_composeRestart` |
295312
| `docker compose pull` | `docker_composePull` |
296313
| `docker compose exec` | `docker_composeExec` |
314+
| `docker compose config` | `docker_composeConfig` |
315+
| `docker compose cp` | `docker_composeCp` |
316+
| `docker compose create` | `docker_composeCreate` |
317+
| `docker compose events --json` | `docker_composeEvents` |
318+
| `docker compose images --format json` | `docker_composeImages` |
319+
| `docker compose kill` | `docker_composeKill` |
320+
| `docker compose ls --format json` | `docker_composeLs` |
321+
| `docker compose pause` | `docker_composePause` |
322+
| `docker compose unpause` | `docker_composeUnpause` |
323+
| `docker compose port` | `docker_composePort` |
324+
| `docker compose rm -f` | `docker_composeRm` |
325+
| `docker compose run --no-TTY` | `docker_composeRun` |
326+
| `docker compose up -d --scale` | `docker_composeScale` |
327+
| `docker compose start` | `docker_composeStart` |
328+
| `docker compose stop` | `docker_composeStop` |
329+
| `docker compose top` | `docker_composeTop` |
297330
| `docker volume create` | `docker_volumeCreate` |
298331
| `docker volume rm` | `docker_volumeRm` |
299332
| `docker volume inspect` | `docker_volumeInspect` |

README.md

Lines changed: 22 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
<p align="center">
1212
<a href="https://github.com/TMHSDigital/Docker-Developer-Tools/actions/workflows/validate.yml"><img src="https://img.shields.io/github/actions/workflow/status/TMHSDigital/Docker-Developer-Tools/validate.yml?branch=main&label=CI" alt="CI" /></a>
1313
<a href="LICENSE"><img src="https://img.shields.io/badge/license-CC--BY--NC--ND--4.0-blue" alt="License" /></a>
14-
<img src="https://img.shields.io/badge/version-0.7.0-green" alt="Version" />
14+
<img src="https://img.shields.io/badge/version-0.8.0-green" alt="Version" />
1515
<a href="https://www.npmjs.com/package/@tmhs/docker-mcp"><img src="https://img.shields.io/npm/v/@tmhs/docker-mcp" alt="npm" /></a>
1616
<a href="https://www.npmjs.com/package/@tmhs/docker-mcp"><img src="https://img.shields.io/npm/dm/@tmhs/docker-mcp" alt="npm downloads" /></a>
1717
<a href="https://www.npmjs.com/package/@tmhs/docker-mcp"><img src="https://img.shields.io/npm/unpacked-size/@tmhs/docker-mcp" alt="npm size" /></a>
@@ -22,7 +22,7 @@
2222
</p>
2323

2424
<p align="center">
25-
<strong>14 skills</strong>&nbsp;&bull;&nbsp;<strong>8 rules</strong>&nbsp;&bull;&nbsp;<strong>68 MCP tools</strong>
25+
<strong>14 skills</strong>&nbsp;&bull;&nbsp;<strong>9 rules</strong>&nbsp;&bull;&nbsp;<strong>84 MCP tools</strong>
2626
</p>
2727

2828
---
@@ -74,7 +74,7 @@ flowchart LR
7474
</details>
7575

7676
<details>
77-
<summary><strong>8 Rules</strong> - automatic best-practice enforcement</summary>
77+
<summary><strong>9 Rules</strong> - automatic best-practice enforcement</summary>
7878

7979
&nbsp;
8080

@@ -88,6 +88,7 @@ flowchart LR
8888
| `docker-port-conflicts` | Dockerfiles, compose files | Flag commonly conflicting port mappings |
8989
| `docker-logging` | Dockerfiles, compose files | Flag missing logging drivers and log rotation |
9090
| `buildx-best-practices` | Dockerfiles, compose files | Flag multi-platform build issues, missing cache config, arch hardcoding |
91+
| `compose-scaling` | Compose files | Flag scaling blockers: container_name, fixed host ports, missing limits |
9192

9293
</details>
9394

@@ -117,7 +118,7 @@ Add to your Cursor MCP config (`.cursor/mcp.json`):
117118
```
118119

119120
<details>
120-
<summary><strong>68 MCP Tools</strong> - full tool reference</summary>
121+
<summary><strong>84 MCP Tools</strong> - full tool reference</summary>
121122

122123
&nbsp;
123124

@@ -164,7 +165,7 @@ Add to your Cursor MCP config (`.cursor/mcp.json`):
164165
| `docker_save` | Save one or more images to a tar archive |
165166
| `docker_load` | Load images from a tar archive |
166167

167-
**Compose** (8)
168+
**Compose** (24)
168169

169170
| Tool | What It Does |
170171
|---|---|
@@ -176,6 +177,22 @@ Add to your Cursor MCP config (`.cursor/mcp.json`):
176177
| `docker_composeRestart` | Restart Compose services |
177178
| `docker_composePull` | Pull images for Compose services |
178179
| `docker_composeExec` | Execute a command in a running Compose service container |
180+
| `docker_composeConfig` | Validate, resolve, and render a Compose file in canonical format |
181+
| `docker_composeCp` | Copy files between a Compose service container and local filesystem |
182+
| `docker_composeCreate` | Create service containers without starting them |
183+
| `docker_composeEvents` | Receive real-time events from Compose containers |
184+
| `docker_composeImages` | List images used by Compose service containers |
185+
| `docker_composeKill` | Force stop Compose service containers |
186+
| `docker_composeLs` | List running Compose projects |
187+
| `docker_composePause` | Pause Compose services |
188+
| `docker_composeUnpause` | Unpause Compose services |
189+
| `docker_composePort` | Print the public port for a Compose service port binding |
190+
| `docker_composeRm` | Remove stopped Compose service containers |
191+
| `docker_composeRun` | Run a one-off command on a Compose service |
192+
| `docker_composeScale` | Scale Compose services to a specified replica count |
193+
| `docker_composeStart` | Start existing Compose service containers |
194+
| `docker_composeStop` | Stop Compose services without removing containers |
195+
| `docker_composeTop` | Display running processes in Compose service containers |
179196

180197
**Volume Management** (4)
181198

ROADMAP.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
55
## Current Status
66

7-
**v0.7.0** - Buildx, Manifests, and Registry release with 14 skills, 8 rules, and 68 MCP tools.
7+
**v0.8.0** - Compose Completeness release with 14 skills, 9 rules, and 84 MCP tools.
88

99
## Release Plan
1010

@@ -16,8 +16,8 @@
1616
| v0.4.0 | Compose | +8 | 36 | +1 | +1 | Released |
1717
| v0.5.0 | Volumes, Networks, Cleanup | +13 | 49 | +0 | +0 | Released |
1818
| v0.6.0 | Advanced and Observability | +6 | 55 | +1 | +1 | Released |
19-
| v0.7.0 | Buildx, Manifests, and Registry | +13 | 68 | +1 | +1 | (current) |
20-
| v0.8.0 | Compose Completeness | +16 | 84 | +0 | +1 | Planned |
19+
| v0.7.0 | Buildx, Manifests, and Registry | +13 | 68 | +1 | +1 | Released |
20+
| v0.8.0 | Compose Completeness | +16 | 84 | +0 | +1 | (current) |
2121
| v0.9.0 | Container/Image Gaps, Context, Auth | +14 | 98 | +1 | +0 | Planned |
2222
| v0.10.0 | Swarm Orchestration | +24 | 122 | +1 | +1 | Planned |
2323
| v0.11.0 | Swarm Stacks, Configs, Secrets, Trust | +18 | 140 | +1 | +0 | Planned |
@@ -403,7 +403,8 @@ All destructive MCP tools (`rm`, `rmi`, `prune`, `kill`, `down`, `leave`) will:
403403
- [x] Comprehensive roadmap rewrite with ~150 planned MCP tools
404404
- [x] 13 buildx and manifest tools (buildxBuild/Ls/Create/Rm/Inspect/Use/Imagetools, builderPrune, manifestCreate/Inspect/Annotate/Push/Rm)
405405
- [x] 14 skills covering Docker workflows including multi-platform builds
406-
- [x] 8 rules including buildx best practices
406+
- [x] 16 compose completeness tools (composeConfig/Cp/Create/Events/Images/Kill/Ls/Pause/Unpause/Port/Rm/Run/Scale/Start/Stop/Top)
407+
- [x] 9 rules including buildx best practices and compose scaling
407408
- [x] 8 image and build tools (pull, push, build, tag, rmi, commit, save, load)
408409
- [x] 8 compose tools (composeUp, composeDown, composePs, composeLogs, composeBuild, composeRestart, composePull, composeExec)
409410
- [x] 13 volume, network, and cleanup tools (volumeCreate/Rm/Inspect/Prune, networkCreate/Rm/Connect/Disconnect/Inspect/Prune, systemPrune, containerPrune, imagePrune)

0 commit comments

Comments
 (0)