@calltelemetry/ct-lab-mcp 0.8.76 → 0.8.77
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.
|
@@ -25,5 +25,9 @@ export declare const CredentialStatusInputSchema: z.ZodObject<{
|
|
|
25
25
|
}>;
|
|
26
26
|
export type CredentialStatusInput = z.infer<typeof CredentialStatusInputSchema>;
|
|
27
27
|
export type CredentialStatusRawInput = z.input<typeof CredentialStatusInputSchema>;
|
|
28
|
+
/** Bounded per-host probe: a dead host costs this much, not its transport timeout. */
|
|
29
|
+
export declare function probeTimeoutMs(env?: NodeJS.ProcessEnv): number;
|
|
30
|
+
/** ESXi is retired from the lab; ESXI_SCAN=off (the operator's switch) skips it. */
|
|
31
|
+
export declare function esxiRetired(env?: NodeJS.ProcessEnv): boolean;
|
|
28
32
|
export declare function handleCredentialStatus(rawArgs: CredentialStatusRawInput | undefined, context: ToolContext): Promise<CallToolResult>;
|
|
29
33
|
//# sourceMappingURL=credential-status.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credential-status.d.ts","sourceRoot":"","sources":["../../../src/tools/credential-status.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAG9C,eAAO,MAAM,0BAA0B;;CAMtC,CAAC;AAEF,eAAO,MAAM,2BAA2B;;;;;;EAAuC,CAAC;AAChF,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAChF,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"credential-status.d.ts","sourceRoot":"","sources":["../../../src/tools/credential-status.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAG9C,eAAO,MAAM,0BAA0B;;CAMtC,CAAC;AAEF,eAAO,MAAM,2BAA2B;;;;;;EAAuC,CAAC;AAChF,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAChF,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAInF,sFAAsF;AACtF,wBAAgB,cAAc,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,CAI3E;AAED,oFAAoF;AACpF,wBAAgB,WAAW,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,OAAO,CAEzE;AAYD,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,wBAAwB,YAAK,EACtC,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,cAAc,CAAC,CA6HzB"}
|
|
@@ -20,6 +20,28 @@ export const CredentialStatusInputShape = {
|
|
|
20
20
|
.describe("Whether to perform a live getHostCapacity() round-trip against each registered driver (default: true)."),
|
|
21
21
|
};
|
|
22
22
|
export const CredentialStatusInputSchema = z.object(CredentialStatusInputShape);
|
|
23
|
+
const DEFAULT_PROBE_TIMEOUT_MS = 5_000;
|
|
24
|
+
/** Bounded per-host probe: a dead host costs this much, not its transport timeout. */
|
|
25
|
+
export function probeTimeoutMs(env = process.env) {
|
|
26
|
+
const parsed = Number(env.CT_LAB_CREDENTIAL_PROBE_TIMEOUT_MS);
|
|
27
|
+
if (!Number.isFinite(parsed) || parsed <= 0)
|
|
28
|
+
return DEFAULT_PROBE_TIMEOUT_MS;
|
|
29
|
+
return Math.min(Math.max(Math.floor(parsed), 250), 30_000);
|
|
30
|
+
}
|
|
31
|
+
/** ESXi is retired from the lab; ESXI_SCAN=off (the operator's switch) skips it. */
|
|
32
|
+
export function esxiRetired(env = process.env) {
|
|
33
|
+
return ["off", "false", "0", "retired"].includes(String(env.ESXI_SCAN ?? "").trim().toLowerCase());
|
|
34
|
+
}
|
|
35
|
+
function withTimeout(work, ms) {
|
|
36
|
+
let timer;
|
|
37
|
+
const timeout = new Promise((_, reject) => {
|
|
38
|
+
timer = setTimeout(() => reject(new Error(`probe timed out after ${ms}ms`)), ms);
|
|
39
|
+
});
|
|
40
|
+
return Promise.race([work, timeout]).finally(() => {
|
|
41
|
+
if (timer)
|
|
42
|
+
clearTimeout(timer);
|
|
43
|
+
});
|
|
44
|
+
}
|
|
23
45
|
export async function handleCredentialStatus(rawArgs = {}, context) {
|
|
24
46
|
const args = CredentialStatusInputSchema.parse(rawArgs);
|
|
25
47
|
// A canonical bridge is a separate target-bound authority. Its presence
|
|
@@ -47,17 +69,24 @@ export async function handleCredentialStatus(rawArgs = {}, context) {
|
|
|
47
69
|
};
|
|
48
70
|
const hostReports = [];
|
|
49
71
|
const drivers = context.hypervisorManager?.getAllDrivers() ?? [];
|
|
50
|
-
|
|
72
|
+
const timeoutMs = probeTimeoutMs();
|
|
73
|
+
const retiredEsxi = esxiRetired();
|
|
74
|
+
// Probe hosts concurrently: the check costs the slowest host (bounded), not the sum.
|
|
75
|
+
const reports = await Promise.all(drivers.map(async (driver) => {
|
|
51
76
|
const report = {
|
|
52
77
|
hostName: driver.hostName,
|
|
53
78
|
hypervisor: driver.hypervisorType,
|
|
54
79
|
isMock: driver.isMock,
|
|
55
80
|
reachable: "not_probed",
|
|
56
81
|
};
|
|
82
|
+
if (retiredEsxi && driver.hypervisorType === "esxi") {
|
|
83
|
+
report.reachable = "retired";
|
|
84
|
+
return report;
|
|
85
|
+
}
|
|
57
86
|
if (args.probe) {
|
|
58
87
|
const start = Date.now();
|
|
59
88
|
try {
|
|
60
|
-
const capacity = await driver.getHostCapacity();
|
|
89
|
+
const capacity = await withTimeout(driver.getHostCapacity(), timeoutMs);
|
|
61
90
|
report.reachable = capacity.status === "online";
|
|
62
91
|
report.endpoint = capacity.endpoint;
|
|
63
92
|
report.elapsedMs = Date.now() - start;
|
|
@@ -68,15 +97,16 @@ export async function handleCredentialStatus(rawArgs = {}, context) {
|
|
|
68
97
|
report.elapsedMs = Date.now() - start;
|
|
69
98
|
}
|
|
70
99
|
}
|
|
71
|
-
|
|
72
|
-
}
|
|
100
|
+
return report;
|
|
101
|
+
}));
|
|
102
|
+
hostReports.push(...reports);
|
|
73
103
|
const applianceExecutorIsMock = context.credentials?.tier === "mock_fallback" || mockPermitted;
|
|
74
104
|
const anyMockHost = hostReports.some((h) => h.isMock);
|
|
75
105
|
const allRealAndReachable = credentialAvailable &&
|
|
76
106
|
!anyMockHost &&
|
|
77
107
|
!applianceExecutorIsMock &&
|
|
78
|
-
hostReports.
|
|
79
|
-
hostReports.every((h) => h.reachable === true);
|
|
108
|
+
hostReports.some((h) => h.reachable !== "retired") &&
|
|
109
|
+
hostReports.filter((h) => h.reachable !== "retired").every((h) => h.reachable === true);
|
|
80
110
|
let md = `### 🩺 ct-lab-mcp Credential & Transport Self-Check\n\n`;
|
|
81
111
|
md += `**Credentials available:** ${credentialAvailable ? "🟢 true" : "🔴 false"} \n`;
|
|
82
112
|
md += `**Resolved credential tier:** \`${tier}\` \n`;
|
|
@@ -87,7 +117,7 @@ export async function handleCredentialStatus(rawArgs = {}, context) {
|
|
|
87
117
|
md += "| Host | Hypervisor | Mock | Reachable | Endpoint | Elapsed (ms) |\n";
|
|
88
118
|
md += "|---|---|---|---|---|---|\n";
|
|
89
119
|
for (const h of hostReports) {
|
|
90
|
-
md += `| \`${h.hostName}\` | ${h.hypervisor} | ${h.isMock ? "⚠️ true" : "false"} | ${h.reachable === "not_probed" ? "not probed" : h.reachable ? "🟢 yes" : "🔴 no" + (h.error ? ` (${h.error})` : "")} | ${h.endpoint || "-"} | ${h.elapsedMs ?? "-"} |\n`;
|
|
120
|
+
md += `| \`${h.hostName}\` | ${h.hypervisor} | ${h.isMock ? "⚠️ true" : "false"} | ${h.reachable === "not_probed" ? "not probed" : h.reachable === "retired" ? "retired (not probed)" : h.reachable ? "🟢 yes" : "🔴 no" + (h.error ? ` (${h.error})` : "")} | ${h.endpoint || "-"} | ${h.elapsedMs ?? "-"} |\n`;
|
|
91
121
|
}
|
|
92
122
|
if (drivers.length === 0) {
|
|
93
123
|
md += "\n_No hypervisor drivers are registered on this server instance._\n";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credential-status.js","sourceRoot":"","sources":["../../../src/tools/credential-status.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,+BAA+B,EAAE,MAAM,sBAAsB,CAAC;AAEvE,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,KAAK,EAAE,CAAC;SACL,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CAAC,wGAAwG,CAAC;CACtH,CAAC;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC,0BAA0B,CAAC,CAAC;AAIhF,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,UAAoC,EAAE,EACtC,OAAoB;IAEpB,MAAM,IAAI,GAAG,2BAA2B,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAExD,yEAAyE;IACzE,0EAA0E;IAC1E,MAAM,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC;IACrF,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,EAAE,IAAI,IAAI,aAAa,CAAC;IACxD,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IACrD,MAAM,yBAAyB,GAAG,+BAA+B,CAAC,OAAO,CAAC,CAAC;IAC3E,MAAM,sBAAsB,GAAG,OAAO,CAAC,eAAe;QACpD,CAAC,CAAC;YACE,KAAK,EAAE,oBAA6B;YACpC,MAAM,EAAE,aAAsB;YAC9B,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,MAAM;YACtC,OAAO,EAAE,OAAO,CAAC,eAAe,CAAC,OAAO;SACzC;QACH,CAAC,CAAC,OAAO,CAAC,WAAW;YACnB,CAAC,CAAC;gBACE,KAAK,EAAE,oBAA6B;gBACpC,MAAM,EAAE,UAAmB;gBAC3B,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC,IAAI;aAC/B;YACH,CAAC,CAAC;gBACE,KAAK,EAAE,oBAA6B;gBACpC,MAAM,EAAE,cAAuB;aAChC,CAAC;IAER,MAAM,WAAW,GAQZ,EAAE,CAAC;IAER,MAAM,OAAO,GAAG,OAAO,CAAC,iBAAiB,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IACjE,
|
|
1
|
+
{"version":3,"file":"credential-status.js","sourceRoot":"","sources":["../../../src/tools/credential-status.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@calltelemetry/ct-lab-mcp",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.77",
|
|
4
4
|
"description": "Expanded Model Context Protocol (MCP) server for Call Telemetry lab, fleet, and appliance management across Proxmox VE and VMware ESXi.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/src/index.js",
|