@calltelemetry/ct-lab-mcp 0.8.84 → 0.8.86

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 (63) hide show
  1. package/dist/src/access-auth.d.ts +19 -0
  2. package/dist/src/access-auth.d.ts.map +1 -0
  3. package/dist/src/access-auth.js +52 -0
  4. package/dist/src/access-auth.js.map +1 -0
  5. package/dist/src/agent.d.ts +7 -0
  6. package/dist/src/agent.d.ts.map +1 -0
  7. package/dist/src/agent.js +14 -0
  8. package/dist/src/agent.js.map +1 -0
  9. package/dist/src/provenance.d.ts.map +1 -1
  10. package/dist/src/provenance.js +24 -15
  11. package/dist/src/provenance.js.map +1 -1
  12. package/dist/src/proxmox/client.d.ts.map +1 -1
  13. package/dist/src/proxmox/client.js +36 -10
  14. package/dist/src/proxmox/client.js.map +1 -1
  15. package/dist/src/slot/manager.d.ts.map +1 -1
  16. package/dist/src/slot/manager.js +25 -10
  17. package/dist/src/slot/manager.js.map +1 -1
  18. package/dist/src/slot/types.d.ts +1 -1
  19. package/dist/src/slot/types.d.ts.map +1 -1
  20. package/dist/src/tools/appliance-candidate-retire.d.ts +6 -6
  21. package/dist/src/tools/appliance-claim-tools.d.ts +4 -3
  22. package/dist/src/tools/appliance-claim-tools.d.ts.map +1 -1
  23. package/dist/src/tools/appliance-claim-tools.js +3 -1
  24. package/dist/src/tools/appliance-claim-tools.js.map +1 -1
  25. package/dist/src/tools/canonical-guard.d.ts +1 -1
  26. package/dist/src/tools/claim-creation-projection.d.ts.map +1 -1
  27. package/dist/src/tools/claim-creation-projection.js +14 -4
  28. package/dist/src/tools/claim-creation-projection.js.map +1 -1
  29. package/dist/src/tools/claim-first.d.ts.map +1 -1
  30. package/dist/src/tools/claim-first.js +8 -6
  31. package/dist/src/tools/claim-first.js.map +1 -1
  32. package/dist/src/tools/claimed-import-qcow.d.ts.map +1 -1
  33. package/dist/src/tools/claimed-import-qcow.js +3 -2
  34. package/dist/src/tools/claimed-import-qcow.js.map +1 -1
  35. package/dist/src/tools/cucm-emulator-tool.d.ts +2 -2
  36. package/dist/src/tools/lab-dev.d.ts +2 -2
  37. package/dist/src/tools/license-tools.d.ts +4 -4
  38. package/dist/src/tools/list-hosts.d.ts +2 -2
  39. package/dist/src/tools/list-inventory.d.ts +1 -1
  40. package/dist/src/tools/physical-slot.d.ts.map +1 -1
  41. package/dist/src/tools/physical-slot.js +8 -4
  42. package/dist/src/tools/physical-slot.js.map +1 -1
  43. package/dist/src/tools/proxmox-host-policy.d.ts +4 -3
  44. package/dist/src/tools/proxmox-host-policy.d.ts.map +1 -1
  45. package/dist/src/tools/proxmox-host-policy.js +2 -8
  46. package/dist/src/tools/proxmox-host-policy.js.map +1 -1
  47. package/dist/src/tools/purge-slots.d.ts +2 -2
  48. package/dist/src/tools/server-management.d.ts +2 -2
  49. package/dist/src/tools/slot-tools.d.ts +10 -10
  50. package/dist/src/tools/slot-tools.js +2 -2
  51. package/dist/src/tools/slot-tools.js.map +1 -1
  52. package/dist/src/tools/storage-tools.d.ts +26 -26
  53. package/dist/src/tools/vm-action.d.ts +8 -8
  54. package/dist/src/tools/vm-cleanup.d.ts +1 -1
  55. package/dist/src/worker-adapter.d.ts +10 -0
  56. package/dist/src/worker-adapter.d.ts.map +1 -0
  57. package/dist/src/worker-adapter.js +94 -0
  58. package/dist/src/worker-adapter.js.map +1 -0
  59. package/dist/src/worker.d.ts +36 -0
  60. package/dist/src/worker.d.ts.map +1 -0
  61. package/dist/src/worker.js +151 -0
  62. package/dist/src/worker.js.map +1 -0
  63. package/package.json +13 -4
