@tmhs/docker-mcp 0.6.0 → 0.8.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 (120) hide show
  1. package/README.md +42 -3
  2. package/dist/index.js +59 -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/composeConfig.d.ts +3 -0
  37. package/dist/tools/composeConfig.d.ts.map +1 -0
  38. package/dist/tools/composeConfig.js +30 -0
  39. package/dist/tools/composeConfig.js.map +1 -0
  40. package/dist/tools/composeCp.d.ts +3 -0
  41. package/dist/tools/composeCp.d.ts.map +1 -0
  42. package/dist/tools/composeCp.js +33 -0
  43. package/dist/tools/composeCp.js.map +1 -0
  44. package/dist/tools/composeCreate.d.ts +3 -0
  45. package/dist/tools/composeCreate.d.ts.map +1 -0
  46. package/dist/tools/composeCreate.js +36 -0
  47. package/dist/tools/composeCreate.js.map +1 -0
  48. package/dist/tools/composeEvents.d.ts +3 -0
  49. package/dist/tools/composeEvents.d.ts.map +1 -0
  50. package/dist/tools/composeEvents.js +31 -0
  51. package/dist/tools/composeEvents.js.map +1 -0
  52. package/dist/tools/composeImages.d.ts +3 -0
  53. package/dist/tools/composeImages.d.ts.map +1 -0
  54. package/dist/tools/composeImages.js +25 -0
  55. package/dist/tools/composeImages.js.map +1 -0
  56. package/dist/tools/composeKill.d.ts +3 -0
  57. package/dist/tools/composeKill.d.ts.map +1 -0
  58. package/dist/tools/composeKill.js +30 -0
  59. package/dist/tools/composeKill.js.map +1 -0
  60. package/dist/tools/composeLs.d.ts +3 -0
  61. package/dist/tools/composeLs.d.ts.map +1 -0
  62. package/dist/tools/composeLs.js +24 -0
  63. package/dist/tools/composeLs.js.map +1 -0
  64. package/dist/tools/composePause.d.ts +3 -0
  65. package/dist/tools/composePause.d.ts.map +1 -0
  66. package/dist/tools/composePause.js +27 -0
  67. package/dist/tools/composePause.js.map +1 -0
  68. package/dist/tools/composePort.d.ts +3 -0
  69. package/dist/tools/composePort.d.ts.map +1 -0
  70. package/dist/tools/composePort.js +30 -0
  71. package/dist/tools/composePort.js.map +1 -0
  72. package/dist/tools/composeRm.d.ts +3 -0
  73. package/dist/tools/composeRm.d.ts.map +1 -0
  74. package/dist/tools/composeRm.js +33 -0
  75. package/dist/tools/composeRm.js.map +1 -0
  76. package/dist/tools/composeRun.d.ts +3 -0
  77. package/dist/tools/composeRun.d.ts.map +1 -0
  78. package/dist/tools/composeRun.js +49 -0
  79. package/dist/tools/composeRun.js.map +1 -0
  80. package/dist/tools/composeScale.d.ts +3 -0
  81. package/dist/tools/composeScale.d.ts.map +1 -0
  82. package/dist/tools/composeScale.js +28 -0
  83. package/dist/tools/composeScale.js.map +1 -0
  84. package/dist/tools/composeStart.d.ts +3 -0
  85. package/dist/tools/composeStart.d.ts.map +1 -0
  86. package/dist/tools/composeStart.js +27 -0
  87. package/dist/tools/composeStart.js.map +1 -0
  88. package/dist/tools/composeStop.d.ts +3 -0
  89. package/dist/tools/composeStop.d.ts.map +1 -0
  90. package/dist/tools/composeStop.js +30 -0
  91. package/dist/tools/composeStop.js.map +1 -0
  92. package/dist/tools/composeTop.d.ts +3 -0
  93. package/dist/tools/composeTop.d.ts.map +1 -0
  94. package/dist/tools/composeTop.js +27 -0
  95. package/dist/tools/composeTop.js.map +1 -0
  96. package/dist/tools/composeUnpause.d.ts +3 -0
  97. package/dist/tools/composeUnpause.d.ts.map +1 -0
  98. package/dist/tools/composeUnpause.js +27 -0
  99. package/dist/tools/composeUnpause.js.map +1 -0
  100. package/dist/tools/manifestAnnotate.d.ts +3 -0
  101. package/dist/tools/manifestAnnotate.d.ts.map +1 -0
  102. package/dist/tools/manifestAnnotate.js +60 -0
  103. package/dist/tools/manifestAnnotate.js.map +1 -0
  104. package/dist/tools/manifestCreate.d.ts +3 -0
  105. package/dist/tools/manifestCreate.d.ts.map +1 -0
  106. package/dist/tools/manifestCreate.js +38 -0
  107. package/dist/tools/manifestCreate.js.map +1 -0
  108. package/dist/tools/manifestInspect.d.ts +3 -0
  109. package/dist/tools/manifestInspect.d.ts.map +1 -0
  110. package/dist/tools/manifestInspect.js +34 -0
  111. package/dist/tools/manifestInspect.js.map +1 -0
  112. package/dist/tools/manifestPush.d.ts +3 -0
  113. package/dist/tools/manifestPush.d.ts.map +1 -0
  114. package/dist/tools/manifestPush.js +34 -0
  115. package/dist/tools/manifestPush.js.map +1 -0
  116. package/dist/tools/manifestRm.d.ts +3 -0
  117. package/dist/tools/manifestRm.d.ts.map +1 -0
  118. package/dist/tools/manifestRm.js +25 -0
  119. package/dist/tools/manifestRm.js.map +1 -0
  120. 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 - 55 tools for containers, images, Compose, volumes, networks, cleanup, observability, and system info.
