@tmhs/docker-mcp 0.5.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. package/README.md +36 -2
  2. package/dist/index.js +39 -1
  3. package/dist/index.js.map +1 -1
  4. package/dist/tools/builderPrune.d.ts +3 -0
  5. package/dist/tools/builderPrune.d.ts.map +1 -0
  6. package/dist/tools/builderPrune.js +43 -0
  7. package/dist/tools/builderPrune.js.map +1 -0
  8. package/dist/tools/buildxBuild.d.ts +3 -0
  9. package/dist/tools/buildxBuild.d.ts.map +1 -0
  10. package/dist/tools/buildxBuild.js +138 -0
  11. package/dist/tools/buildxBuild.js.map +1 -0
  12. package/dist/tools/buildxCreate.d.ts +3 -0
  13. package/dist/tools/buildxCreate.d.ts.map +1 -0
  14. package/dist/tools/buildxCreate.js +66 -0
  15. package/dist/tools/buildxCreate.js.map +1 -0
  16. package/dist/tools/buildxImagetools.d.ts +3 -0
  17. package/dist/tools/buildxImagetools.d.ts.map +1 -0
  18. package/dist/tools/buildxImagetools.js +48 -0
  19. package/dist/tools/buildxImagetools.js.map +1 -0
  20. package/dist/tools/buildxInspect.d.ts +3 -0
  21. package/dist/tools/buildxInspect.d.ts.map +1 -0
  22. package/dist/tools/buildxInspect.js +36 -0
  23. package/dist/tools/buildxInspect.js.map +1 -0
  24. package/dist/tools/buildxLs.d.ts +3 -0
  25. package/dist/tools/buildxLs.d.ts.map +1 -0
  26. package/dist/tools/buildxLs.js +17 -0
  27. package/dist/tools/buildxLs.js.map +1 -0
  28. package/dist/tools/buildxRm.d.ts +3 -0
  29. package/dist/tools/buildxRm.d.ts.map +1 -0
  30. package/dist/tools/buildxRm.js +42 -0
  31. package/dist/tools/buildxRm.js.map +1 -0
  32. package/dist/tools/buildxUse.d.ts +3 -0
  33. package/dist/tools/buildxUse.d.ts.map +1 -0
  34. package/dist/tools/buildxUse.js +42 -0
  35. package/dist/tools/buildxUse.js.map +1 -0
  36. package/dist/tools/cp.d.ts +3 -0
  37. package/dist/tools/cp.d.ts.map +1 -0
  38. package/dist/tools/cp.js +50 -0
  39. package/dist/tools/cp.js.map +1 -0
  40. package/dist/tools/events.d.ts +3 -0
  41. package/dist/tools/events.d.ts.map +1 -0
  42. package/dist/tools/events.js +48 -0
  43. package/dist/tools/events.js.map +1 -0
  44. package/dist/tools/manifestAnnotate.d.ts +3 -0
  45. package/dist/tools/manifestAnnotate.d.ts.map +1 -0
  46. package/dist/tools/manifestAnnotate.js +60 -0
  47. package/dist/tools/manifestAnnotate.js.map +1 -0
  48. package/dist/tools/manifestCreate.d.ts +3 -0
  49. package/dist/tools/manifestCreate.d.ts.map +1 -0
  50. package/dist/tools/manifestCreate.js +38 -0
  51. package/dist/tools/manifestCreate.js.map +1 -0
  52. package/dist/tools/manifestInspect.d.ts +3 -0
  53. package/dist/tools/manifestInspect.d.ts.map +1 -0
  54. package/dist/tools/manifestInspect.js +34 -0
  55. package/dist/tools/manifestInspect.js.map +1 -0
  56. package/dist/tools/manifestPush.d.ts +3 -0
  57. package/dist/tools/manifestPush.d.ts.map +1 -0
  58. package/dist/tools/manifestPush.js +34 -0
  59. package/dist/tools/manifestPush.js.map +1 -0
  60. package/dist/tools/manifestRm.d.ts +3 -0
  61. package/dist/tools/manifestRm.d.ts.map +1 -0
  62. package/dist/tools/manifestRm.js +25 -0
  63. package/dist/tools/manifestRm.js.map +1 -0
  64. package/dist/tools/stats.d.ts +3 -0
  65. package/dist/tools/stats.d.ts.map +1 -0
  66. package/dist/tools/stats.js +39 -0
  67. package/dist/tools/stats.js.map +1 -0
  68. package/dist/tools/top.d.ts +3 -0
  69. package/dist/tools/top.d.ts.map +1 -0
  70. package/dist/tools/top.js +35 -0
  71. package/dist/tools/top.js.map +1 -0
  72. package/dist/tools/update.d.ts +3 -0
  73. package/dist/tools/update.d.ts.map +1 -0
  74. package/dist/tools/update.js +64 -0
  75. package/dist/tools/update.js.map +1 -0
  76. package/dist/tools/wait.d.ts +3 -0
  77. package/dist/tools/wait.d.ts.map +1 -0
  78. package/dist/tools/wait.js +29 -0
  79. package/dist/tools/wait.js.map +1 -0
  80. package/package.json +2 -2
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @tmhs/docker-mcp
2
2
 
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 - 68 tools for containers, images, Compose, volumes, networks, cleanup, observability, buildx, manifests, and system info.
4
4
 
