Skip to content

Commit e5d4d15

Browse files
committed
feat: v0.6.0 - add 6 advanced/observability MCP tools, skill, and rule
New MCP tools: docker_cp, docker_stats, docker_top, docker_events, docker_update, docker_wait New skill: docker-advanced-workflows (multi-stage pipelines, sidecars, healthchecks, signal handling) New rule: docker-logging (flag missing log drivers and rotation) Made-with: Cursor
1 parent 005025e commit e5d4d15

18 files changed

Lines changed: 890 additions & 33 deletions

File tree

.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.5.0",
5-
"description": "A Cursor plugin for Docker and container workflows - 12 skills, 6 rules, and 49 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.6.0",
5+
"description": "A Cursor plugin for Docker and container workflows - 13 skills, 7 rules, and 55 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: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,27 @@ 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.6.0] - 2026-03-29
9+
10+
### Added
11+
12+
#### MCP Server - Advanced and Observability Tools (+6, total 55)
13+
- `docker_cp` - copy files or directories between a container and the local filesystem (archive, follow-link options)
14+
- `docker_stats` - show live resource usage statistics for containers (CPU, memory, network I/O)
15+
- `docker_top` - show running processes in a container (with optional ps arguments)
16+
- `docker_events` - stream real-time events from the Docker daemon (since, until, filter options)
17+
- `docker_update` - update container resource configuration live (CPU, memory, restart policy)
18+
- `docker_wait` - block until a container stops and return its exit code
19+
20+
#### Plugin
21+
- `docker-advanced-workflows` skill - multi-stage pipelines, sidecar patterns, healthchecks, init containers, signal handling, graceful shutdown
22+
- `docker-logging` rule - flag missing logging drivers and log rotation settings in Docker and Compose files
23+
24+
### Changed
25+
- Updated npm publish workflow to use OIDC trusted publishers (no NPM_TOKEN secret needed)
26+
27+
---
28+
829
## [0.5.0] - 2026-03-29
930

1031
### Added
@@ -161,6 +182,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
161182
- Python test suite: plugin manifest, skills, rules, docs consistency, internal links, roadmap
162183
- Vitest test suite: error classes, docker-api utilities, input validation
163184

185+
[0.6.0]: https://github.com/TMHSDigital/Docker-Developer-Tools/releases/tag/v0.6.0
164186
[0.5.0]: https://github.com/TMHSDigital/Docker-Developer-Tools/releases/tag/v0.5.0
165187
[0.4.0]: https://github.com/TMHSDigital/Docker-Developer-Tools/releases/tag/v0.4.0
166188
[0.3.0]: https://github.com/TMHSDigital/Docker-Developer-Tools/releases/tag/v0.3.0

CLAUDE.md

Lines changed: 24 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 12 skills, 6 rules, and a companion MCP server with 49 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 13 skills, 7 rules, and a companion MCP server with 55 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.5.0
11+
**Version:** 0.6.0
1212
**License:** CC-BY-NC-ND-4.0
1313
**Author:** TMHSDigital
1414