3
+ MCP server for Docker CLI integration - 84 tools for containers, images, complete Compose V2, 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 (55)
51
+ ## Tools (84)
52
52
 
53
53
  ### Read / Inspect (10)
54
54
 
@@ -93,7 +93,7 @@ Or if installed globally:
93
93
  | `docker_save` | Save images to tar archive |
94
94
  | `docker_load` | Load images from tar archive |
95
95
 
96
- ### Compose (8)
96
+ ### Compose (24)
97
97
 
98
98
  | Tool | Description |
99
99
  |------|-------------|
@@ -105,6 +105,22 @@ Or if installed globally:
105
105
  | `docker_composeRestart` | Restart Compose services |
106
106
  | `docker_composePull` | Pull Compose service images |
107
107
  | `docker_composeExec` | Execute command in a Compose service |
108
+ | `docker_composeConfig` | Validate and render a Compose file |
109
+ | `docker_composeCp` | Copy files to/from a Compose service |
110
+ | `docker_composeCreate` | Create containers without starting |
111
+ | `docker_composeEvents` | Real-time Compose container events |
112
+ | `docker_composeImages` | List images used by services |
113
+ | `docker_composeKill` | Force stop service containers |
114
+ | `docker_composeLs` | List Compose projects |
115
+ | `docker_composePause` | Pause Compose services |
116
+ | `docker_composeUnpause` | Unpause Compose services |
117
+ | `docker_composePort` | Get public port for a binding |
118
+ | `docker_composeRm` | Remove stopped service containers |
119
+ | `docker_composeRun` | Run one-off command on a service |
120
+ | `docker_composeScale` | Scale services to replica count |
121
+ | `docker_composeStart` | Start existing service containers |
122
+ | `docker_composeStop` | Stop services without removing |
123
+ | `docker_composeTop` | Running processes per service |
108
124
 
109
125
  ### Volume Management (4)
110
126
 
@@ -145,6 +161,29 @@ Or if installed globally:
145
161
  | `docker_update` | Update container resource config |
146
162
  | `docker_wait` | Wait for container to stop |
147
163
 
164
+ ### Buildx (8)
165
+
166
+ | Tool | Description |
167
+ |------|-------------|
168
+ | `docker_buildxBuild` | Multi-platform builds with buildx |
169
+ | `docker_buildxLs` | List builder instances |
170
+ | `docker_buildxCreate` | Create a new builder instance |
171
+ | `docker_buildxRm` | Remove a builder instance |
172
+ | `docker_buildxInspect` | Inspect a builder instance |
173
+ | `docker_buildxUse` | Set the default builder |
174
+ | `docker_buildxImagetools` | Inspect or create manifest lists via buildx |
175
+ | `docker_builderPrune` | Remove build cache |
176
+
177
+ ### Manifest (5)
178
+
179
+ | Tool | Description |
180
+ |------|-------------|
181
+ | `docker_manifestCreate` | Create a manifest list for multi-arch images |
182
+ | `docker_manifestInspect` | Display a manifest or manifest list |
183
+ | `docker_manifestAnnotate` | Add platform info to a manifest entry |
184
+ | `docker_manifestPush` | Push a manifest list to a registry |
185
+ | `docker_manifestRm` | Remove local manifest lists |
186
+
148
187
  ## License
149
188
 
150
189
  CC-BY-NC-ND-4.0 - Copyright 2026 TM Hospitality Strategies
package/dist/index.js CHANGED
@@ -56,9 +56,38 @@ import { register as registerTop } from "./tools/top.js";
56
56
  import { register as registerEvents } from "./tools/events.js";
