@minicor/mcp-server 2.0.8 → 3.1.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 (103) hide show
  1. package/README.md +29 -2
  2. package/dist/__tests__/state.test.d.ts +2 -0
  3. package/dist/__tests__/state.test.d.ts.map +1 -0
  4. package/dist/__tests__/state.test.js +116 -0
  5. package/dist/__tests__/state.test.js.map +1 -0
  6. package/dist/__tests__/vm-service-client.test.d.ts +2 -0
  7. package/dist/__tests__/vm-service-client.test.d.ts.map +1 -0
  8. package/dist/__tests__/vm-service-client.test.js +80 -0
  9. package/dist/__tests__/vm-service-client.test.js.map +1 -0
  10. package/dist/agent-service-client.d.ts +34 -0
  11. package/dist/agent-service-client.d.ts.map +1 -0
  12. package/dist/agent-service-client.js +64 -0
  13. package/dist/agent-service-client.js.map +1 -0
  14. package/dist/helpers.d.ts +1 -1
  15. package/dist/helpers.d.ts.map +1 -1
  16. package/dist/helpers.js +1 -1
  17. package/dist/helpers.js.map +1 -1
  18. package/dist/index.d.ts +5 -1
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js +111 -44
  21. package/dist/index.js.map +1 -1
  22. package/dist/lib.d.ts +10 -2
  23. package/dist/lib.d.ts.map +1 -1
  24. package/dist/lib.js +55 -6
  25. package/dist/lib.js.map +1 -1
  26. package/dist/prompts/build-rpa.d.ts.map +1 -1
  27. package/dist/prompts/build-rpa.js +39 -5
  28. package/dist/prompts/build-rpa.js.map +1 -1
  29. package/dist/prompts/debug-execution.d.ts.map +1 -1
  30. package/dist/prompts/debug-execution.js +5 -3
  31. package/dist/prompts/debug-execution.js.map +1 -1
  32. package/dist/setup.js +86 -32
  33. package/dist/setup.js.map +1 -1
  34. package/dist/state.d.ts +14 -0
  35. package/dist/state.d.ts.map +1 -1
  36. package/dist/state.js +20 -0
  37. package/dist/state.js.map +1 -1
  38. package/dist/tools/{stats.d.ts → agents.d.ts} +1 -1
  39. package/dist/tools/agents.d.ts.map +1 -0
  40. package/dist/tools/agents.js +92 -0
  41. package/dist/tools/agents.js.map +1 -0
  42. package/dist/tools/config-stores.d.ts.map +1 -1
  43. package/dist/tools/config-stores.js +59 -11
  44. package/dist/tools/config-stores.js.map +1 -1
  45. package/dist/tools/core.d.ts.map +1 -1
  46. package/dist/tools/core.js +141 -33
  47. package/dist/tools/core.js.map +1 -1
  48. package/dist/tools/issues.d.ts.map +1 -1
  49. package/dist/tools/issues.js +51 -16
  50. package/dist/tools/issues.js.map +1 -1
  51. package/dist/tools/sync-tools.d.ts.map +1 -1
  52. package/dist/tools/sync-tools.js +29 -12
  53. package/dist/tools/sync-tools.js.map +1 -1
  54. package/dist/tools/tfa.d.ts.map +1 -1
  55. package/dist/tools/tfa.js +42 -22
  56. package/dist/tools/tfa.js.map +1 -1
  57. package/dist/tools/vm-rpa.d.ts.map +1 -1
  58. package/dist/tools/vm-rpa.js +15 -7
  59. package/dist/tools/vm-rpa.js.map +1 -1
  60. package/dist/tools/vm.d.ts.map +1 -1
  61. package/dist/tools/vm.js +380 -12
  62. package/dist/tools/vm.js.map +1 -1
  63. package/dist/tools/workflow-ops.d.ts.map +1 -1
  64. package/dist/tools/workflow-ops.js +46 -30
  65. package/dist/tools/workflow-ops.js.map +1 -1
  66. package/dist/types.d.ts +8 -2
  67. package/dist/types.d.ts.map +1 -1
  68. package/dist/vm-service-client.d.ts +24 -0
  69. package/dist/vm-service-client.d.ts.map +1 -0
  70. package/dist/vm-service-client.js +23 -0
  71. package/dist/vm-service-client.js.map +1 -0
  72. package/package.json +2 -2
  73. package/dist/browser-client.d.ts +0 -42
  74. package/dist/browser-client.d.ts.map +0 -1
  75. package/dist/browser-client.js +0 -66
  76. package/dist/browser-client.js.map +0 -1
  77. package/dist/prompts/build-browser-rpa.d.ts +0 -3
  78. package/dist/prompts/build-browser-rpa.d.ts.map +0 -1
  79. package/dist/prompts/build-browser-rpa.js +0 -90
  80. package/dist/prompts/build-browser-rpa.js.map +0 -1
  81. package/dist/prompts/build-nerve-rpa.d.ts +0 -3
  82. package/dist/prompts/build-nerve-rpa.d.ts.map +0 -1
  83. package/dist/prompts/build-nerve-rpa.js +0 -148
  84. package/dist/prompts/build-nerve-rpa.js.map +0 -1
  85. package/dist/services.d.ts +0 -61
  86. package/dist/services.d.ts.map +0 -1
  87. package/dist/services.js +0 -249
  88. package/dist/services.js.map +0 -1
  89. package/dist/tools/browser.d.ts +0 -3
  90. package/dist/tools/browser.d.ts.map +0 -1
  91. package/dist/tools/browser.js +0 -254
  92. package/dist/tools/browser.js.map +0 -1
  93. package/dist/tools/cron.d.ts +0 -3
  94. package/dist/tools/cron.d.ts.map +0 -1
  95. package/dist/tools/cron.js +0 -168
  96. package/dist/tools/cron.js.map +0 -1
  97. package/dist/tools/elasticsearch.d.ts +0 -3
  98. package/dist/tools/elasticsearch.d.ts.map +0 -1
  99. package/dist/tools/elasticsearch.js +0 -248
  100. package/dist/tools/elasticsearch.js.map +0 -1
  101. package/dist/tools/stats.d.ts.map +0 -1
  102. package/dist/tools/stats.js +0 -18
  103. package/dist/tools/stats.js.map +0 -1