@@ -35,7 +35,7 @@ Docker-Developer-Tools/
3535
tests/ # Python structure tests
3636
```
3737

38-
## Skills (12)
38+
## Skills (13)
3939

4040
| Skill | Description |
4141
|-------|-------------|
@@ -51,8 +51,9 @@ Docker-Developer-Tools/
5151
| `docker-troubleshooting` | Common Docker problem diagnosis |
5252
| `docker-development-env` | Development environments with Docker |
5353
| `docker-resource-management` | Resource limits and monitoring |
54+
| `docker-advanced-workflows` | Multi-stage pipelines, sidecar patterns, healthchecks, signal handling |
5455

55-
## Rules (6)
56+
## Rules (7)
5657

5758
| Rule | Scope | Description |
5859
|------|-------|-------------|
@@ -62,8 +63,9 @@ Docker-Developer-Tools/
6263
| `docker-resource-limits` | Docker-related files | Flag missing resource limits |
6364
| `docker-image-pinning` | Dockerfiles, compose files | Flag unpinned image tags |
6465
| `docker-port-conflicts` | Dockerfiles, compose files | Flag port conflicts |
66+
| `docker-logging` | Dockerfiles, compose files | Flag missing logging drivers and log rotation |
6567

66-
## MCP Server (49 tools)
68+
## MCP Server (55 tools)
6769

6870
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.
6971

@@ -151,6 +153,17 @@ The MCP server talks to Docker via CLI exec (`docker` commands) rather than the
151153
| `docker_containerPrune` | Remove all stopped containers |
152154
| `docker_imagePrune` | Remove dangling or unused images |
153155

156+
### Advanced / Observability (6)
157+
158+
| Tool | Description |
159+
|------|-------------|
160+
| `docker_cp` | Copy files between container and host |
161+
| `docker_stats` | Live resource usage (CPU, memory, net I/O) |
162+
| `docker_top` | Running processes in a container |
163+
| `docker_events` | Real-time Docker daemon events |
164+
| `docker_update` | Update container resource config live |
165+
| `docker_wait` | Block until container stops, return exit code |
166+
154167
## Development Workflow
155168

156169
### Plugin development (symlink)
@@ -269,3 +282,9 @@ Full checklist with copy-paste commands: [CONTRIBUTING.md - Release Checklist](C
269282
| `docker system prune -f` | `docker_systemPrune` |
270283
| `docker container prune -f` | `docker_containerPrune` |
271284
| `docker image prune -f` | `docker_imagePrune` |
285+
| `docker cp` | `docker_cp` |
286+
| `docker stats --no-stream --format json` | `docker_stats` |
287+
| `docker top` | `docker_top` |
288+
| `docker events --format json` | `docker_events` |
289+
| `docker update` | `docker_update` |
290+
| `docker wait` | `docker_wait` |

README.md

Lines changed: 19 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.5.0-green" alt="Version" />
14+
<img src="https://img.shields.io/badge/version-0.6.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>12 skills</strong>&nbsp;&bull;&nbsp;<strong>6 rules</strong>&nbsp;&bull;&nbsp;<strong>49 MCP tools</strong>
25+
<strong>13 skills</strong>&nbsp;&bull;&nbsp;<strong>7 rules</strong>&nbsp;&bull;&nbsp;<strong>55 MCP tools</strong>
2626
</p>
2727

2828
---
@@ -50,7 +50,7 @@ flowchart LR
5050
---
5151

5252
<details>
53-
<summary><strong>12 Skills</strong> - on-demand Docker expertise</summary>
53+
<summary><strong>13 Skills</strong> - on-demand Docker expertise</summary>
5454

5555
&nbsp;
5656

@@ -68,11 +68,12 @@ flowchart LR
6868
| **DevOps** | `docker-registry` | Private registries, image tagging strategies, cleanup policies |
6969
| **DevOps** | `docker-development-env` | Dev containers, hot reload, debugger attachment, local stacks |
7070
| **Debugging** | `container-debugging` | Exec into containers, log analysis, health checks, process inspection |
71+
| **Advanced** | `docker-advanced-workflows` | Multi-stage pipelines, sidecar patterns, healthchecks, signal handling |
7172

7273
</details>
7374

7475
<details>
75-
<summary><strong>6 Rules</strong> - automatic best-practice enforcement</summary>
76+
<summary><strong>7 Rules</strong> - automatic best-practice enforcement</summary>
7677

7778
&nbsp;
7879

@@ -84,6 +85,7 @@ flowchart LR
8485
| `docker-resource-limits` | Docker-related files | Flag missing memory and CPU limits |
8586
| `docker-image-pinning` | Dockerfiles, compose files | Flag unpinned image tags (`:latest` or no tag) |
8687
| `docker-port-conflicts` | Dockerfiles, compose files | Flag commonly conflicting port mappings |
88+
| `docker-logging` | Dockerfiles, compose files | Flag missing logging drivers and log rotation |
8789

8890
</details>
8991

@@ -113,7 +115,7 @@ Add to your Cursor MCP config (`.cursor/mcp.json`):
113115
```
114116

115117
<details>
116-
<summary><strong>49 MCP Tools</strong> - full tool reference</summary>
118+
<summary><strong>55 MCP Tools</strong> - full tool reference</summary>
117119