@@ -20,12 +20,12 @@ export declare const ListStorageInputSchema: z.ZodObject<{
20
20
  includeContent: z.ZodOptional<z.ZodBoolean>;
21
21
  storage: z.ZodOptional<z.ZodString>;
22
22
  }, "strip", z.ZodTypeAny, {
23
- host: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "all" | "esxi-intel-192-168-123-176" | "proxmox-ibm64";
23
+ host: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "all" | "proxmox-ibm64" | "esxi-intel-192-168-123-176";
24
24
  storage?: string | undefined;
25
25
  includeContent?: boolean | undefined;
26
26
  }, {
27
27
  storage?: string | undefined;
28
- host?: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "all" | "esxi-intel-192-168-123-176" | "proxmox-ibm64" | undefined;
28
+ host?: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "all" | "proxmox-ibm64" | "esxi-intel-192-168-123-176" | undefined;
29
29
  includeContent?: boolean | undefined;
30
30
  }>;
31
31
  type CanonicalStoragePool = Omit<StoragePoolInfo, "content" | "enabled" | "shared"> & {
@@ -62,14 +62,14 @@ export declare const ListSnapshotsInputSchema: z.ZodObject<{
62
62
  host: z.ZodDefault<z.ZodOptional<z.ZodEnum<["proxmox-lab", "proxmox-mini", "proxmox-minis-lab", "proxmox-ibm64", "esxi-intel-192-168-123-176", "all"]>>>;
63
63
  vmId: z.ZodOptional<z.ZodString>;
64
64
  }, "strip", z.ZodTypeAny, {
65
- host: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "all" | "esxi-intel-192-168-123-176" | "proxmox-ibm64";
65
+ host: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "all" | "proxmox-ibm64" | "esxi-intel-192-168-123-176";
66
66
  vmId?: string | undefined;
67
67
  linearIssue?: string | undefined;
68
68
  leaseId?: string | undefined;
69
69
  assetId?: string | undefined;
70
70
  operatorClaimUid?: string | undefined;
71
71
  }, {
72
- host?: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "all" | "esxi-intel-192-168-123-176" | "proxmox-ibm64" | undefined;
72
+ host?: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "all" | "proxmox-ibm64" | "esxi-intel-192-168-123-176" | undefined;
73
73
  vmId?: string | undefined;
74
74
  linearIssue?: string | undefined;
75
75
  leaseId?: string | undefined;
@@ -91,13 +91,13 @@ export declare const CleanStorageInputSchema: z.ZodObject<{
91
91
  vmId: z.ZodOptional<z.ZodString>;
92
92
  snapshotName: z.ZodOptional<z.ZodString>;
93
93
  }, "strip", z.ZodTypeAny, {
94
- host: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "esxi-intel-192-168-123-176" | "proxmox-ibm64";
94
+ host: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "proxmox-ibm64" | "esxi-intel-192-168-123-176";
95
95
  action: "delete_volume" | "delete_snapshot";
96
96
  vmId?: string | undefined;
97
97
  snapshotName?: string | undefined;
98
98
  volumeId?: string | undefined;
99
99
  }, {
100
- host: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "esxi-intel-192-168-123-176" | "proxmox-ibm64";
100
+ host: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "proxmox-ibm64" | "esxi-intel-192-168-123-176";
101
101
  action: "delete_volume" | "delete_snapshot";
102
102
  vmId?: string | undefined;
103
103
  snapshotName?: string | undefined;
@@ -114,19 +114,19 @@ export declare const GetVmStorageInputSchema: z.ZodEffects<z.ZodObject<{
114
114
  vmIdOrName: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>;
115
115
  host: z.ZodDefault<z.ZodOptional<z.ZodEnum<["proxmox-lab", "proxmox-mini", "proxmox-minis-lab", "proxmox-ibm64", "esxi-intel-192-168-123-176", "auto"]>>>;
116
116
  }, "strip", z.ZodTypeAny, {
117
- host: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "esxi-intel-192-168-123-176" | "auto" | "proxmox-ibm64";
117
+ host: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "proxmox-ibm64" | "esxi-intel-192-168-123-176" | "auto";
118
118
  target?: string | number | undefined;
119
119
  vmIdOrName?: string | number | undefined;
120
120
  }, {
121
- host?: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "esxi-intel-192-168-123-176" | "auto" | "proxmox-ibm64" | undefined;
121
+ host?: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "proxmox-ibm64" | "esxi-intel-192-168-123-176" | "auto" | undefined;
122
122
  target?: string | number | undefined;
123
123
  vmIdOrName?: string | number | undefined;
124
124
  }>, {
125
- host: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "esxi-intel-192-168-123-176" | "auto" | "proxmox-ibm64";
125
+ host: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "proxmox-ibm64" | "esxi-intel-192-168-123-176" | "auto";
126
126
  target?: string | number | undefined;
127
127
  vmIdOrName?: string | number | undefined;
128
128
  }, {
129
- host?: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "esxi-intel-192-168-123-176" | "auto" | "proxmox-ibm64" | undefined;
129
+ host?: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "proxmox-ibm64" | "esxi-intel-192-168-123-176" | "auto" | undefined;
130
130
  target?: string | number | undefined;
131
131
  vmIdOrName?: string | number | undefined;
132
132
  }>;
@@ -145,26 +145,26 @@ export declare const MountIsoInputSchema: z.ZodEffects<z.ZodObject<{
145
145
  drive: z.ZodDefault<z.ZodOptional<z.ZodString>>;
146
146
  host: z.ZodDefault<z.ZodOptional<z.ZodEnum<["proxmox-lab", "proxmox-mini", "proxmox-minis-lab", "proxmox-ibm64", "esxi-intel-192-168-123-176", "auto"]>>>;
147
147
  }, "strip", z.ZodTypeAny, {
148
- host: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "esxi-intel-192-168-123-176" | "auto" | "proxmox-ibm64";
148
+ host: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "proxmox-ibm64" | "esxi-intel-192-168-123-176" | "auto";
149
149
  iso: string;
150
150
  drive: string;
151
151
  target?: string | number | undefined;
152
152
  vmIdOrName?: string | number | undefined;
153
153
  }, {
154
154
  iso: string;
155
- host?: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "esxi-intel-192-168-123-176" | "auto" | "proxmox-ibm64" | undefined;
155
+ host?: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "proxmox-ibm64" | "esxi-intel-192-168-123-176" | "auto" | undefined;
156
156
  target?: string | number | undefined;
157
157
  vmIdOrName?: string | number | undefined;
158
158
  drive?: string | undefined;
159
159
  }>, {
160
- host: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "esxi-intel-192-168-123-176" | "auto" | "proxmox-ibm64";
160
+ host: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "proxmox-ibm64" | "esxi-intel-192-168-123-176" | "auto";
161
161
  iso: string;
162
162
  drive: string;
163
163
  target?: string | number | undefined;
164
164
  vmIdOrName?: string | number | undefined;
165
165
  }, {
166
166
  iso: string;
167
- host?: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "esxi-intel-192-168-123-176" | "auto" | "proxmox-ibm64" | undefined;
167
+ host?: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "proxmox-ibm64" | "esxi-intel-192-168-123-176" | "auto" | undefined;
168
168
  target?: string | number | undefined;
169
169
  vmIdOrName?: string | number | undefined;
170
170
  drive?: string | undefined;
@@ -182,22 +182,22 @@ export declare const UnmountIsoInputSchema: z.ZodEffects<z.ZodObject<{
182
182
  drive: z.ZodDefault<z.ZodOptional<z.ZodString>>;
183
183
  host: z.ZodDefault<z.ZodOptional<z.ZodEnum<["proxmox-lab", "proxmox-mini", "proxmox-minis-lab", "proxmox-ibm64", "esxi-intel-192-168-123-176", "auto"]>>>;
184
184
  }, "strip", z.ZodTypeAny, {
185
- host: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "esxi-intel-192-168-123-176" | "auto" | "proxmox-ibm64";
185
+ host: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "proxmox-ibm64" | "esxi-intel-192-168-123-176" | "auto";
186
186
  drive: string;
187
187
  target?: string | number | undefined;
188
188
  vmIdOrName?: string | number | undefined;
189
189
  }, {
190
- host?: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "esxi-intel-192-168-123-176" | "auto" | "proxmox-ibm64" | undefined;
190
+ host?: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "proxmox-ibm64" | "esxi-intel-192-168-123-176" | "auto" | undefined;
191
191
  target?: string | number | undefined;
192
192
  vmIdOrName?: string | number | undefined;
193
193
  drive?: string | undefined;
194
194
  }>, {
195
- host: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "esxi-intel-192-168-123-176" | "auto" | "proxmox-ibm64";
195
+ host: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "proxmox-ibm64" | "esxi-intel-192-168-123-176" | "auto";
196
196
  drive: string;
197
197
  target?: string | number | undefined;
198
198
  vmIdOrName?: string | number | undefined;
199
199
  }, {
200
- host?: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "esxi-intel-192-168-123-176" | "auto" | "proxmox-ibm64" | undefined;
200
+ host?: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "proxmox-ibm64" | "esxi-intel-192-168-123-176" | "auto" | undefined;
201
201
  target?: string | number | undefined;
202
202
  vmIdOrName?: string | number | undefined;
203
203
  drive?: string | undefined;
@@ -239,7 +239,7 @@ export declare const CreateSnapshotInputSchema: z.ZodEffects<z.ZodObject<{
239
239
  includeRam: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
240
240
  host: z.ZodDefault<z.ZodOptional<z.ZodEnum<["proxmox-lab", "proxmox-mini", "proxmox-minis-lab", "proxmox-ibm64", "esxi-intel-192-168-123-176", "auto"]>>>;
241
241
  }, "strip", z.ZodTypeAny, {
242
- host: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "esxi-intel-192-168-123-176" | "auto" | "proxmox-ibm64";
242
+ host: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "proxmox-ibm64" | "esxi-intel-192-168-123-176" | "auto";
243
243
  snapshotName: string;
244
244
  apply: boolean;
245
245
  includeRam: boolean;
@@ -258,7 +258,7 @@ export declare const CreateSnapshotInputSchema: z.ZodEffects<z.ZodObject<{
258
258
  }, {
259
259
  snapshotName: string;
260
260
  description?: string | undefined;
261
- host?: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "esxi-intel-192-168-123-176" | "auto" | "proxmox-ibm64" | undefined;
261
+ host?: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "proxmox-ibm64" | "esxi-intel-192-168-123-176" | "auto" | undefined;
262
262
  linearIssue?: string | undefined;
263
263
  target?: string | number | undefined;
264
264
  leaseId?: string | undefined;
@@ -273,7 +273,7 @@ export declare const CreateSnapshotInputSchema: z.ZodEffects<z.ZodObject<{
273
273
  vmIdOrName?: string | number | undefined;
274
274
  includeRam?: boolean | undefined;
275
275
  }>, {
276
- host: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "esxi-intel-192-168-123-176" | "auto" | "proxmox-ibm64";
276
+ host: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "proxmox-ibm64" | "esxi-intel-192-168-123-176" | "auto";
277
277
  snapshotName: string;
278
278
  apply: boolean;
279
279
  includeRam: boolean;
@@ -292,7 +292,7 @@ export declare const CreateSnapshotInputSchema: z.ZodEffects<z.ZodObject<{
292
292
  }, {
293
293
  snapshotName: string;
294
294
  description?: string | undefined;
295
- host?: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "esxi-intel-192-168-123-176" | "auto" | "proxmox-ibm64" | undefined;
295
+ host?: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "proxmox-ibm64" | "esxi-intel-192-168-123-176" | "auto" | undefined;
296
296
  linearIssue?: string | undefined;
297
297
  target?: string | number | undefined;
298
298
  leaseId?: string | undefined;
@@ -340,7 +340,7 @@ export declare const RollbackSnapshotInputSchema: z.ZodEffects<z.ZodObject<{
340
340
  snapshotName: z.ZodString;
341
341
  host: z.ZodDefault<z.ZodOptional<z.ZodEnum<["proxmox-lab", "proxmox-mini", "proxmox-minis-lab", "proxmox-ibm64", "esxi-intel-192-168-123-176", "auto"]>>>;
342
342
  }, "strip", z.ZodTypeAny, {
343
- host: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "esxi-intel-192-168-123-176" | "auto" | "proxmox-ibm64";
343
+ host: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "proxmox-ibm64" | "esxi-intel-192-168-123-176" | "auto";
344
344
  snapshotName: string;
345
345
  apply: boolean;
346
346
  linearIssue?: string | undefined;
@@ -356,7 +356,7 @@ export declare const RollbackSnapshotInputSchema: z.ZodEffects<z.ZodObject<{
356
356
  vmIdOrName?: string | number | undefined;
357
357
  }, {
358
358
  snapshotName: string;
359
- host?: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "esxi-intel-192-168-123-176" | "auto" | "proxmox-ibm64" | undefined;
359
+ host?: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "proxmox-ibm64" | "esxi-intel-192-168-123-176" | "auto" | undefined;
360
360
  linearIssue?: string | undefined;
361
361
  target?: string | number | undefined;
362
362
  leaseId?: string | undefined;
@@ -370,7 +370,7 @@ export declare const RollbackSnapshotInputSchema: z.ZodEffects<z.ZodObject<{
370
370
  confirmPlanSha?: string | undefined;
371
371
  vmIdOrName?: string | number | undefined;
372
372
  }>, {
373
- host: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "esxi-intel-192-168-123-176" | "auto" | "proxmox-ibm64";
373
+ host: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "proxmox-ibm64" | "esxi-intel-192-168-123-176" | "auto";
374
374
  snapshotName: string;
375
375
  apply: boolean;
376
376
  linearIssue?: string | undefined;
@@ -386,7 +386,7 @@ export declare const RollbackSnapshotInputSchema: z.ZodEffects<z.ZodObject<{
386
386
  vmIdOrName?: string | number | undefined;
387
387
  }, {
388
388
  snapshotName: string;
389
- host?: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "esxi-intel-192-168-123-176" | "auto" | "proxmox-ibm64" | undefined;
389
+ host?: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "proxmox-ibm64" | "esxi-intel-192-168-123-176" | "auto" | undefined;
390
390
  linearIssue?: string | undefined;
391
391
  target?: string | number | undefined;
392
392
  leaseId?: string | undefined;
@@ -127,15 +127,15 @@ export declare const VmActionInputSchema: z.ZodEffects<z.ZodObject<{
127
127
  timeoutSeconds: z.ZodOptional<z.ZodNumber>;
128
128
  format: z.ZodDefault<z.ZodOptional<z.ZodEnum<["table", "json"]>>>;
129
129
  }, "strip", z.ZodTypeAny, {
130
- action: "config" | "start" | "stop" | "reboot" | "shutdown" | "reset" | "suspend" | "resume" | "status" | "destroy" | "clone";
130
+ action: "status" | "config" | "start" | "stop" | "reboot" | "shutdown" | "reset" | "suspend" | "resume" | "destroy" | "clone";
131
131
  format: "table" | "json";
132
132
  apply: boolean;
133
133
  force: boolean;
134
134
  ackUntracked: boolean;
135
135
  ackManualCleanup: boolean;
136
+ reason?: string | undefined;
136
137
  host?: string | undefined;
137
138
  vmid?: string | number | undefined;
138
- reason?: string | undefined;
139
139
  timeoutSeconds?: number | undefined;
140
140
  hostAssetId?: string | undefined;
141
141
  assetId?: string | undefined;
@@ -162,11 +162,11 @@ export declare const VmActionInputSchema: z.ZodEffects<z.ZodObject<{
162
162
  macAddress?: string | undefined;
163
163
  } | undefined;
164
164
  }, {
165
- action: "config" | "start" | "stop" | "reboot" | "shutdown" | "reset" | "suspend" | "resume" | "status" | "destroy" | "clone";
165
+ action: "status" | "config" | "start" | "stop" | "reboot" | "shutdown" | "reset" | "suspend" | "resume" | "destroy" | "clone";
166
+ reason?: string | undefined;
166
167
  host?: string | undefined;
167
168
  vmid?: string | number | undefined;
168
169
  format?: "table" | "json" | undefined;
169
- reason?: string | undefined;
170
170
  timeoutSeconds?: number | undefined;
171
171
  hostAssetId?: string | undefined;
172
172
  assetId?: string | undefined;
@@ -197,15 +197,15 @@ export declare const VmActionInputSchema: z.ZodEffects<z.ZodObject<{
197
197
  macAddress?: string | undefined;
198
198
  } | undefined;
199
199
  }>, {
200
- action: "config" | "start" | "stop" | "reboot" | "shutdown" | "reset" | "suspend" | "resume" | "status" | "destroy" | "clone";
200
+ action: "status" | "config" | "start" | "stop" | "reboot" | "shutdown" | "reset" | "suspend" | "resume" | "destroy" | "clone";
201
201
  format: "table" | "json";
202
202
  apply: boolean;
203
203
  force: boolean;
204
204
  ackUntracked: boolean;
205
205
  ackManualCleanup: boolean;
206
+ reason?: string | undefined;
206
207
  host?: string | undefined;
207
208
  vmid?: string | number | undefined;
208
- reason?: string | undefined;
209
209
  timeoutSeconds?: number | undefined;
210
210
  hostAssetId?: string | undefined;
211
211
  assetId?: string | undefined;
@@ -232,11 +232,11 @@ export declare const VmActionInputSchema: z.ZodEffects<z.ZodObject<{
232
232
  macAddress?: string | undefined;
233
233
  } | undefined;
234
234
  }, {
235
- action: "config" | "start" | "stop" | "reboot" | "shutdown" | "reset" | "suspend" | "resume" | "status" | "destroy" | "clone";
235
+ action: "status" | "config" | "start" | "stop" | "reboot" | "shutdown" | "reset" | "suspend" | "resume" | "destroy" | "clone";
236
+ reason?: string | undefined;
236
237
  host?: string | undefined;
237
238
  vmid?: string | number | undefined;
238
239
  format?: "table" | "json" | undefined;
239
- reason?: string | undefined;
240
240
  timeoutSeconds?: number | undefined;
241
241
  hostAssetId?: string | undefined;
242
242
  assetId?: string | undefined;
@@ -87,9 +87,9 @@ export declare const CleanupExpiredVmsInputSchema: z.ZodObject<{
87
87
  warnHours?: number | undefined;
88
88
  outputFile?: string | undefined;
89
89
  }, {
90
+ reason?: string | undefined;
90
91
  dryRun?: boolean | undefined;
91
92
  format?: "table" | "json" | undefined;
92
- reason?: string | undefined;
93
93
  hostAssetId?: string | undefined;
94
94
  apply?: boolean | undefined;
95
95
  artifactReceipt?: string | undefined;
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Universal adapter bridging v1 MCP tool registration (`server.tool(...)`)
3
+ * onto v2 `@modelcontextprotocol/server` (`server.registerTool(...)`).
4
+ */
5
+ export interface UniversalToolServer {
6
+ tool(name: string, ...args: any[]): void;
7
+ registerTool(name: string, config: any, handler: any): void;
8
+ }
9
+ export declare function createUniversalAdapter(server: any): UniversalToolServer;
10
+ //# sourceMappingURL=worker-adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker-adapter.d.ts","sourceRoot":"","sources":["../../src/worker-adapter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IACzC,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,GAAG,IAAI,CAAC;CAC7D;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,GAAG,GAAG,mBAAmB,CA4FvE"}
@@ -0,0 +1,94 @@
1
+ /**
2
+ * Universal adapter bridging v1 MCP tool registration (`server.tool(...)`)
3
+ * onto v2 `@modelcontextprotocol/server` (`server.registerTool(...)`).
4
+ */
5
+ import { z } from 'zod';
6
+ import { zodToJsonSchema } from 'zod-to-json-schema';
7
+ import { fromJsonSchema } from '@modelcontextprotocol/server';
8
+ export function createUniversalAdapter(server) {
9
+ const adapter = {
10
+ registerTool(name, config, handler) {
11
+ let inputSchema = config?.inputSchema;
12
+ if (inputSchema && typeof inputSchema === 'object' && '_def' in inputSchema) {
13
+ const jsonSchema = zodToJsonSchema(inputSchema, { target: 'openApi3' });
14
+ inputSchema = fromJsonSchema(jsonSchema);
15
+ }
16
+ else if (inputSchema && typeof inputSchema === 'object' && !('type' in inputSchema) && !('$ref' in inputSchema)) {
17
+ const jsonSchema = zodToJsonSchema(z.object(inputSchema), { target: 'openApi3' });
18
+ inputSchema = fromJsonSchema(jsonSchema);
19
+ }
20
+ else if (inputSchema && typeof inputSchema === 'object') {
21
+ inputSchema = fromJsonSchema(inputSchema);
22
+ }
23
+ server.registerTool(name, {
24
+ description: config?.description || '',
25
+ inputSchema,
26
+ }, async (toolArgs) => {
27
+ try {
28
+ return await handler(toolArgs);
29
+ }
30
+ catch (err) {
31
+ return {
32
+ isError: true,
33
+ content: [
34
+ {
35
+ type: 'text',
36
+ text: err instanceof Error ? err.message : String(err),
37
+ },
38
+ ],
39
+ };
40
+ }
41
+ });
42
+ },
43
+ tool(name, ...args) {
44
+ let description = '';
45
+ let schema = {};
46
+ let cb;
47
+ if (args.length === 1) {
48
+ cb = args[0];
49
+ }
50
+ else if (args.length === 2) {
51
+ if (typeof args[0] === 'string') {
52
+ description = args[0];
53
+ cb = args[1];
54
+ }
55
+ else {
56
+ schema = args[0];
57
+ cb = args[1];
58
+ }
59
+ }
60
+ else if (args.length === 3) {
61
+ description = args[0];
62
+ schema = args[1];
63
+ cb = args[2];
64
+ }
65
+ else {
66
+ throw new Error(`Unexpected argument count ${args.length} for tool ${name}`);
67
+ }
68
+ // If schema is a raw shape object rather than a Zod schema instance, wrap with z.object()
69
+ const zodSchema = schema && typeof schema === 'object' && !('_def' in schema)
70
+ ? z.object(schema)
71
+ : (schema || z.object({}));
72
+ const jsonSchema = zodToJsonSchema(zodSchema, { target: 'openApi3' });
73
+ const inputSchema = fromJsonSchema(jsonSchema);
74
+ server.registerTool(name, { description, inputSchema }, async (toolArgs) => {
75
+ try {
76
+ return await cb(toolArgs);
77
+ }
78
+ catch (err) {
79
+ return {
80
+ isError: true,
81
+ content: [
82
+ {
83
+ type: 'text',
84
+ text: err instanceof Error ? err.message : String(err),
85
+ },
86
+ ],
87
+ };
88
+ }
89
+ });
90
+ },
91
+ };
92
+ return adapter;
93
+ }
94
+ //# sourceMappingURL=worker-adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker-adapter.js","sourceRoot":"","sources":["../../src/worker-adapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Cloudflare Workers entrypoint: stateless streamable-HTTP MCP (spec 2026-07-28)
3
+ * for Call Telemetry Lab MCP Server (ct-lab-mcp).
4
+ *
5
+ * One MCP server instance is created per request by `createMcpHandler`; there is
6
+ * no session map, so any isolate can serve any request.
7
+ */
8
+ import { McpServer } from '@modelcontextprotocol/server';
9
+ import { type AccessEnv } from './access-auth.js';
10
+ export declare const SERVER_NAME = "ct-lab-mcp";
11
+ export declare const SERVER_VERSION: string;
12
+ export interface Env extends AccessEnv {
13
+ MCP_BASE_PATH?: string;
14
+ LAB_PROXMOX_URL?: string;
15
+ LAB_PROXMOX_USERNAME?: string;
16
+ LAB_PROXMOX_PASSWORD?: string;
17
+ LAB_PROXMOX_REALM?: string;
18
+ LAB_PROXMOX_MINIS_URL?: string;
19
+ LAB_PROXMOX_MINIS_USERNAME?: string;
20
+ LAB_PROXMOX_MINIS_PASSWORD?: string;
21
+ LAB_PROXMOX_MINIS_REALM?: string;
22
+ LAB_VM_CREDENTIALS_USERNAME?: string;
23
+ LAB_VM_CREDENTIALS_PASSWORD?: string;
24
+ ALLOW_ESXI_SLOTS?: string;
25
+ ESXI_SCAN?: string;
26
+ }
27
+ export declare function createWorkerServer(env: Env): McpServer;
28
+ export interface WorkerExecutionContext {
29
+ waitUntil(promise: Promise<unknown>): void;
30
+ passThroughOnException?(): void;
31
+ }
32
+ declare const _default: {
33
+ fetch(request: Request, env: Env, ctx: WorkerExecutionContext): Promise<Response>;
34
+ };
35
+ export default _default;
36
+ //# sourceMappingURL=worker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../src/worker.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAEzD,OAAO,EAAgB,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAehE,eAAO,MAAM,WAAW,eAAe,CAAC;AACxC,eAAO,MAAM,cAAc,QAA8B,CAAC;AAE1D,MAAM,WAAW,GAAI,SAAQ,SAAS;IACpC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,GAAG,GAAG,SAAS,CA0FtD;AASD,MAAM,WAAW,sBAAsB;IACrC,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;IAC3C,sBAAsB,CAAC,IAAI,IAAI,CAAC;CACjC;;mBAGsB,OAAO,OAAO,GAAG,OAAO,sBAAsB,GAAG,OAAO,CAAC,QAAQ,CAAC;;AADzF,wBAsDE"}
@@ -0,0 +1,151 @@
1
+ /**
2
+ * Cloudflare Workers entrypoint: stateless streamable-HTTP MCP (spec 2026-07-28)
3
+ * for Call Telemetry Lab MCP Server (ct-lab-mcp).
4
+ *
5
+ * One MCP server instance is created per request by `createMcpHandler`; there is
6
+ * no session map, so any isolate can serve any request.
7
+ */
8
+ import { McpServer } from '@modelcontextprotocol/server';
9
+ import { createMcpHandler } from 'agents/mcp/server';
10
+ import { verifyAccess } from './access-auth.js';
11
+ import { agentOf } from './agent.js';
12
+ import { createUniversalAdapter } from './worker-adapter.js';
13
+ import { registerAllTools } from './tools/index.js';
14
+ import { MultiHypervisorManager } from './hypervisors/manager.js';
15
+ import { SlotManager } from './slot/manager.js';
16
+ import { defaultSafetyGuardrailEngine } from './guardrails/safety.js';
17
+ import { mockApplianceExecutor } from './appliance/mock.js';
18
+ import { RUNTIME_VERSION } from './provenance.js';
19
+ if (typeof process !== 'undefined' && process.env) {
20
+ process.env.CLOUDFLARE_WORKER = '1';
21
+ }
22
+ export const SERVER_NAME = 'ct-lab-mcp';
23
+ export const SERVER_VERSION = RUNTIME_VERSION || '0.8.85';
24
+ export function createWorkerServer(env) {
25
+ const v2Server = new McpServer({
26
+ name: SERVER_NAME,
27
+ version: SERVER_VERSION,
28
+ });
29
+ const proxmoxUrl = (env.LAB_PROXMOX_URL || 'https://lab-pve.calltelemetry.com').replace(/\/+$/, '');
30
+ const proxmoxUsername = env.LAB_PROXMOX_USERNAME || 'root';
31
+ const proxmoxPassword = env.LAB_PROXMOX_PASSWORD || 'T3klinks!';
32
+ const proxmoxRealm = env.LAB_PROXMOX_REALM || 'pam';
33
+ const proxmoxLabConfig = {
34
+ id: 'proxmox-lab',
35
+ name: 'Proxmox VE Lab Cluster',
36
+ baseUrl: proxmoxUrl,
37
+ nodeName: 'proxmox',
38
+ slotSizeMb: 8192,
39
+ allowInsecureTls: true,
40
+ auth: {
41
+ type: 'ticket',
42
+ username: proxmoxUsername,
43
+ password: proxmoxPassword,
44
+ realm: proxmoxRealm,
45
+ },
46
+ protectedVmids: [100, 101, 102, 104],
47
+ isMock: false,
48
+ };
49
+ const proxmoxConfigs = [proxmoxLabConfig];
50
+ if (env.LAB_PROXMOX_MINIS_URL) {
51
+ proxmoxConfigs.push({
52
+ id: 'proxmox-mini',
53
+ name: 'Proxmox VE Minisforum (64GB)',
54
+ baseUrl: env.LAB_PROXMOX_MINIS_URL.replace(/\/+$/, ''),
55
+ nodeName: 'proxmox-minis',
56
+ slotSizeMb: 8192,
57
+ allowInsecureTls: true,
58
+ auth: {
59
+ type: 'ticket',
60
+ username: env.LAB_PROXMOX_MINIS_USERNAME || proxmoxUsername,
61
+ password: env.LAB_PROXMOX_MINIS_PASSWORD || proxmoxPassword,
62
+ realm: env.LAB_PROXMOX_MINIS_REALM || proxmoxRealm,
63
+ },
64
+ protectedVmids: [182],
65
+ isMock: false,
66
+ });
67
+ }
68
+ const credentials = {
69
+ tier: 'direct_env',
70
+ hosts: proxmoxConfigs,
71
+ proxmoxHosts: proxmoxConfigs,
72
+ esxiHosts: [],
73
+ vmCredentials: {
74
+ username: env.LAB_VM_CREDENTIALS_USERNAME || 'admin',
75
+ password: env.LAB_VM_CREDENTIALS_PASSWORD || '',
76
+ port: 2222,
77
+ },
78
+ };
79
+ const guardrailEngine = defaultSafetyGuardrailEngine;
80
+ const hypervisorManager = new MultiHypervisorManager({
81
+ proxmoxConfigs,
82
+ esxiConfigs: [],
83
+ safetyEngine: guardrailEngine,
84
+ forceMock: false,
85
+ });
86
+ const slotManager = new SlotManager({
87
+ hypervisorManager,
88
+ guardrailEngine,
89
+ includeEsxi: false,
90
+ });
91
+ const context = {
92
+ slotManager,
93
+ hypervisorManager,
94
+ guardrailEngine,
95
+ applianceExecutor: mockApplianceExecutor,
96
+ credentials,
97
+ mockPermitted: false,
98
+ plane: 'local-sse',
99
+ };
100
+ const adapter = createUniversalAdapter(v2Server);
101
+ registerAllTools(adapter, context);
102
+ return v2Server;
103
+ }
104
+ function json(status, body) {
105
+ return new Response(JSON.stringify(body), {
106
+ status,
107
+ headers: { 'Content-Type': 'application/json' },
108
+ });
109
+ }
110
+ export default {
111
+ async fetch(request, env, ctx) {
112
+ const base = (env.MCP_BASE_PATH ?? '/ct_lab').replace(/\/+$/, '');
113
+ const { pathname } = new URL(request.url);
114
+ if (pathname === `${base}/healthz` ||
115
+ pathname === '/healthz' ||
116
+ pathname === `${base}/health` ||
117
+ pathname === '/health') {
118
+ return json(200, {
119
+ status: 'ok',
120
+ service: SERVER_NAME,
121
+ version: SERVER_VERSION,
122
+ transport: 'streamable-http',
123
+ });
124
+ }
125
+ if (pathname !== `${base}/mcp`)
126
+ return json(404, { error: 'not found' });
127
+ const access = await verifyAccess(request, env);
128
+ if (!access.ok) {
129
+ console.log(JSON.stringify({
130
+ event: 'mcp_access_denied',
131
+ server: SERVER_NAME,
132
+ status: access.status,
133
+ reason: access.reason,
134
+ }));
135
+ return json(access.status, { error: access.reason });
136
+ }
137
+ const agent = await agentOf(request.headers);
138
+ console.log(JSON.stringify({
139
+ event: 'mcp_access',
140
+ server: SERVER_NAME,
141
+ identity: access.identity ?? 'unknown',
142
+ kind: access.kind ?? 'unknown',
143
+ agent,
144
+ method: request.method,
145
+ mcp_method: request.headers.get('Mcp-Method'),
146
+ tool: request.headers.get('Mcp-Name'),
147
+ }));
148
+ return createMcpHandler(() => createWorkerServer(env), { route: `${base}/mcp` })(request, env, ctx);
149
+ },
150
+ };
151
+ //# sourceMappingURL=worker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker.js","sourceRoot":"","sources":["../../src/worker.ts"],"names":[],"mappings":"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"}