package/dist/tools/vm.js CHANGED
@@ -1,8 +1,14 @@
1
1
  import { z } from "zod";
2
2
  import { ok, text, json, NOT_CONNECTED_VM } from "../helpers.js";
3
- import { ldsConnection, setLdsConnection, ldsAuth } from "../state.js";
3
+ import { ldsConnection, setLdsConnection, ldsAuth, setVmCache, getCachedVm, getWorkspaceRegion } from "../state.js";
4
4
  import * as lds from "../lds-client.js";
5
+ import * as vmService from "../vm-service-client.js";
5
6
  import { generateInspectScript } from "../inspect-scripts.js";
7
+ import { apiBaseToRegion } from "../paths.js";
8
+ const regionParam = z
9
+ .enum(["us", "ca"])
10
+ .optional()
11
+ .describe("Region (us or ca). Auto-detected from workspace if omitted.");
6
12
  function requireVM() {
7
13
  if (!ldsConnection)
8
14
  return text(NOT_CONNECTED_VM);
@@ -10,19 +16,135 @@ function requireVM() {
10
16
  }
11
17
  export function register(deps) {
12
18
  const { server } = deps;
19
+ // ── VM discovery ─────────────────────────────────────────────
20
+ server.tool("vm_list", "List available VMs for a workspace. Returns VM details including connection info. Use vm_connect with a vmId from the results to connect.", {
21
+ workspaceId: z.number().describe("Workspace ID"),
22
+ region: z.string().optional().describe("Filter by region (e.g. 'us', 'ca')"),
23
+ channelId: z.string().optional().describe("Filter by channel ID"),
24
+ }, async ({ workspaceId, region, channelId }) => {
25
+ try {
26
+ const wsRegion = (region === "us" || region === "ca" ? region : undefined) ?? getWorkspaceRegion(workspaceId);
27
+ const keys = await deps.client(wsRegion).listApiKeys(workspaceId);
28
+ const apiKeyList = Array.isArray(keys) ? keys : keys?.api_keys ?? keys?.data ?? [];
29
+ if (!apiKeyList.length) {
30
+ return text(`No API keys found for workspace ${workspaceId}. Create one in the Laminar dashboard.`);
31
+ }
32
+ const workspaceApiKey = apiKeyList[0].apiKey ?? apiKeyList[0].api_key ?? apiKeyList[0].key ?? apiKeyList[0];
33
+ const effectiveRegion = region ?? apiBaseToRegion(deps.getApiBase(wsRegion));
34
+ const vms = await vmService.listVms(deps.getVmServiceBase(), typeof workspaceApiKey === "string" ? workspaceApiKey : String(workspaceApiKey), { region: effectiveRegion, channelId });
35
+ setVmCache({ vms, fetchedAt: Date.now() });
36
+ return ok({
37
+ count: vms.length,
38
+ vms: vms.map((vm) => ({
39
+ id: vm.id,
40
+ name: vm.vm_name,
41
+ status: vm.deployment_status ?? vm.status,
42
+ agent_status: vm.agent_status,
43
+ tunnel_url: vm.tunnel_url,
44
+ description: vm.description,
45
+ })),
46
+ });
47
+ }
48
+ catch (e) {
49
+ return text(`Failed to list VMs: ${e.message}`);
50
+ }
51
+ });
52
+ // ── VM deployment ──────────────────────────────────────────
53
+ server.tool("deploy_vm", "Provision a new Windows VM on Azure. Uses smart region selection — pass 'us' or 'canada' " +
54
+ "and the service finds a region with available quota. Deployment is async (~5-10 min). " +
55
+ "Poll vm_list to check when deployment_status becomes 'deployed'.", {
56
+ workspaceId: z.number().describe("Workspace ID"),
57
+ location: z.enum(["us", "canada", "europe"]).default("us").describe("Geography — auto-selects best region by quota"),
58
+ vmSize: z.string().default("Standard_D2s_v3").describe("Azure VM size"),
59
+ vmNamePrefix: z.string().optional().describe("Custom name prefix (max 15 chars, auto-generated if omitted)"),
60
+ enableRecording: z.boolean().default(true),
61
+ }, async ({ workspaceId, location, vmSize, vmNamePrefix, enableRecording }) => {
62
+ try {
63
+ const authToken = deps.getAuthToken?.();
64
+ if (!authToken)
65
+ return text("No auth token available. Please re-authenticate.");
66
+ const vmServiceUrl = deps.getVmServiceBase();
67
+ const res = await fetch(`${vmServiceUrl}/workspaces/${workspaceId}/vms`, {
68
+ method: "POST",
69
+ headers: {
70
+ "Content-Type": "application/json",
71
+ "Authorization": `Bearer ${authToken}`,
72
+ },
73
+ body: JSON.stringify({
74
+ workspace_id: String(workspaceId),
75
+ location,
76
+ vm_size: vmSize,
77
+ vm_name_prefix: vmNamePrefix || undefined,
78
+ exposed_ports: [1016, 3389],
79
+ enable_recording: enableRecording,
80
+ enable_queue_and_lock: false,
81
+ install_laminar_service: false,
82
+ windows_version: "2022-datacenter",
83
+ }),
84
+ });
85
+ if (!res.ok) {
86
+ const errBody = await res.text().catch(() => "");
87
+ return text(`VM deployment failed (HTTP ${res.status}): ${errBody}`);
88
+ }
89
+ const result = await res.json();
90
+ return ok({
91
+ message: "VM deployment started. It takes ~5-10 minutes.",
92
+ vm_name: result.vm_name,
93
+ username: result.username,
94
+ password: result.password,
95
+ next_steps: [
96
+ "Poll vm_list to check when deployment_status becomes 'deployed'",
97
+ "Once deployed, use install_mds_on_vm to install MDS",
98
+ "Then use vm_connect to connect",
99
+ ],
100
+ });
101
+ }
102
+ catch (e) {
103
+ return text(`VM deployment failed: ${e.message}`);
104
+ }
105
+ });
13
106
  // ── Connection management ─────────────────────────────────
14
- server.tool("vm_connect", "Connect to a VM via Minicor Desktop Service (Cloudflare Tunnel URL). Must be called before any other vm_* tool. Returns connection info and guidance on available automation approaches (CDP for browsers, uiautomation for desktop, requests for APIs).", {
15
- url: z.string().describe("MDS base URL (Cloudflare Tunnel)"),
16
- apiKey: z.string().optional().describe("MDS API key"),
17
- serviceId: z.string().optional().describe("MDS service ID"),
18
- }, async ({ url, apiKey, serviceId }) => {
107
+ server.tool("vm_connect", "Connect to a VM. Provide vmId (from vm_list) to auto-fill credentials, or provide url directly. Must be called before any other vm_* tool.", {
108
+ vmId: z.number().optional().describe("VM ID from vm_list — auto-fills url, apiKey, serviceId"),
109
+ url: z.string().optional().describe("MDS base URL (Cloudflare Tunnel) — use this OR vmId"),
110
+ apiKey: z.string().optional().describe("MDS API key (not needed with vmId)"),
111
+ serviceId: z.string().optional().describe("MDS service ID (not needed with vmId)"),
112
+ }, async ({ vmId, url, apiKey, serviceId }) => {
113
+ let connectUrl = url;
114
+ let connectApiKey = apiKey;
115
+ let connectServiceId = serviceId;
116
+ let vmName;
117
+ if (vmId) {
118
+ const vm = getCachedVm(vmId);
119
+ if (!vm) {
120
+ return text("VM not found in cache. Run vm_list first to discover available VMs.");
121
+ }
122
+ if (!vm.tunnel_url) {
123
+ return text(`VM "${vm.vm_name}" has no tunnel URL — it may not be running.`);
124
+ }
125
+ connectUrl = vm.tunnel_url;
126
+ connectApiKey = vm.api_key;
127
+ connectServiceId = vm.service_id;
128
+ vmName = vm.vm_name;
129
+ }
130
+ if (!connectUrl) {
131
+ return text("Provide either vmId (from vm_list) or url to connect.");
132
+ }
19
133
  try {
20
- const health = await lds.health(url);
21
- setLdsConnection({ url, apiKey, serviceId });
134
+ const health = await lds.health(connectUrl);
135
+ setLdsConnection({
136
+ url: connectUrl,
137
+ apiKey: connectApiKey,
138
+ serviceId: connectServiceId,
139
+ vmId,
140
+ vmName,
141
+ });
22
142
  return ok({
23
143
  connected: true,
24
- url,
25
- authenticated: !!(apiKey && serviceId),
144
+ url: connectUrl,
145
+ vmId,
146
+ vmName,
147
+ authenticated: !!(connectApiKey && connectServiceId),
26
148
  service: health,
27
149
  next_steps: [
28
150
  "Take vm_screenshot to see the current desktop state",
@@ -38,7 +160,7 @@ export function register(deps) {
38
160
  });
39
161
  }
40
162
  catch (e) {
41
- return text(`Failed to connect to VM at ${url}: ${e.message}`);
163
+ return text(`Failed to connect to VM at ${connectUrl}: ${e.message}`);
42
164
  }
43
165
  });
44
166
  server.tool("vm_disconnect", "Disconnect from the current VM", {}, async () => {
@@ -51,7 +173,13 @@ export function register(deps) {
51
173
  return err;
52
174
  try {
53
175
  const health = await lds.health(ldsConnection.url);
54
- return ok({ connected: true, url: ldsConnection.url, ...health });
176
+ return ok({
177
+ connected: true,
178
+ url: ldsConnection.url,
179
+ vmId: ldsConnection.vmId,
180
+ vmName: ldsConnection.vmName,
181
+ ...health,
182
+ });
55
183
  }
56
184
  catch (e) {
57
185
  return text(`VM unreachable: ${e.message}`);
@@ -287,5 +415,245 @@ print(json.dumps({"clipboard": clipboard_text}))
287
415
  return text(`Clipboard read failed: ${e.message}`);
288
416
  }
289
417
  });
418
+ // ── MDS Installation ───────────────────────────────────────
419
+ const INSTALL_SCRIPT_URL = "https://www.minicor.com/installs/desktop-service/ps1";
420
+ /** Escape for single-quoted PowerShell strings (only ' needs doubling). */
421
+ const psEscape = (s) => s.replace(/'/g, "''");
422
+ server.tool("get_mds_install_command", "Generate a pre-filled PowerShell one-liner to install Minicor Desktop Service on a VM. " +
423
+ "Returns a command the user can paste into an elevated PowerShell window on the target machine.", {
424
+ vmId: z.number().optional().describe("VM ID from vm_list — auto-fills serviceId and apiKey"),
425
+ serviceId: z.string().optional().describe("MDS service ID (manual override)"),
426
+ apiKey: z.string().optional().describe("MDS API key (manual override)"),
427
+ enableRecording: z.boolean().default(true),
428
+ resolution: z.string().default("1280x720"),
429
+ installerUrl: z.string().optional().describe("Override installer URL (e.g. ngrok URL for testing)"),
430
+ }, async ({ vmId, serviceId, apiKey, enableRecording, resolution, installerUrl }) => {
431
+ let sid = serviceId;
432
+ let key = apiKey;
433
+ if (vmId) {
434
+ const vm = getCachedVm(vmId);
435
+ if (vm) {
436
+ sid = sid || vm.service_id;
437
+ key = key || vm.api_key;
438
+ }
439
+ else {
440
+ return text("VM not found in cache. Run vm_list first to discover available VMs.");
441
+ }
442
+ }
443
+ const envVars = [];
444
+ if (sid)
445
+ envVars.push(`$env:MDS_SERVICE_ID='${psEscape(sid)}'`);
446
+ if (key)
447
+ envVars.push(`$env:MDS_VM_API_KEY='${psEscape(key)}'`);
448
+ envVars.push(`$env:MDS_RECORDING='${enableRecording}'`);
449
+ envVars.push(`$env:MDS_RESOLUTION='${psEscape(resolution)}'`);
450
+ const scriptUrl = installerUrl || INSTALL_SCRIPT_URL;
451
+ const command = `New-Item -ItemType Directory -Path C:\\temp -Force | Out-Null; ${envVars.join("; ")}; irm '${psEscape(scriptUrl)}' -OutFile C:\\temp\\install.ps1; powershell -ExecutionPolicy Bypass -File C:\\temp\\install.ps1`;
452
+ return ok({
453
+ command,
454
+ instructions: "Run this command in an elevated PowerShell window on the target Windows machine.",
455
+ params: {
456
+ serviceId: sid,
457
+ apiKey: key ? `${key.substring(0, 8)}...` : undefined,
458
+ enableRecording,
459
+ resolution,
460
+ installerUrl: scriptUrl,
461
+ },
462
+ });
463
+ });
464
+ server.tool("install_mds_on_vm", "Install Minicor Desktop Service on an Azure VM automatically via Azure Run Command. " +
465
+ "Falls back to generating a manual install command if automated install fails.", {
466
+ workspaceId: z.number().describe("Workspace ID"),
467
+ vmId: z.number().describe("VM ID from vm_list"),
468
+ enableRecording: z.boolean().default(true),
469
+ resolution: z.string().default("1280x720"),
470
+ installerUrl: z.string().optional().describe("Override installer URL (e.g. ngrok URL for testing)"),
471
+ }, async ({ workspaceId, vmId, enableRecording, resolution, installerUrl }) => {
472
+ const vm = getCachedVm(vmId);
473
+ if (!vm) {
474
+ return text("VM not found in cache. Run vm_list first to discover available VMs.");
475
+ }
476
+ const scriptUrl = installerUrl || INSTALL_SCRIPT_URL;
477
+ const key = vm.api_key;
478
+ // Fetch VM credentials for auto-logon (ensures active desktop session for RPA)
479
+ let autoLogonUser = "";
480
+ let autoLogonPass = "";
481
+ try {
482
+ const authToken = deps.getAuthToken?.();
483
+ if (authToken) {
484
+ const credRes = await fetch(`${deps.getVmServiceBase()}/workspaces/${workspaceId}/vms/${vmId}/credentials`, { headers: { "Authorization": `Bearer ${authToken}` } });
485
+ if (credRes.ok) {
486
+ const creds = await credRes.json();
487
+ autoLogonUser = creds.admin_username || "";
488
+ autoLogonPass = creds.admin_password || "";
489
+ }
490
+ }
491
+ }
492
+ catch { /* credentials fetch failed, skip auto-logon */ }
493
+ // Use single quotes for values that may contain special chars (&, !, }, etc.)
494
+ const psEscape = (s) => s.replace(/'/g, "''"); // only ' needs escaping in single-quoted PS strings
495
+ const envVars = [
496
+ `$env:MDS_VM_API_KEY='${psEscape(key || "")}'`,
497
+ `$env:MDS_RECORDING='${enableRecording}'`,
498
+ `$env:MDS_RESOLUTION='${psEscape(resolution)}'`,
499
+ ];
500
+ if (autoLogonUser && autoLogonPass) {
501
+ envVars.push(`$env:MDS_AUTOLOGON_USER='${psEscape(autoLogonUser)}'`);
502
+ envVars.push(`$env:MDS_AUTOLOGON_PASS='${psEscape(autoLogonPass)}'`);
503
+ }
504
+ const installScript = [
505
+ ...envVars,
506
+ `New-Item -ItemType Directory -Path "C:\\temp" -Force | Out-Null`,
507
+ `Invoke-WebRequest -Uri "${scriptUrl}" -OutFile "C:\\temp\\install-mds.ps1" -UseBasicParsing`,
508
+ `powershell -ExecutionPolicy Bypass -File "C:\\temp\\install-mds.ps1"`,
509
+ ].join("; ");
510
+ try {
511
+ const vmServiceUrl = deps.getVmServiceBase();
512
+ const authToken = deps.getAuthToken?.();
513
+ if (!authToken) {
514
+ return text("No auth token available. Please re-authenticate the MCP.");
515
+ }
516
+ const res = await fetch(`${vmServiceUrl}/workspaces/${workspaceId}/vms/${vmId}/run-script`, {
517
+ method: "POST",
518
+ headers: {
519
+ "Content-Type": "application/json",
520
+ "Authorization": `Bearer ${authToken}`,
521
+ },
522
+ body: JSON.stringify({ script: installScript, timeout: 900, description: "MDS CLI installer via MCP" }),
523
+ });
524
+ if (!res.ok) {
525
+ const errBody = await res.text().catch(() => "");
526
+ const envVars = [`$env:MDS_VM_API_KEY="${key}"`];
527
+ return ok({
528
+ automated: false,
529
+ reason: `Automated install failed (HTTP ${res.status}: ${errBody}). Use this manual command instead:`,
530
+ command: `${envVars.join("; ")}; irm ${scriptUrl} -OutFile C:\\temp\\install.ps1; powershell -ExecutionPolicy Bypass -File C:\\temp\\install.ps1`,
531
+ instructions: "Run this in an elevated PowerShell window on the VM.",
532
+ });
533
+ }
534
+ const result = await res.json();
535
+ return ok({
536
+ automated: true,
537
+ message: "MDS installation completed via Azure Run Command.",
538
+ stdout: result.stdout,
539
+ stderr: result.stderr,
540
+ next_steps: [
541
+ "Use vm_list to check VM health status",
542
+ `Use vm_connect with vmId ${vmId} to connect`,
543
+ "Take vm_screenshot to verify the desktop",
544
+ ],
545
+ });
546
+ }
547
+ catch (e) {
548
+ return ok({
549
+ automated: false,
550
+ reason: `Automated install failed: ${e.message}`,
551
+ command: `New-Item -ItemType Directory -Path C:\\temp -Force | Out-Null; $env:MDS_VM_API_KEY='${psEscape(key || "")}'; irm '${psEscape(scriptUrl)}' -OutFile C:\\temp\\install.ps1; powershell -ExecutionPolicy Bypass -File C:\\temp\\install.ps1`,
552
+ instructions: "Run this in an elevated PowerShell window on the VM.",
553
+ });
554
+ }
555
+ });
556
+ // ── Start MDS after install ────────────────────────────────
557
+ server.tool("start_mds_on_vm", "Start Minicor Desktop Service on an Azure VM via Azure Run Command. " +
558
+ "Use after install_mds_on_vm when MDS installed but health check failed (Session 0 issue). " +
559
+ "Creates a one-shot scheduled task to launch MDS in the interactive desktop session.", {
560
+ workspaceId: z.number().describe("Workspace ID"),
561
+ vmId: z.number().describe("VM ID from vm_list"),
562
+ }, async ({ workspaceId, vmId }) => {
563
+ const vm = getCachedVm(vmId);
564
+ if (!vm) {
565
+ return text("VM not found in cache. Run vm_list first.");
566
+ }
567
+ // PowerShell script that starts MDS in the interactive session
568
+ // Uses WMI to find the logged-on user (more reliable than `query session`)
569
+ const startScript = `
570
+ $exePath = "C:\\Program Files\\MinicorDesktopService\\MinicorDesktopService.exe"
571
+ $installDir = "C:\\Program Files\\MinicorDesktopService"
572
+ if (-not (Test-Path $exePath)) { Write-Error "MDS not installed"; exit 1 }
573
+
574
+ $proc = Get-Process -Name MinicorDesktopService -ErrorAction SilentlyContinue
575
+ if ($proc) {
576
+ try { $h = Invoke-WebRequest -Uri "http://localhost:1016/health" -UseBasicParsing -TimeoutSec 3; Write-Output "MDS running and healthy (PID $($proc.Id))"; exit 0 } catch {}
577
+ Write-Output "MDS running but unhealthy, restarting..."
578
+ Stop-Process -Id $proc.Id -Force -ErrorAction SilentlyContinue; Start-Sleep -Seconds 2
579
+ }
580
+
581
+ # Find logged-on interactive user via WMI
582
+ $user = (Get-WmiObject -Class Win32_ComputerSystem).UserName
583
+ if (-not $user) {
584
+ # Fallback: check explorer.exe owner
585
+ $explorer = Get-WmiObject Win32_Process -Filter "name='explorer.exe'" | Select-Object -First 1
586
+ if ($explorer) {
587
+ $owner = $explorer.GetOwner()
588
+ $user = "$($owner.Domain)\\$($owner.User)"
589
+ }
590
+ }
591
+
592
+ $taskName = "MinicorDesktopService-Start"
593
+ Unregister-ScheduledTask -TaskName $taskName -Confirm:$false -ErrorAction SilentlyContinue
594
+
595
+ $action = New-ScheduledTaskAction -Execute $exePath -WorkingDirectory $installDir
596
+ $trigger = New-ScheduledTaskTrigger -Once -At (Get-Date).AddSeconds(2)
597
+ $trigger.EndBoundary = (Get-Date).AddMinutes(5).ToString("yyyy-MM-ddTHH:mm:ss")
598
+ $settings = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries
599
+
600
+ if ($user) {
601
+ $shortUser = if ($user.Contains("\\")) { $user.Split("\\")[1] } else { $user }
602
+ $principal = New-ScheduledTaskPrincipal -UserId $shortUser -LogonType Interactive -RunLevel Highest
603
+ Register-ScheduledTask -TaskName $taskName -Action $action -Trigger $trigger -Settings $settings -Principal $principal -Force | Out-Null
604
+ } else {
605
+ Register-ScheduledTask -TaskName $taskName -Action $action -Trigger $trigger -Settings $settings -RunLevel Highest -Force | Out-Null
606
+ }
607
+
608
+ Start-ScheduledTask -TaskName $taskName -ErrorAction SilentlyContinue
609
+ Start-Sleep -Seconds 8
610
+
611
+ $proc = Get-Process -Name MinicorDesktopService -ErrorAction SilentlyContinue
612
+ Unregister-ScheduledTask -TaskName $taskName -Confirm:$false -ErrorAction SilentlyContinue
613
+
614
+ if ($proc) {
615
+ # Check health
616
+ try {
617
+ $health = Invoke-WebRequest -Uri "http://localhost:1016/health" -UseBasicParsing -TimeoutSec 5
618
+ Write-Output "MDS running (PID $($proc.Id)), health: $($health.StatusCode)"
619
+ } catch {
620
+ Write-Output "MDS running (PID $($proc.Id)), health endpoint not ready yet"
621
+ }
622
+ } else {
623
+ Write-Output "MDS process not detected after scheduled task launch"
624
+ }
625
+ `.trim();
626
+ try {
627
+ const vmServiceUrl = deps.getVmServiceBase();
628
+ const authToken = deps.getAuthToken?.();
629
+ if (!authToken)
630
+ return text("No auth token available. Please re-authenticate the MCP.");
631
+ const res = await fetch(`${vmServiceUrl}/workspaces/${workspaceId}/vms/${vmId}/run-script`, {
632
+ method: "POST",
633
+ headers: {
634
+ "Content-Type": "application/json",
635
+ "Authorization": `Bearer ${authToken}`,
636
+ },
637
+ body: JSON.stringify({ script: startScript, timeout: 60, description: "Start MDS in interactive session" }),
638
+ });
639
+ if (!res.ok) {
640
+ const errBody = await res.text().catch(() => "");
641
+ return text(`Failed to start MDS (HTTP ${res.status}): ${errBody}`);
642
+ }
643
+ const result = await res.json();
644
+ return ok({
645
+ message: "MDS start command executed.",
646
+ stdout: result.stdout,
647
+ stderr: result.stderr,
648
+ next_steps: [
649
+ `Use vm_connect with vmId ${vmId} to connect`,
650
+ "Take vm_screenshot to verify the desktop",
651
+ ],
652
+ });
653
+ }
654
+ catch (e) {
655
+ return text(`Failed to start MDS: ${e.message}`);
656
+ }
657
+ });
290
658
  }
291
659
  //# sourceMappingURL=vm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"vm.js","sourceRoot":"","sources":["../../src/tools/vm.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vm.js","sourceRoot":"","sources":["../../src/tools/vm.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-ops.d.ts","sourceRoot":"","sources":["../../src/tools/workflow-ops.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,wBAAgB,QAAQ,CAAC,IAAI,EAAE,QAAQ,QAmYtC"}
1
+ {"version":3,"file":"workflow-ops.d.ts","sourceRoot":"","sources":["../../src/tools/workflow-ops.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAO5C,wBAAgB,QAAQ,CAAC,IAAI,EAAE,QAAQ,QA+YtC"}