57
57
  import { register as registerUpdate } from "./tools/update.js";
58
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";
72
+ import { register as registerComposeConfig } from "./tools/composeConfig.js";
73
+ import { register as registerComposeCp } from "./tools/composeCp.js";
74
+ import { register as registerComposeCreate } from "./tools/composeCreate.js";
75
+ import { register as registerComposeEvents } from "./tools/composeEvents.js";
76
+ import { register as registerComposeImages } from "./tools/composeImages.js";
77
+ import { register as registerComposeKill } from "./tools/composeKill.js";
78
+ import { register as registerComposeLs } from "./tools/composeLs.js";
79
+ import { register as registerComposePause } from "./tools/composePause.js";
80
+ import { register as registerComposeUnpause } from "./tools/composeUnpause.js";
81
+ import { register as registerComposePort } from "./tools/composePort.js";
82
+ import { register as registerComposeRm } from "./tools/composeRm.js";
83
+ import { register as registerComposeRun } from "./tools/composeRun.js";
84
+ import { register as registerComposeScale } from "./tools/composeScale.js";
85
+ import { register as registerComposeStart } from "./tools/composeStart.js";
86
+ import { register as registerComposeStop } from "./tools/composeStop.js";
87
+ import { register as registerComposeTop } from "./tools/composeTop.js";
59
88
  const server = new McpServer({
60
89
  name: "docker-mcp",
61
- version: "0.6.0",
90
+ version: "0.8.0",
62
91
  });
63
92
  registerListContainers(server);
64
93
  registerInspectContainer(server);
@@ -115,6 +144,35 @@ registerTop(server);
115
144
  registerEvents(server);
116
145
  registerUpdate(server);
117
146
  registerWait(server);