5
5
  Part of the [Docker Developer Tools](https://github.com/TMHSDigital/Docker-Developer-Tools) Cursor plugin.
6
6
 
@@ -48,7 +48,7 @@ Or if installed globally:
48
48
  }
49
49
  ```
50
50
 
51
- ## Tools (49)
51
+ ## Tools (68)
52
52
 
53
53
  ### Read / Inspect (10)
54
54
 
@@ -134,6 +134,40 @@ Or if installed globally:
134
134
  | `docker_containerPrune` | Remove stopped containers |
135
135
  | `docker_imagePrune` | Remove unused images |
136
136
 
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
+
148
+ ### Buildx (8)
149
+
150
+ | Tool | Description |
151
+ |------|-------------|
152
+ | `docker_buildxBuild` | Multi-platform builds with buildx |
153
+ | `docker_buildxLs` | List builder instances |
154
+ | `docker_buildxCreate` | Create a new builder instance |
155
+ | `docker_buildxRm` | Remove a builder instance |
156
+ | `docker_buildxInspect` | Inspect a builder instance |
157
+ | `docker_buildxUse` | Set the default builder |
158
+ | `docker_buildxImagetools` | Inspect or create manifest lists via buildx |
159
+ | `docker_builderPrune` | Remove build cache |
160
+
161
+ ### Manifest (5)
162
+
163
+ | Tool | Description |
164
+ |------|-------------|
165
+ | `docker_manifestCreate` | Create a manifest list for multi-arch images |
166
+ | `docker_manifestInspect` | Display a manifest or manifest list |
167
+ | `docker_manifestAnnotate` | Add platform info to a manifest entry |
168
+ | `docker_manifestPush` | Push a manifest list to a registry |
169
+ | `docker_manifestRm` | Remove local manifest lists |
170
+
137
171
  ## License
138
172
 
139
173
  CC-BY-NC-ND-4.0 - Copyright 2026 TM Hospitality Strategies
package/dist/index.js CHANGED
@@ -50,9 +50,28 @@ import { register as registerNetworkPrune } from "./tools/networkPrune.js";
50
50
  import { register as registerSystemPrune } from "./tools/systemPrune.js";
51
51
  import { register as registerContainerPrune } from "./tools/containerPrune.js";
52
52
  import { register as registerImagePrune } from "./tools/imagePrune.js";
53
+ import { register as registerCp } from "./tools/cp.js";
54
+ import { register as registerStats } from "./tools/stats.js";
55
+ import { register as registerTop } from "./tools/top.js";
56
+ import { register as registerEvents } from "./tools/events.js";
57
+ import { register as registerUpdate } from "./tools/update.js";
58
+ import { register as registerWait } from "./tools/wait.js";
59
+ import { register as registerBuildxBuild } from "./tools/buildxBuild.js";
60
+ import { register as registerBuildxLs } from "./tools/buildxLs.js";
61
+ import { register as registerBuildxCreate } from "./tools/buildxCreate.js";
62
+ import { register as registerBuildxRm } from "./tools/buildxRm.js";
63
+ import { register as registerBuildxInspect } from "./tools/buildxInspect.js";
64
+ import { register as registerBuildxUse } from "./tools/buildxUse.js";
65
+ import { register as registerBuildxImagetools } from "./tools/buildxImagetools.js";
66
+ import { register as registerBuilderPrune } from "./tools/builderPrune.js";
67
+ import { register as registerManifestCreate } from "./tools/manifestCreate.js";
68
+ import { register as registerManifestInspect } from "./tools/manifestInspect.js";
69
+ import { register as registerManifestAnnotate } from "./tools/manifestAnnotate.js";
70
+ import { register as registerManifestPush } from "./tools/manifestPush.js";
71
+ import { register as registerManifestRm } from "./tools/manifestRm.js";
53
72
  const server = new McpServer({
54
73
  name: "docker-mcp",
55
- version: "0.5.0",
74
+ version: "0.7.0",
56
75
  });
57
76
  registerListContainers(server);
58
77
  registerInspectContainer(server);
@@ -103,6 +122,25 @@ registerNetworkPrune(server);
103
122
  registerSystemPrune(server);
104
123
  registerContainerPrune(server);
105
124
  registerImagePrune(server);
125
+ registerCp(server);
126
+ registerStats(server);
127
+ registerTop(server);
128
+ registerEvents(server);
129
+ registerUpdate(server);
130
+ registerWait(server);
131
+ registerBuildxBuild(server);
132
+ registerBuildxLs(server);
133
+ registerBuildxCreate(server);
134
+ registerBuildxRm(server);
135
+ registerBuildxInspect(server);
136
+ registerBuildxUse(server);
137
+ registerBuildxImagetools(server);
138
+ registerBuilderPrune(server);
139
+ registerManifestCreate(server);
140
+ registerManifestInspect(server);
141
+ registerManifestAnnotate(server);
142
+ registerManifestPush(server);
143
+ registerManifestRm(server);
106
144
  async function main() {
107
145
  const transport = new StdioServerTransport();
108
146
  await server.connect(transport);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ export declare function register(server: McpServer): void;
3
+ //# sourceMappingURL=builderPrune.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builderPrune.d.ts","sourceRoot":"","sources":["../../src/tools/builderPrune.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAmBzE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAiChD"}
@@ -0,0 +1,43 @@
1
+ import { z } from "zod";
2
+ import { execDocker, errorResponse } from "../utils/docker-api.js";
3
+ const inputSchema = {
4
+ all: z
5
+ .boolean()
6
+ .optional()
7
+ .default(false)
8
+ .describe("Remove all unused build cache, not just dangling"),
9
+ filter: z
10
+ .string()
11
+ .optional()
12
+ .describe("Filter cache to prune (e.g. 'until=24h')"),
13
+ keepStorage: z
14
+ .string()
15
+ .optional()
16
+ .describe("Amount of disk space to keep for cache (e.g. '10GB')"),
17
+ };
18
+ export function register(server) {
19
+ server.tool("docker_builderPrune", "Remove Docker buildx build cache (always non-interactive)", inputSchema, async (args) => {
20
+ try {
21
+ const cmdArgs = ["buildx", "prune", "-f"];
22
+ if (args.all) {
23
+ cmdArgs.push("--all");
24
+ }
25
+ if (args.filter) {
26
+ cmdArgs.push("--filter", args.filter);
27
+ }
28
+ if (args.keepStorage) {
29
+ cmdArgs.push("--keep-storage", args.keepStorage);
30
+ }
31
+ const output = await execDocker(cmdArgs, { timeout: 120_000 });
32
+ return {
33
+ content: [
34
+ { type: "text", text: output.trim() || "No build cache to prune" },
35
+ ],
36
+ };
37
+ }
38
+ catch (error) {
39
+ return errorResponse(error);
40
+ }
41
+ });
42
+ }
43
+ //# sourceMappingURL=builderPrune.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builderPrune.js","sourceRoot":"","sources":["../../src/tools/builderPrune.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEnE,MAAM,WAAW,GAAG;IAClB,GAAG,EAAE,CAAC;SACH,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CAAC,kDAAkD,CAAC;IAC/D,MAAM,EAAE,CAAC;SACN,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,0CAA0C,CAAC;IACvD,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,sDAAsD,CAAC;CACpE,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,IAAI,CACT,qBAAqB,EACrB,2DAA2D,EAC3D,WAAW,EACX,KAAK,EAAE,IAAI,EAAE,EAAE;QACb,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;YAE1C,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACxB,CAAC;YAED,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBAChB,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YACxC,CAAC;YAED,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YACnD,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;YAE/D,OAAO;gBACL,OAAO,EAAE;oBACP,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,yBAAyB,EAAE;iBAC5E;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ export declare function register(server: McpServer): void;
3
+ //# sourceMappingURL=buildxBuild.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildxBuild.d.ts","sourceRoot":"","sources":["../../src/tools/buildxBuild.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAsEzE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAyFhD"}
@@ -0,0 +1,138 @@
1
+ import { z } from "zod";
2
+ import { execDocker, errorResponse } from "../utils/docker-api.js";
3
+ const inputSchema = {
4
+ context: z
5
+ .string()
6
+ .min(1)
7
+ .describe("Build context path (e.g. '.', './app', absolute path)"),
8
+ tag: z
9
+ .array(z.string())
10
+ .optional()
11
+ .describe("Name and optionally tag the image (e.g. ['myapp:latest'])"),
12
+ file: z
13
+ .string()
14
+ .optional()
15
+ .describe("Path to Dockerfile (default: 'context/Dockerfile')"),
16
+ platform: z
17
+ .array(z.string())
18
+ .optional()
19
+ .describe("Target platforms (e.g. ['linux/amd64', 'linux/arm64'])"),
20
+ builder: z
21
+ .string()
22
+ .optional()
23
+ .describe("Builder instance to use"),
24
+ buildArgs: z
25
+ .array(z.string())
26
+ .optional()
27
+ .describe("Build-time variables as 'KEY=VALUE'"),
28
+ target: z
29
+ .string()
30
+ .optional()
31
+ .describe("Target build stage for multi-stage builds"),
32
+ noCache: z
33
+ .boolean()
34
+ .optional()
35
+ .default(false)
36
+ .describe("Do not use cache when building"),
37
+ pull: z
38
+ .boolean()
39
+ .optional()
40
+ .default(false)
41
+ .describe("Always pull newer base images"),
42
+ push: z
43
+ .boolean()
44
+ .optional()
45
+ .default(false)
46
+ .describe("Push the image after building"),
47
+ load: z
48
+ .boolean()
49
+ .optional()
50
+ .default(false)
51
+ .describe("Load the single-platform result into docker images"),
52
+ cacheFrom: z
53
+ .array(z.string())
54
+ .optional()
55
+ .describe("External cache sources (e.g. ['type=registry,ref=myapp:cache'])"),
56
+ cacheTo: z
57
+ .array(z.string())
58
+ .optional()
59
+ .describe("Cache export destinations (e.g. ['type=registry,ref=myapp:cache'])"),
60
+ provenance: z
61
+ .boolean()
62
+ .optional()
63
+ .describe("Generate provenance attestation"),
64
+ labels: z
65
+ .array(z.string())
66
+ .optional()
67
+ .describe("Image labels as 'key=value'"),
68
+ };
69
+ export function register(server) {
70
+ server.tool("docker_buildxBuild", "Build Docker images with buildx for multi-platform support, cache export, and provenance", inputSchema, async (args) => {
71
+ try {
72
+ const cmdArgs = ["buildx", "build"];
73
+ if (args.builder) {
74
+ cmdArgs.push("--builder", args.builder);
75
+ }
76
+ if (args.tag) {
77
+ for (const t of args.tag) {
78
+ cmdArgs.push("-t", t);
79
+ }
80
+ }
81
+ if (args.file) {
82
+ cmdArgs.push("-f", args.file);
83
+ }
84
+ if (args.platform) {
85
+ cmdArgs.push("--platform", args.platform.join(","));
86
+ }
87
+ if (args.buildArgs) {
88
+ for (const ba of args.buildArgs) {
89
+ cmdArgs.push("--build-arg", ba);
90
+ }
91
+ }
92
+ if (args.target) {
93
+ cmdArgs.push("--target", args.target);
94
+ }
95
+ if (args.noCache) {
96
+ cmdArgs.push("--no-cache");
97
+ }
98
+ if (args.pull) {
99
+ cmdArgs.push("--pull");
100
+ }
101
+ if (args.push) {
102
+ cmdArgs.push("--push");
103
+ }
104
+ if (args.load) {
105
+ cmdArgs.push("--load");
106
+ }
107
+ if (args.cacheFrom) {
108
+ for (const cf of args.cacheFrom) {
109
+ cmdArgs.push("--cache-from", cf);
110
+ }
111
+ }
112
+ if (args.cacheTo) {
113
+ for (const ct of args.cacheTo) {
114
+ cmdArgs.push("--cache-to", ct);
115
+ }
116
+ }
117
+ if (args.provenance !== undefined) {
118
+ cmdArgs.push(`--provenance=${args.provenance}`);
119
+ }
120
+ if (args.labels) {
121
+ for (const l of args.labels) {
122
+ cmdArgs.push("--label", l);
123
+ }
124
+ }
125
+ cmdArgs.push(args.context);
126
+ const output = await execDocker(cmdArgs, { timeout: 600_000 });
127
+ return {
128
+ content: [
129
+ { type: "text", text: output.trim() || "Build completed successfully" },
130
+ ],
131
+ };
132
+ }
133
+ catch (error) {
134
+ return errorResponse(error);
135
+ }
136
+ });
137
+ }
138
+ //# sourceMappingURL=buildxBuild.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildxBuild.js","sourceRoot":"","sources":["../../src/tools/buildxBuild.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ export declare function register(server: McpServer): void;
3
+ //# sourceMappingURL=buildxCreate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildxCreate.d.ts","sourceRoot":"","sources":["../../src/tools/buildxCreate.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA+BzE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA+ChD"}
@@ -0,0 +1,66 @@
1
+ import { z } from "zod";
2
+ import { execDocker, errorResponse } from "../utils/docker-api.js";
3
+ const inputSchema = {
4
+ name: z
5
+ .string()
6
+ .optional()
7
+ .describe("Builder instance name"),
8
+ driver: z
9
+ .string()
10
+ .optional()
11
+ .describe("Builder driver (docker-container, kubernetes, remote)"),
12
+ use: z
13
+ .boolean()
14
+ .optional()
15
+ .default(false)
16
+ .describe("Set the builder as current after creation"),
17
+ platform: z
18
+ .array(z.string())
19
+ .optional()
20
+ .describe("Fixed platforms for the builder (e.g. ['linux/amd64', 'linux/arm64'])"),
21
+ buildkitdFlags: z
22
+ .string()
23
+ .optional()
24
+ .describe("Flags for buildkitd daemon"),
25
+ driverOpts: z
26
+ .array(z.string())
27
+ .optional()
28
+ .describe("Driver-specific options as 'key=value'"),
29
+ };
30
+ export function register(server) {
31
+ server.tool("docker_buildxCreate", "Create a new Docker buildx builder instance", inputSchema, async (args) => {
32
+ try {
33
+ const cmdArgs = ["buildx", "create"];
34
+ if (args.name) {
35
+ cmdArgs.push("--name", args.name);
36
+ }
37
+ if (args.driver) {
38
+ cmdArgs.push("--driver", args.driver);
39
+ }
40
+ if (args.use) {
41
+ cmdArgs.push("--use");
42
+ }
43
+ if (args.platform) {
44
+ cmdArgs.push("--platform", args.platform.join(","));
45
+ }
46
+ if (args.buildkitdFlags) {
47
+ cmdArgs.push("--buildkitd-flags", args.buildkitdFlags);
48
+ }
49
+ if (args.driverOpts) {
50
+ for (const opt of args.driverOpts) {
51
+ cmdArgs.push("--driver-opt", opt);
52
+ }
53
+ }
54
+ const output = await execDocker(cmdArgs);
55
+ return {
56
+ content: [
57
+ { type: "text", text: output.trim() || "Builder created" },
58
+ ],
59
+ };
60
+ }
61
+ catch (error) {
62
+ return errorResponse(error);
63
+ }
64
+ });
65
+ }
66
+ //# sourceMappingURL=buildxCreate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildxCreate.js","sourceRoot":"","sources":["../../src/tools/buildxCreate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEnE,MAAM,WAAW,GAAG;IAClB,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,uBAAuB,CAAC;IACpC,MAAM,EAAE,CAAC;SACN,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,uDAAuD,CAAC;IACpE,GAAG,EAAE,CAAC;SACH,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CAAC,2CAA2C,CAAC;IACxD,QAAQ,EAAE,CAAC;SACR,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,EAAE;SACV,QAAQ,CAAC,uEAAuE,CAAC;IACpF,cAAc,EAAE,CAAC;SACd,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,4BAA4B,CAAC;IACzC,UAAU,EAAE,CAAC;SACV,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,EAAE;SACV,QAAQ,CAAC,wCAAwC,CAAC;CACtD,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,IAAI,CACT,qBAAqB,EACrB,6CAA6C,EAC7C,WAAW,EACX,KAAK,EAAE,IAAI,EAAE,EAAE;QACb,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAErC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACd,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YACpC,CAAC;YAED,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBAChB,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YACxC,CAAC;YAED,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACxB,CAAC;YAED,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAClB,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YACtD,CAAC;YAED,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;gBACxB,OAAO,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;YACzD,CAAC;YAED,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBACpB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;oBAClC,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;gBACpC,CAAC;YACH,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,CAAC;YAEzC,OAAO;gBACL,OAAO,EAAE;oBACP,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,iBAAiB,EAAE;iBACpE;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ export declare function register(server: McpServer): void;
3
+ //# sourceMappingURL=buildxImagetools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildxImagetools.d.ts","sourceRoot":"","sources":["../../src/tools/buildxImagetools.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAsBzE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAmChD"}
@@ -0,0 +1,48 @@
1
+ import { z } from "zod";
2
+ import { execDocker, errorResponse } from "../utils/docker-api.js";
3
+ const inputSchema = {
4
+ action: z
5
+ .enum(["inspect", "create"])
6
+ .describe("Action: 'inspect' to view manifest info, 'create' to combine images into a manifest list"),
7
+ sources: z
8
+ .array(z.string())
9
+ .min(1)
10
+ .describe("Image references to inspect or combine"),
11
+ tag: z
12
+ .array(z.string())
13
+ .optional()
14
+ .describe("Tags for the created manifest list (only for 'create' action)"),
15
+ dryRun: z
16
+ .boolean()
17
+ .optional()
18
+ .default(false)
19
+ .describe("Show what would be created without pushing (only for 'create' action)"),
20
+ };
21
+ export function register(server) {
22
+ server.tool("docker_buildxImagetools", "Inspect or create multi-platform manifest lists via buildx imagetools", inputSchema, async (args) => {
23
+ try {
24
+ const cmdArgs = ["buildx", "imagetools", args.action];
25
+ if (args.action === "create") {
26
+ if (args.tag) {
27
+ for (const t of args.tag) {
28
+ cmdArgs.push("-t", t);
29
+ }
30
+ }
31
+ if (args.dryRun) {
32
+ cmdArgs.push("--dry-run");
33
+ }
34
+ }
35
+ cmdArgs.push(...args.sources);
36
+ const output = await execDocker(cmdArgs, { timeout: 120_000 });
37
+ return {
38
+ content: [
39
+ { type: "text", text: output.trim() || "Imagetools operation completed" },
40
+ ],
41
+ };
42
+ }
43
+ catch (error) {
44
+ return errorResponse(error);
45
+ }
46
+ });
47
+ }
48
+ //# sourceMappingURL=buildxImagetools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildxImagetools.js","sourceRoot":"","sources":["../../src/tools/buildxImagetools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEnE,MAAM,WAAW,GAAG;IAClB,MAAM,EAAE,CAAC;SACN,IAAI,CAAC,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;SAC3B,QAAQ,CAAC,0FAA0F,CAAC;IACvG,OAAO,EAAE,CAAC;SACP,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CAAC,wCAAwC,CAAC;IACrD,GAAG,EAAE,CAAC;SACH,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,EAAE;SACV,QAAQ,CAAC,+DAA+D,CAAC;IAC5E,MAAM,EAAE,CAAC;SACN,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CAAC,uEAAuE,CAAC;CACrF,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,IAAI,CACT,yBAAyB,EACzB,uEAAuE,EACvE,WAAW,EACX,KAAK,EAAE,IAAI,EAAE,EAAE;QACb,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YAEtD,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC7B,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;oBACb,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;wBACzB,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;oBACxB,CAAC;gBACH,CAAC;gBAED,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;oBAChB,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBAC5B,CAAC;YACH,CAAC;YAED,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;YAE9B,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;YAE/D,OAAO;gBACL,OAAO,EAAE;oBACP,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,gCAAgC,EAAE;iBACnF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ export declare function register(server: McpServer): void;
3
+ //# sourceMappingURL=buildxInspect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildxInspect.d.ts","sourceRoot":"","sources":["../../src/tools/buildxInspect.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAezE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA6BhD"}
@@ -0,0 +1,36 @@
1
+ import { z } from "zod";
2
+ import { execDocker, errorResponse } from "../utils/docker-api.js";
3
+ const inputSchema = {
4
+ name: z
5
+ .string()
6
+ .optional()
7
+ .describe("Builder instance name (defaults to current builder)"),
8
+ bootstrap: z
9
+ .boolean()
10
+ .optional()
11
+ .default(false)
12
+ .describe("Ensure the builder is running before inspecting"),
13
+ };
14
+ export function register(server) {
15
+ server.tool("docker_buildxInspect", "Inspect a Docker buildx builder instance", inputSchema, async (args) => {
16
+ try {
17
+ const cmdArgs = ["buildx", "inspect"];
18
+ if (args.bootstrap) {
19
+ cmdArgs.push("--bootstrap");
20
+ }
21
+ if (args.name) {
22
+ cmdArgs.push(args.name);
23
+ }
24
+ const output = await execDocker(cmdArgs, { timeout: 60_000 });
25
+ return {
26
+ content: [
27
+ { type: "text", text: output.trim() },
28
+ ],
29
+ };
30
+ }
31
+ catch (error) {
32
+ return errorResponse(error);
33
+ }
34
+ });
35
+ }
36
+ //# sourceMappingURL=buildxInspect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildxInspect.js","sourceRoot":"","sources":["../../src/tools/buildxInspect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEnE,MAAM,WAAW,GAAG;IAClB,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,qDAAqD,CAAC;IAClE,SAAS,EAAE,CAAC;SACT,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CAAC,iDAAiD,CAAC;CAC/D,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,IAAI,CACT,sBAAsB,EACtB,0CAA0C,EAC1C,WAAW,EACX,KAAK,EAAE,IAAI,EAAE,EAAE;QACb,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;YAEtC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACnB,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAC9B,CAAC;YAED,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACd,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC1B,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;YAE9D,OAAO;gBACL,OAAO,EAAE;oBACP,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,EAAE;iBAC/C;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ export declare function register(server: McpServer): void;
3
+ //# sourceMappingURL=buildxLs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildxLs.d.ts","sourceRoot":"","sources":["../../src/tools/buildxLs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGzE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAmBhD"}
@@ -0,0 +1,17 @@
1
+ import { execDocker, errorResponse } from "../utils/docker-api.js";
2
+ export function register(server) {
3
+ server.tool("docker_buildxLs", "List Docker buildx builder instances", {}, async () => {
4
+ try {
5
+ const output = await execDocker(["buildx", "ls"]);
6
+ return {
7
+ content: [
8
+ { type: "text", text: output.trim() },
9
+ ],
10
+ };
11
+ }
12
+ catch (error) {
13
+ return errorResponse(error);
14
+ }
15
+ });
16
+ }
17
+ //# sourceMappingURL=buildxLs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildxLs.js","sourceRoot":"","sources":["../../src/tools/buildxLs.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEnE,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,IAAI,CACT,iBAAiB,EACjB,sCAAsC,EACtC,EAAE,EACF,KAAK,IAAI,EAAE;QACT,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;YAElD,OAAO;gBACL,OAAO,EAAE;oBACP,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,EAAE;iBAC/C;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ export declare function register(server: McpServer): void;
3
+ //# sourceMappingURL=buildxRm.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildxRm.d.ts","sourceRoot":"","sources":["../../src/tools/buildxRm.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAoBzE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA+BhD"}
@@ -0,0 +1,42 @@
1
+ import { z } from "zod";
2
+ import { execDocker, errorResponse } from "../utils/docker-api.js";
3
+ const inputSchema = {
4
+ name: z
5
+ .string()
6
+ .min(1)
7
+ .describe("Builder instance name to remove"),
8
+ force: z
9
+ .boolean()
10
+ .optional()
11
+ .default(false)
12
+ .describe("Force removal even if the builder is running"),
13
+ allInactive: z
14
+ .boolean()
15
+ .optional()
16
+ .default(false)
17
+ .describe("Remove all inactive builders"),
18
+ };
19
+ export function register(server) {
20
+ server.tool("docker_buildxRm", "Remove a Docker buildx builder instance", inputSchema, async (args) => {
21
+ try {
22
+ const cmdArgs = ["buildx", "rm"];
23
+ if (args.force) {
24
+ cmdArgs.push("--force");
25
+ }
26
+ if (args.allInactive) {
27
+ cmdArgs.push("--all-inactive");
28
+ }
29
+ cmdArgs.push(args.name);
30
+ const output = await execDocker(cmdArgs);
31
+ return {
32
+ content: [
33
+ { type: "text", text: output.trim() || `Removed builder '${args.name}'` },
34
+ ],
35
+ };
36
+ }
37
+ catch (error) {
38
+ return errorResponse(error);
39
+ }
40
+ });
41
+ }
42
+ //# sourceMappingURL=buildxRm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildxRm.js","sourceRoot":"","sources":["../../src/tools/buildxRm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEnE,MAAM,WAAW,GAAG;IAClB,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CAAC,iCAAiC,CAAC;IAC9C,KAAK,EAAE,CAAC;SACL,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CAAC,8CAA8C,CAAC;IAC3D,WAAW,EAAE,CAAC;SACX,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CAAC,8BAA8B,CAAC;CAC5C,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,IAAI,CACT,iBAAiB,EACjB,yCAAyC,EACzC,WAAW,EACX,KAAK,EAAE,IAAI,EAAE,EAAE;QACb,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YAEjC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC1B,CAAC;YAED,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACjC,CAAC;YAED,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAExB,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,CAAC;YAEzC,OAAO;gBACL,OAAO,EAAE;oBACP,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,oBAAoB,IAAI,CAAC,IAAI,GAAG,EAAE;iBACnF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ export declare function register(server: McpServer): void;
3
+ //# sourceMappingURL=buildxUse.d.ts.map