118120
&nbsp;
119121

@@ -201,6 +203,17 @@ Add to your Cursor MCP config (`.cursor/mcp.json`):
201203
| `docker_containerPrune` | Remove all stopped containers |
202204
| `docker_imagePrune` | Remove dangling or unused images |
203205

206+
**Advanced / Observability** (6)
207+
208+
| Tool | What It Does |
209+
|---|---|
210+
| `docker_cp` | Copy files or directories between a container and the local filesystem |
211+
| `docker_stats` | Show live resource usage statistics (CPU, memory, network I/O) |
212+
| `docker_top` | Show running processes in a container |
213+
| `docker_events` | Stream real-time events from the Docker daemon |
214+
| `docker_update` | Update container resource configuration (CPU, memory, restart policy) |
215+
| `docker_wait` | Block until a container stops and return its exit code |
216+
204217
</details>
205218

206219
---
@@ -257,6 +270,7 @@ Then add the JSON config from the [MCP Server section](#companion-docker-mcp-ser
257270
| `docker-registry` | "Set up a private registry with authentication" |
258271
| `docker-development-env` | "Create a dev container with hot reload for my Go project" |
259272
| `container-debugging` | "Show me the logs and processes inside my crashing container" |
273+
| `docker-advanced-workflows` | "Set up healthchecks and graceful shutdown for my Node.js container" |
260274

261275
</details>
262276

ROADMAP.md

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

7-
**v0.5.0** - Volumes, Networks, and Cleanup release with 12 skills, 6 rules, and 49 MCP tools.
7+
**v0.6.0** - Advanced and Observability release with 13 skills, 7 rules, and 55 MCP tools.
88

99
## Release Plan
1010

@@ -14,8 +14,8 @@
1414
| v0.2.0 | Container Lifecycle | +10 | 20 | +0 | +0 | Released |
1515
| v0.3.0 | Image and Build | +8 | 28 | +0 | +0 | Released |
1616
| v0.4.0 | Compose | +8 | 36 | +1 | +1 | Released |
17-
| v0.5.0 | Volumes, Networks, Cleanup | +13 | 49 | +0 | +0 | (current) |
18-
| v0.6.0 | Advanced and Observability | +6 | 55 | +1 | +1 | Planned |
17+
| v0.5.0 | Volumes, Networks, Cleanup | +13 | 49 | +0 | +0 | Released |
18+
| v0.6.0 | Advanced and Observability | +6 | 55 | +1 | +1 | (current) |
1919
| v0.7.0 | Buildx and Multi-platform | +5 | 60 | +0 | +0 | Planned |
2020
| v0.8.0 | Polish | +0 | 60 | +0 | +0 | Planned |
2121
| v1.0.0 | Stable | +0 | 60 | +0 | +0 | Planned |
@@ -225,8 +225,9 @@ All destructive MCP tools (`rm`, `rmi`, `prune`, `kill`, `down`) will:
225225
- [x] 13 volume, network, and cleanup tools (volumeCreate/Rm/Inspect/Prune, networkCreate/Rm/Connect/Disconnect/Inspect/Prune, systemPrune, containerPrune, imagePrune)
226226
- [x] VolumeNotFoundError and NetworkNotFoundError error classes
227227
- [x] npm publish of @tmhs/docker-mcp with GitHub Actions automation
228-
- [x] 12 skills covering core Docker workflows
229-
- [x] 6 rules for Dockerfile and compose validation
228+
- [x] 6 advanced/observability tools (cp, stats, top, events, update, wait)
229+
- [x] 13 skills covering core Docker workflows
230+
- [x] 7 rules for Dockerfile and compose validation
230231
- [x] Python test suite for structure validation
231232
- [x] Vitest test suite for MCP server
232233
- [x] GitHub Actions CI/CD workflows

docs/index.html

Lines changed: 24 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,11 @@
44
<meta charset="UTF-8">
55
<meta name="viewport" content="width=device-width, initial-scale=1.0">
66
<title>Docker Developer Tools - Cursor Plugin</title>
7-
<meta name="description" content="Expert Docker workflows inside Cursor IDE. 12 skills, 6 rules, 49 MCP tools.">
7+
<meta name="description" content="Expert Docker workflows inside Cursor IDE. 13 skills, 7 rules, 55 MCP tools.">
88
<meta name="theme-color" content="#0db7ed">
99
<meta property="og:type" content="website">
1010
<meta property="og:title" content="Docker Developer Tools - Cursor Plugin">
11-
<meta property="og:description" content="Expert Docker workflows inside Cursor IDE. 12 skills, 6 rules, 49 MCP tools.">
11+
<meta property="og:description" content="Expert Docker workflows inside Cursor IDE. 13 skills, 7 rules, 55 MCP tools.">
1212
<meta property="og:image" content="docs/assets/og-card.jpg">
1313
<meta property="og:url" content="https://tmhsdigital.github.io/Docker-Developer-Tools/">
1414
<link rel="preconnect" href="https://fonts.googleapis.com">
@@ -241,7 +241,7 @@
241241
<h1><span>Docker</span> Developer Tools</h1>
242242
<p class="tagline">Expert Docker workflows, live container data, and real-time linting - all inside Cursor IDE.</p>
243243
<div class="pills">
244-
<span class="pill blue">v0.5.0</span>
244+
<span class="pill blue">v0.6.0</span>
245245
<span class="pill">CC BY-NC-ND 4.0</span>
246246
<span class="pill">Cursor Plugin</span>
247247
</div>
@@ -251,15 +251,15 @@ <h1><span>Docker</span> Developer Tools</h1>
251251
<div class="container">
252252
<div class="stats reveal">
253253
<div class="stat-card">
254-
<div class="stat-number" data-target="12">0</div>
254+
<div class="stat-number" data-target="13">0</div>
255255
<div class="stat-label">Skills</div>
256256
</div>
257257
<div class="stat-card">
258-
<div class="stat-number" data-target="6">0</div>
258+
<div class="stat-number" data-target="7">0</div>
259259
<div class="stat-label">Rules</div>
260260
</div>
261261
<div class="stat-card">
262-
<div class="stat-number" data-target="49">0</div>
262+
<div class="stat-number" data-target="55">0</div>
263263
<div class="stat-label">MCP Tools</div>
264264
</div>
265265
</div>
@@ -482,7 +482,7 @@ <h3><span class="rule-icon">&#128268;</span> docker-port-conflicts</h3>
482482
<!-- MCP TOOLS TABLE -->
483483
<section id="mcp-tools">
484484
<div class="container">
485-
<h2 class="section-title reveal">49 MCP Tools</h2>
485+
<h2 class="section-title reveal">55 MCP Tools</h2>
486486
<p class="section-subtitle reveal">Live Docker data, container lifecycle, image pipeline, Compose V2, volume/network CRUD, and resource cleanup via the companion MCP server.</p>
487487
<div class="tools-table-wrap reveal">
488488
<table class="tools-table">
@@ -545,6 +545,13 @@ <h2 class="section-title reveal">49 MCP Tools</h2>
545545
<tr><td class="tool-name">docker_systemPrune</td><td>Remove unused containers, networks, images, and optionally volumes</td></tr>
546546
<tr><td class="tool-name">docker_containerPrune</td><td>Remove all stopped containers</td></tr>
547547
<tr><td class="tool-name">docker_imagePrune</td><td>Remove dangling or unused images</td></tr>
548+
<tr><td colspan="2" style="padding:20px 16px 10px;font-weight:700;color:var(--blue);font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;border-bottom:2px solid var(--border)">Advanced / Observability</td></tr>
549+
<tr><td class="tool-name">docker_cp</td><td>Copy files or directories between container and host</td></tr>
550+
<tr><td class="tool-name">docker_stats</td><td>Live resource usage statistics (CPU, memory, network I/O)</td></tr>
551+
<tr><td class="tool-name">docker_top</td><td>Show running processes in a container</td></tr>
552+
<tr><td class="tool-name">docker_events</td><td>Real-time events from the Docker daemon</td></tr>
553+
<tr><td class="tool-name">docker_update</td><td>Update container resource config (CPU, memory, restart policy)</td></tr>
554+
<tr><td class="tool-name">docker_wait</td><td>Block until container stops and return exit code</td></tr>
548555
</tbody>
549556
</table>
550557
</div>
@@ -671,16 +678,22 @@ <h3>v0.4.0 <span class="tag upcoming-tag">Released</span></h3>
671678
<p>Compose - 8 tools: up, down, ps, logs, build, restart, pull, exec. Full Docker Compose V2 management. Published to npm.</p>
672679
</div>
673680

674-
<div class="timeline-item current">
681+
<div class="timeline-item">
675682
<div class="timeline-dot"></div>
676-
<h3>v0.5.0 <span class="tag current-tag">Current</span></h3>
683+
<h3>v0.5.0 <span class="tag upcoming-tag">Released</span></h3>
677684
<p>Volumes, Networks, Cleanup - 13 tools: volume/network CRUD, system/container/image prune. Infrastructure management.</p>
678685
</div>
679686

687+
<div class="timeline-item current">
688+
<div class="timeline-dot"></div>
689+
<h3>v0.6.0 <span class="tag current-tag">Current</span></h3>
690+
<p>Advanced and Observability - 6 tools: cp, stats, top, events, update, wait. Live monitoring and file transfer.</p>
691+
</div>
692+
680693
<div class="timeline-item">
681694
<div class="timeline-dot"></div>
682-
<h3>v0.6.0 - v0.7.0 <span class="tag upcoming-tag">Planned</span></h3>
683-
<p>Advanced, Observability, Buildx - cp, stats, top, events, multi-platform builds. Targeting ~59 total MCP tools.</p>
695+
<h3>v0.7.0 <span class="tag upcoming-tag">Planned</span></h3>
696+
<p>Buildx and Multi-platform - 5 tools: multi-arch builds, builder management, build cache pruning.</p>
684697
</div>
685698

686699
<div class="timeline-item">

mcp-server/README.md

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# @tmhs/docker-mcp
22

3-
MCP server for Docker CLI integration - 49 tools for containers, images, Compose, volumes, networks, cleanup, and system info.
3+
MCP server for Docker CLI integration - 55 tools for containers, images, Compose, volumes, networks, cleanup, observability, and system info.
44

55
Part of the [Docker Developer Tools](https://github.com/TMHSDigital/Docker-Developer-Tools) Cursor plugin.
66

@@ -48,7 +48,7 @@ Or if installed globally:
4848
}
4949
```
5050

51-
## Tools (49)
51+
## Tools (55)
5252

5353
### Read / Inspect (10)
5454

@@ -134,6 +134,17 @@ Or if installed globally:
134134
| `docker_containerPrune` | Remove stopped containers |
135135
| `docker_imagePrune` | Remove unused images |
136136

137+
### Advanced / Observability (6)
138+
139+
| Tool | Description |
140+
|------|-------------|
141+
| `docker_cp` | Copy files between container and host |
142+
| `docker_stats` | Live resource usage statistics |
143+
| `docker_top` | Running processes in a container |
144+
| `docker_events` | Real-time Docker daemon events |
145+
| `docker_update` | Update container resource config |
146+
| `docker_wait` | Wait for container to stop |
147+
137148
## License
138149

139150
CC-BY-NC-ND-4.0 - Copyright 2026 TM Hospitality Strategies

mcp-server/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "@tmhs/docker-mcp",
3-
"version": "0.5.0",
4-
"description": "MCP server for Docker CLI integration - 49 tools for containers, images, compose, volumes, networks, cleanup, and system info. Full lifecycle, image pipeline, Compose V2, volume/network CRUD, and resource pruning.",
3+
"version": "0.6.0",
4+
"description": "MCP server for Docker CLI integration - 55 tools for containers, images, compose, volumes, networks, cleanup, observability, and system info. Full lifecycle, image pipeline, Compose V2, volume/network CRUD, resource pruning, and live monitoring.",
55
"type": "module",
66
"main": "dist/index.js",
77
"bin": {

0 commit comments

Comments
 (0)