147
+ registerBuildxBuild(server);
148
+ registerBuildxLs(server);
149
+ registerBuildxCreate(server);
150
+ registerBuildxRm(server);
151
+ registerBuildxInspect(server);
152
+ registerBuildxUse(server);
153
+ registerBuildxImagetools(server);
154
+ registerBuilderPrune(server);
155
+ registerManifestCreate(server);
156
+ registerManifestInspect(server);
157
+ registerManifestAnnotate(server);
158
+ registerManifestPush(server);
159
+ registerManifestRm(server);
160
+ registerComposeConfig(server);
161
+ registerComposeCp(server);
162
+ registerComposeCreate(server);
163
+ registerComposeEvents(server);
164
+ registerComposeImages(server);
165
+ registerComposeKill(server);
166
+ registerComposeLs(server);
167
+ registerComposePause(server);
168
+ registerComposeUnpause(server);
169
+ registerComposePort(server);
170
+ registerComposeRm(server);
171
+ registerComposeRun(server);
172
+ registerComposeScale(server);
173
+ registerComposeStart(server);
174
+ registerComposeStop(server);
175
+ registerComposeTop(server);
118
176
  async function main() {
119
177
  const transport = new StdioServerTransport();
120
178
  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":";AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF,OAAO,EAAE,QAAQ,IAAI,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EAAE,QAAQ,IAAI,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AACnF,OAAO,EAAE,QAAQ,IAAI,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,QAAQ,IAAI,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,QAAQ,IAAI,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,QAAQ,IAAI,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,QAAQ,IAAI,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,QAAQ,IAAI,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,QAAQ,IAAI,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,QAAQ,IAAI,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,QAAQ,IAAI,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,QAAQ,IAAI,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,QAAQ,IAAI,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,QAAQ,IAAI,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,QAAQ,IAAI,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,QAAQ,IAAI,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,QAAQ,IAAI,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,QAAQ,IAAI,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,QAAQ,IAAI,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,QAAQ,IAAI,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,QAAQ,IAAI,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,QAAQ,IAAI,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,QAAQ,IAAI,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,QAAQ,IAAI,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,QAAQ,IAAI,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,QAAQ,IAAI,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EAAE,QAAQ,IAAI,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,QAAQ,IAAI,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,QAAQ,IAAI,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,QAAQ,IAAI,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,QAAQ,IAAI,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,QAAQ,IAAI,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,QAAQ,IAAI,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,QAAQ,IAAI,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,QAAQ,IAAI,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EAAE,QAAQ,IAAI,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AACrF,OAAO,EAAE,QAAQ,IAAI,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EAAE,QAAQ,IAAI,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,QAAQ,IAAI,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,QAAQ,IAAI,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EAAE,QAAQ,IAAI,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,QAAQ,IAAI,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,QAAQ,IAAI,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,QAAQ,IAAI,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,QAAQ,IAAI,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE3D,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;IAC3B,IAAI,EAAE,YAAY;IAClB,OAAO,EAAE,OAAO;CACjB,CAAC,CAAC;AAEH,sBAAsB,CAAC,MAAM,CAAC,CAAC;AAC/B,wBAAwB,CAAC,MAAM,CAAC,CAAC;AACjC,qBAAqB,CAAC,MAAM,CAAC,CAAC;AAC9B,kBAAkB,CAAC,MAAM,CAAC,CAAC;AAC3B,oBAAoB,CAAC,MAAM,CAAC,CAAC;AAC7B,mBAAmB,CAAC,MAAM,CAAC,CAAC;AAC5B,oBAAoB,CAAC,MAAM,CAAC,CAAC;AAC7B,kBAAkB,CAAC,MAAM,CAAC,CAAC;AAC3B,iBAAiB,CAAC,MAAM,CAAC,CAAC;AAC1B,iBAAiB,CAAC,MAAM,CAAC,CAAC;AAC1B,WAAW,CAAC,MAAM,CAAC,CAAC;AACpB,cAAc,CAAC,MAAM,CAAC,CAAC;AACvB,aAAa,CAAC,MAAM,CAAC,CAAC;AACtB,YAAY,CAAC,MAAM,CAAC,CAAC;AACrB,eAAe,CAAC,MAAM,CAAC,CAAC;AACxB,YAAY,CAAC,MAAM,CAAC,CAAC;AACrB,UAAU,CAAC,MAAM,CAAC,CAAC;AACnB,aAAa,CAAC,MAAM,CAAC,CAAC;AACtB,eAAe,CAAC,MAAM,CAAC,CAAC;AACxB,YAAY,CAAC,MAAM,CAAC,CAAC;AACrB,YAAY,CAAC,MAAM,CAAC,CAAC;AACrB,YAAY,CAAC,MAAM,CAAC,CAAC;AACrB,aAAa,CAAC,MAAM,CAAC,CAAC;AACtB,WAAW,CAAC,MAAM,CAAC,CAAC;AACpB,WAAW,CAAC,MAAM,CAAC,CAAC;AACpB,cAAc,CAAC,MAAM,CAAC,CAAC;AACvB,YAAY,CAAC,MAAM,CAAC,CAAC;AACrB,YAAY,CAAC,MAAM,CAAC,CAAC;AACrB,iBAAiB,CAAC,MAAM,CAAC,CAAC;AAC1B,mBAAmB,CAAC,MAAM,CAAC,CAAC;AAC5B,iBAAiB,CAAC,MAAM,CAAC,CAAC;AAC1B,mBAAmB,CAAC,MAAM,CAAC,CAAC;AAC5B,oBAAoB,CAAC,MAAM,CAAC,CAAC;AAC7B,sBAAsB,CAAC,MAAM,CAAC,CAAC;AAC/B,mBAAmB,CAAC,MAAM,CAAC,CAAC;AAC5B,mBAAmB,CAAC,MAAM,CAAC,CAAC;AAC5B,oBAAoB,CAAC,MAAM,CAAC,CAAC;AAC7B,gBAAgB,CAAC,MAAM,CAAC,CAAC;AACzB,qBAAqB,CAAC,MAAM,CAAC,CAAC;AAC9B,mBAAmB,CAAC,MAAM,CAAC,CAAC;AAC5B,qBAAqB,CAAC,MAAM,CAAC,CAAC;AAC9B,iBAAiB,CAAC,MAAM,CAAC,CAAC;AAC1B,sBAAsB,CAAC,MAAM,CAAC,CAAC;AAC/B,yBAAyB,CAAC,MAAM,CAAC,CAAC;AAClC,sBAAsB,CAAC,MAAM,CAAC,CAAC;AAC/B,oBAAoB,CAAC,MAAM,CAAC,CAAC;AAC7B,mBAAmB,CAAC,MAAM,CAAC,CAAC;AAC5B,sBAAsB,CAAC,MAAM,CAAC,CAAC;AAC/B,kBAAkB,CAAC,MAAM,CAAC,CAAC;AAC3B,UAAU,CAAC,MAAM,CAAC,CAAC;AACnB,aAAa,CAAC,MAAM,CAAC,CAAC;AACtB,WAAW,CAAC,MAAM,CAAC,CAAC;AACpB,cAAc,CAAC,MAAM,CAAC,CAAC;AACvB,cAAc,CAAC,MAAM,CAAC,CAAC;AACvB,YAAY,CAAC,MAAM,CAAC,CAAC;AAErB,KAAK,UAAU,IAAI;IACjB,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AAClC,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
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"}