@minicor/mcp-server 3.2.1 → 3.2.2
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.
- package/dist/__tests__/laminar-client.test.d.ts +2 -0
- package/dist/__tests__/laminar-client.test.d.ts.map +1 -0
- package/dist/__tests__/laminar-client.test.js +70 -0
- package/dist/__tests__/laminar-client.test.js.map +1 -0
- package/dist/__tests__/token-provider.test.d.ts +2 -0
- package/dist/__tests__/token-provider.test.d.ts.map +1 -0
- package/dist/__tests__/token-provider.test.js +82 -0
- package/dist/__tests__/token-provider.test.js.map +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +28 -5
- package/dist/index.js.map +1 -1
- package/dist/laminar-client.d.ts +3 -1
- package/dist/laminar-client.d.ts.map +1 -1
- package/dist/laminar-client.js +18 -5
- package/dist/laminar-client.js.map +1 -1
- package/dist/lib.d.ts +10 -7
- package/dist/lib.d.ts.map +1 -1
- package/dist/lib.js +44 -9
- package/dist/lib.js.map +1 -1
- package/dist/token-provider.d.ts +16 -0
- package/dist/token-provider.d.ts.map +1 -0
- package/dist/token-provider.js +44 -0
- package/dist/token-provider.js.map +1 -0
- package/dist/tools/vm.d.ts.map +1 -1
- package/dist/tools/vm.js +17 -9
- package/dist/tools/vm.js.map +1 -1
- package/package.json +3 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"laminar-client.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/laminar-client.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { describe, it, expect, vi, beforeEach, afterEach } from "vitest";
|
|
2
|
+
import { LaminarClient } from "../laminar-client.js";
|
|
3
|
+
import { TokenProvider } from "../token-provider.js";
|
|
4
|
+
let fetchMock;
|
|
5
|
+
beforeEach(() => {
|
|
6
|
+
fetchMock = vi.fn();
|
|
7
|
+
vi.stubGlobal("fetch", fetchMock);
|
|
8
|
+
});
|
|
9
|
+
afterEach(() => {
|
|
10
|
+
vi.restoreAllMocks();
|
|
11
|
+
});
|
|
12
|
+
function jsonResponse(status, body) {
|
|
13
|
+
return new Response(JSON.stringify(body), {
|
|
14
|
+
status,
|
|
15
|
+
headers: { "Content-Type": "application/json" },
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
describe("LaminarClient 401 retry", () => {
|
|
19
|
+
it("retries once on 401 when tokenProvider is available", async () => {
|
|
20
|
+
const refreshFn = vi.fn().mockResolvedValue({
|
|
21
|
+
token: "tok-new",
|
|
22
|
+
expiresAt: Date.now() + 3600_000,
|
|
23
|
+
});
|
|
24
|
+
const provider = new TokenProvider("tok-old", Date.now() - 1000, refreshFn);
|
|
25
|
+
const client = new LaminarClient({ type: "bearer", token: "tok-old" }, "https://api.test.com", provider);
|
|
26
|
+
fetchMock
|
|
27
|
+
.mockResolvedValueOnce(new Response("Unauthorized", { status: 401 }))
|
|
28
|
+
.mockResolvedValueOnce(jsonResponse(200, { id: 1 }));
|
|
29
|
+
const result = await client.getMe();
|
|
30
|
+
expect(result).toEqual({ id: 1 });
|
|
31
|
+
expect(fetchMock).toHaveBeenCalledTimes(2);
|
|
32
|
+
expect(refreshFn).toHaveBeenCalledOnce();
|
|
33
|
+
});
|
|
34
|
+
it("throws on 401 without tokenProvider (existing behavior)", async () => {
|
|
35
|
+
const client = new LaminarClient({ type: "bearer", token: "tok-old" }, "https://api.test.com");
|
|
36
|
+
fetchMock.mockResolvedValueOnce(new Response("Unauthorized", { status: 401 }));
|
|
37
|
+
await expect(client.getMe()).rejects.toThrow("failed (401)");
|
|
38
|
+
expect(fetchMock).toHaveBeenCalledOnce();
|
|
39
|
+
});
|
|
40
|
+
it("throws if retry also returns 401", async () => {
|
|
41
|
+
const refreshFn = vi.fn().mockResolvedValue({
|
|
42
|
+
token: "tok-still-bad",
|
|
43
|
+
expiresAt: Date.now() + 3600_000,
|
|
44
|
+
});
|
|
45
|
+
const provider = new TokenProvider("tok-old", Date.now() - 1000, refreshFn);
|
|
46
|
+
const client = new LaminarClient({ type: "bearer", token: "tok-old" }, "https://api.test.com", provider);
|
|
47
|
+
fetchMock
|
|
48
|
+
.mockResolvedValueOnce(new Response("Unauthorized", { status: 401 }))
|
|
49
|
+
.mockResolvedValueOnce(new Response("Unauthorized", { status: 401 }));
|
|
50
|
+
await expect(client.getMe()).rejects.toThrow("failed (401)");
|
|
51
|
+
expect(fetchMock).toHaveBeenCalledTimes(2);
|
|
52
|
+
});
|
|
53
|
+
it("uses refreshed token in the retry request header", async () => {
|
|
54
|
+
const refreshFn = vi.fn().mockResolvedValue({
|
|
55
|
+
token: "tok-fresh",
|
|
56
|
+
expiresAt: Date.now() + 3600_000,
|
|
57
|
+
});
|
|
58
|
+
const provider = new TokenProvider("tok-stale", Date.now() - 1000, refreshFn);
|
|
59
|
+
const client = new LaminarClient({ type: "bearer", token: "ignored" }, "https://api.test.com", provider);
|
|
60
|
+
fetchMock
|
|
61
|
+
.mockResolvedValueOnce(new Response("Unauthorized", { status: 401 }))
|
|
62
|
+
.mockResolvedValueOnce(jsonResponse(200, { ok: true }));
|
|
63
|
+
await client.listWorkspaces();
|
|
64
|
+
const firstCall = fetchMock.mock.calls[0][1].headers;
|
|
65
|
+
expect(firstCall["Authorization"]).toBe("Bearer tok-stale");
|
|
66
|
+
const retryCall = fetchMock.mock.calls[1][1].headers;
|
|
67
|
+
expect(retryCall["Authorization"]).toBe("Bearer tok-fresh");
|
|
68
|
+
});
|
|
69
|
+
});
|
|
70
|
+
//# sourceMappingURL=laminar-client.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"laminar-client.test.js","sourceRoot":"","sources":["../../src/__tests__/laminar-client.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"token-provider.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/token-provider.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { describe, it, expect, vi } from "vitest";
|
|
2
|
+
import { TokenProvider } from "../token-provider.js";
|
|
3
|
+
describe("TokenProvider", () => {
|
|
4
|
+
it("returns the initial token", () => {
|
|
5
|
+
const provider = new TokenProvider("tok-1", Date.now() + 60_000);
|
|
6
|
+
expect(provider.getToken()).toBe("tok-1");
|
|
7
|
+
});
|
|
8
|
+
it("refreshes the token and updates state", async () => {
|
|
9
|
+
const refreshFn = vi.fn().mockResolvedValue({
|
|
10
|
+
token: "tok-2",
|
|
11
|
+
expiresAt: Date.now() + 3600_000,
|
|
12
|
+
});
|
|
13
|
+
const provider = new TokenProvider("tok-1", Date.now() - 1000, refreshFn);
|
|
14
|
+
const newToken = await provider.refreshToken();
|
|
15
|
+
expect(newToken).toBe("tok-2");
|
|
16
|
+
expect(provider.getToken()).toBe("tok-2");
|
|
17
|
+
expect(refreshFn).toHaveBeenCalledOnce();
|
|
18
|
+
});
|
|
19
|
+
it("fires onTokenRefreshed callback", async () => {
|
|
20
|
+
const refreshFn = vi.fn().mockResolvedValue({
|
|
21
|
+
token: "tok-2",
|
|
22
|
+
expiresAt: Date.now() + 3600_000,
|
|
23
|
+
});
|
|
24
|
+
const provider = new TokenProvider("tok-1", Date.now() - 1000, refreshFn);
|
|
25
|
+
const hook = vi.fn();
|
|
26
|
+
provider.onTokenRefreshed = hook;
|
|
27
|
+
await provider.refreshToken();
|
|
28
|
+
expect(hook).toHaveBeenCalledWith("tok-2");
|
|
29
|
+
});
|
|
30
|
+
it("deduplicates concurrent refresh calls (mutex)", async () => {
|
|
31
|
+
let resolveRefresh;
|
|
32
|
+
const refreshFn = vi.fn().mockImplementation(() => new Promise((r) => { resolveRefresh = r; }));
|
|
33
|
+
const provider = new TokenProvider("tok-1", Date.now() - 1000, refreshFn);
|
|
34
|
+
const p1 = provider.refreshToken();
|
|
35
|
+
const p2 = provider.refreshToken();
|
|
36
|
+
resolveRefresh({ token: "tok-2", expiresAt: Date.now() + 3600_000 });
|
|
37
|
+
const [r1, r2] = await Promise.all([p1, p2]);
|
|
38
|
+
expect(r1).toBe("tok-2");
|
|
39
|
+
expect(r2).toBe("tok-2");
|
|
40
|
+
expect(refreshFn).toHaveBeenCalledOnce();
|
|
41
|
+
});
|
|
42
|
+
it("throws when refresh returns null", async () => {
|
|
43
|
+
const refreshFn = vi.fn().mockResolvedValue(null);
|
|
44
|
+
const provider = new TokenProvider("tok-1", Date.now() - 1000, refreshFn);
|
|
45
|
+
await expect(provider.refreshToken()).rejects.toThrow("Token refresh returned null");
|
|
46
|
+
expect(provider.getToken()).toBe("tok-1");
|
|
47
|
+
});
|
|
48
|
+
it("throws when no refresh function is configured", async () => {
|
|
49
|
+
const provider = new TokenProvider("tok-1", Date.now() - 1000);
|
|
50
|
+
await expect(provider.refreshToken()).rejects.toThrow("No refresh function configured");
|
|
51
|
+
});
|
|
52
|
+
it("allows a new refresh after a previous one completes", async () => {
|
|
53
|
+
let callCount = 0;
|
|
54
|
+
const refreshFn = vi.fn().mockImplementation(async () => {
|
|
55
|
+
callCount++;
|
|
56
|
+
return { token: `tok-${callCount + 1}`, expiresAt: Date.now() + 3600_000 };
|
|
57
|
+
});
|
|
58
|
+
const provider = new TokenProvider("tok-1", Date.now() - 1000, refreshFn);
|
|
59
|
+
await provider.refreshToken();
|
|
60
|
+
expect(provider.getToken()).toBe("tok-2");
|
|
61
|
+
await provider.refreshToken();
|
|
62
|
+
expect(provider.getToken()).toBe("tok-3");
|
|
63
|
+
expect(refreshFn).toHaveBeenCalledTimes(2);
|
|
64
|
+
});
|
|
65
|
+
it("succeeds even if onTokenRefreshed callback throws", async () => {
|
|
66
|
+
const refreshFn = vi.fn().mockResolvedValue({
|
|
67
|
+
token: "tok-2",
|
|
68
|
+
expiresAt: Date.now() + 3600_000,
|
|
69
|
+
});
|
|
70
|
+
const provider = new TokenProvider("tok-1", Date.now() - 1000, refreshFn);
|
|
71
|
+
provider.onTokenRefreshed = () => { throw new Error("disk write failed"); };
|
|
72
|
+
const result = await provider.refreshToken();
|
|
73
|
+
expect(result).toBe("tok-2");
|
|
74
|
+
expect(provider.getToken()).toBe("tok-2");
|
|
75
|
+
});
|
|
76
|
+
it("isExpiringSoon returns true when token is about to expire", () => {
|
|
77
|
+
const provider = new TokenProvider("tok-1", Date.now() + 60_000);
|
|
78
|
+
expect(provider.isExpiringSoon(120_000)).toBe(true);
|
|
79
|
+
expect(provider.isExpiringSoon(30_000)).toBe(false);
|
|
80
|
+
});
|
|
81
|
+
});
|
|
82
|
+
//# sourceMappingURL=token-provider.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"token-provider.test.js","sourceRoot":"","sources":["../../src/__tests__/token-provider.test.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;;;;GAQG;AAOH,OAAO,EAKL,KAAK,MAAM,EACZ,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;;;;GAQG;AAOH,OAAO,EAKL,KAAK,MAAM,EACZ,MAAM,YAAY,CAAC;AA+EpB,wBAAgB,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAOlD"}
|
package/dist/index.js
CHANGED
|
@@ -14,6 +14,7 @@ import fs from "node:fs";
|
|
|
14
14
|
import path from "node:path";
|
|
15
15
|
import { LaminarClient } from "./laminar-client.js";
|
|
16
16
|
import { getTokenPath, getWriteTokenPath, regionToApiBase, apiBaseToRegion, } from "./paths.js";
|
|
17
|
+
import { TokenProvider } from "./token-provider.js";
|
|
17
18
|
import { register as registerCore } from "./tools/core.js";
|
|
18
19
|
import { register as registerWorkflowOps } from "./tools/workflow-ops.js";
|
|
19
20
|
import { register as registerConfigStores } from "./tools/config-stores.js";
|
|
@@ -150,6 +151,7 @@ async function resolveAllAuth() {
|
|
|
150
151
|
// ─── Server state ────────────────────────────────────────────
|
|
151
152
|
const clients = new Map();
|
|
152
153
|
const currentTokens = new Map();
|
|
154
|
+
const tokenProviders = new Map();
|
|
153
155
|
const MINICOR_INSTRUCTIONS = `You are connected to the Minicor MCP server for RPA workflow automation.
|
|
154
156
|
|
|
155
157
|
CRITICAL: If the current directory contains a minicor.json file, you are in a workspace clone.
|
|
@@ -169,10 +171,15 @@ function scheduleTokenRefresh(region) {
|
|
|
169
171
|
const msUntilRefresh = Math.max(tokens.expires_at - REFRESH_BUFFER_MS - Date.now(), 60_000);
|
|
170
172
|
setTimeout(async () => {
|
|
171
173
|
try {
|
|
172
|
-
const
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
174
|
+
const provider = tokenProviders.get(region);
|
|
175
|
+
if (provider) {
|
|
176
|
+
await provider.refreshToken();
|
|
177
|
+
}
|
|
178
|
+
else {
|
|
179
|
+
const token = await getValidToken(region);
|
|
180
|
+
currentTokens.set(region, token);
|
|
181
|
+
}
|
|
182
|
+
console.error(`${region.toUpperCase()} token auto-refreshed.`);
|
|
176
183
|
}
|
|
177
184
|
catch (e) {
|
|
178
185
|
console.error(`${region.toUpperCase()} auto-refresh failed:`, e.message);
|
|
@@ -247,7 +254,23 @@ async function main() {
|
|
|
247
254
|
}
|
|
248
255
|
else {
|
|
249
256
|
for (const { region, auth, baseUrl } of authResults) {
|
|
250
|
-
|
|
257
|
+
const regionTokens = readRegionTokens(region);
|
|
258
|
+
const expiresAt = regionTokens?.expires_at ?? Date.now() + 3600_000;
|
|
259
|
+
const provider = new TokenProvider(auth.token, expiresAt, async () => {
|
|
260
|
+
const stored = readRegionTokens(region);
|
|
261
|
+
if (!stored?.refresh_token)
|
|
262
|
+
return null;
|
|
263
|
+
const refreshed = await refreshAccessToken(region, stored.refresh_token);
|
|
264
|
+
if (!refreshed)
|
|
265
|
+
return null;
|
|
266
|
+
writeRegionTokens(region, refreshed);
|
|
267
|
+
return { token: refreshed.access_token, expiresAt: refreshed.expires_at };
|
|
268
|
+
});
|
|
269
|
+
provider.onTokenRefreshed = (newToken) => {
|
|
270
|
+
currentTokens.set(region, newToken);
|
|
271
|
+
};
|
|
272
|
+
tokenProviders.set(region, provider);
|
|
273
|
+
clients.set(region, new LaminarClient(auth, baseUrl, provider));
|
|
251
274
|
currentTokens.set(region, auth.token);
|
|
252
275
|
scheduleTokenRefresh(region);
|
|
253
276
|
}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;;;;GAQG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAoB,MAAM,qBAAqB,CAAC;AACtE,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,eAAe,GAEhB,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/laminar-client.d.ts
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* Laminar API Client
|
|
3
3
|
* Wraps the Laminar REST API for use by the MCP server.
|
|
4
4
|
*/
|
|
5
|
+
import type { TokenProvider } from "./token-provider.js";
|
|
5
6
|
export interface LaminarAuth {
|
|
6
7
|
type: "bearer" | "apiKey";
|
|
7
8
|
token: string;
|
|
@@ -9,7 +10,8 @@ export interface LaminarAuth {
|
|
|
9
10
|
export declare class LaminarClient {
|
|
10
11
|
private auth;
|
|
11
12
|
private baseUrl;
|
|
12
|
-
|
|
13
|
+
private tokenProvider?;
|
|
14
|
+
constructor(auth: LaminarAuth, baseUrl?: string, tokenProvider?: TokenProvider);
|
|
13
15
|
getToken(): string;
|
|
14
16
|
private headers;
|
|
15
17
|
private request;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"laminar-client.d.ts","sourceRoot":"","sources":["../src/laminar-client.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"laminar-client.d.ts","sourceRoot":"","sources":["../src/laminar-client.ts"],"names":[],"mappings":"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"}
|
package/dist/laminar-client.js
CHANGED
|
@@ -6,23 +6,26 @@ const DEFAULT_BASE_URL = "https://api.laminar.run";
|
|
|
6
6
|
export class LaminarClient {
|
|
7
7
|
auth;
|
|
8
8
|
baseUrl;
|
|
9
|
-
|
|
9
|
+
tokenProvider;
|
|
10
|
+
constructor(auth, baseUrl, tokenProvider) {
|
|
10
11
|
this.auth = auth;
|
|
11
12
|
this.baseUrl = baseUrl || DEFAULT_BASE_URL;
|
|
13
|
+
this.tokenProvider = tokenProvider;
|
|
12
14
|
}
|
|
13
15
|
getToken() {
|
|
14
|
-
return this.auth.token;
|
|
16
|
+
return this.tokenProvider?.getToken() ?? this.auth.token;
|
|
15
17
|
}
|
|
16
18
|
headers(extra) {
|
|
17
19
|
const h = {
|
|
18
20
|
"Content-Type": "application/json",
|
|
19
21
|
...extra,
|
|
20
22
|
};
|
|
23
|
+
const token = this.tokenProvider?.getToken() ?? this.auth.token;
|
|
21
24
|
if (this.auth.type === "bearer") {
|
|
22
|
-
h["Authorization"] = `Bearer ${
|
|
25
|
+
h["Authorization"] = `Bearer ${token}`;
|
|
23
26
|
}
|
|
24
27
|
else {
|
|
25
|
-
h["X-API-KEY"] =
|
|
28
|
+
h["X-API-KEY"] = token;
|
|
26
29
|
}
|
|
27
30
|
return h;
|
|
28
31
|
}
|
|
@@ -39,11 +42,21 @@ export class LaminarClient {
|
|
|
39
42
|
if (qs)
|
|
40
43
|
url += `?${qs}`;
|
|
41
44
|
}
|
|
42
|
-
const
|
|
45
|
+
const doFetch = () => fetch(url, {
|
|
43
46
|
method,
|
|
44
47
|
headers: this.headers(),
|
|
45
48
|
body: body ? JSON.stringify(body) : undefined,
|
|
46
49
|
});
|
|
50
|
+
let res = await doFetch();
|
|
51
|
+
if (res.status === 401 && this.tokenProvider) {
|
|
52
|
+
try {
|
|
53
|
+
await this.tokenProvider.refreshToken();
|
|
54
|
+
res = await doFetch();
|
|
55
|
+
}
|
|
56
|
+
catch {
|
|
57
|
+
// refresh failed — fall through to original error handling
|
|
58
|
+
}
|
|
59
|
+
}
|
|
47
60
|
if (!res.ok) {
|
|
48
61
|
const text = await res.text().catch(() => "");
|
|
49
62
|
throw new Error(`Laminar API ${method} ${path} failed (${res.status}): ${text}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"laminar-client.js","sourceRoot":"","sources":["../src/laminar-client.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"laminar-client.js","sourceRoot":"","sources":["../src/laminar-client.ts"],"names":[],"mappings":"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"}
|
package/dist/lib.d.ts
CHANGED
|
@@ -14,16 +14,19 @@
|
|
|
14
14
|
*/
|
|
15
15
|
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
16
16
|
import type { Transport } from "@modelcontextprotocol/sdk/shared/transport.js";
|
|
17
|
-
import { type LaminarAuth } from "./laminar-client.js";
|
|
18
17
|
import { type Region } from "./paths.js";
|
|
18
|
+
export interface TokenCredentials {
|
|
19
|
+
access_token: string;
|
|
20
|
+
refresh_token: string;
|
|
21
|
+
expires_at: number;
|
|
22
|
+
}
|
|
19
23
|
export interface MinicorServerOptions {
|
|
20
|
-
/**
|
|
21
|
-
|
|
22
|
-
/**
|
|
24
|
+
/** Token credentials with built-in refresh. */
|
|
25
|
+
credentials?: TokenCredentials;
|
|
26
|
+
/** API base URL. Defaults to US region. */
|
|
23
27
|
baseUrl?: string;
|
|
24
|
-
/** Per-region
|
|
25
|
-
|
|
26
|
-
auth: LaminarAuth;
|
|
28
|
+
/** Per-region token credentials for multi-region support. */
|
|
29
|
+
regionCredentials?: Partial<Record<Region, TokenCredentials & {
|
|
27
30
|
baseUrl?: string;
|
|
28
31
|
}>>;
|
|
29
32
|
/** VM Manager service base URL. Defaults to the Cloud Run instance. */
|
package/dist/lib.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../src/lib.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+CAA+C,CAAC;
|
|
1
|
+
{"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../src/lib.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+CAA+C,CAAC;AAE/E,OAAO,EAAmB,KAAK,MAAM,EAAE,MAAM,YAAY,CAAC;AAwB1D,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,oBAAoB;IACnC,+CAA+C;IAC/C,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,2CAA2C;IAC3C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,6DAA6D;IAC7D,iBAAiB,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,gBAAgB,GAAG;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAC;IACrF,uEAAuE;IACvE,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAoFD;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,SAAS,EAAE,SAAS,EACpB,IAAI,GAAE,oBAAyB,GAC9B,OAAO,CAAC;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAAE,CAAC,CAmF5D;AAED,YAAY,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC"}
|
package/dist/lib.js
CHANGED
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
16
16
|
import { LaminarClient } from "./laminar-client.js";
|
|
17
17
|
import { regionToApiBase } from "./paths.js";
|
|
18
|
+
import { TokenProvider } from "./token-provider.js";
|
|
18
19
|
import { register as registerCore } from "./tools/core.js";
|
|
19
20
|
import { register as registerWorkflowOps } from "./tools/workflow-ops.js";
|
|
20
21
|
import { register as registerConfigStores } from "./tools/config-stores.js";
|
|
@@ -62,6 +63,38 @@ Before ending your session, call session_end() to persist your progress. Other a
|
|
|
62
63
|
machines, scheduled, or human-triggered) depend on this to resume where you left off.
|
|
63
64
|
|
|
64
65
|
If you are NOT in a workspace clone, use the tools freely — list_workspaces, clone_workspace, etc.`;
|
|
66
|
+
async function refreshViaApi(apiBase, refreshToken) {
|
|
67
|
+
try {
|
|
68
|
+
const res = await fetch(`${apiBase}/auth/refresh`, {
|
|
69
|
+
method: "POST",
|
|
70
|
+
headers: { "Content-Type": "application/json" },
|
|
71
|
+
body: JSON.stringify({ refreshToken }),
|
|
72
|
+
});
|
|
73
|
+
if (!res.ok)
|
|
74
|
+
return null;
|
|
75
|
+
const data = (await res.json());
|
|
76
|
+
return {
|
|
77
|
+
token: data.access_token,
|
|
78
|
+
refreshToken: data.refresh_token || refreshToken,
|
|
79
|
+
expiresAt: Date.now() + data.expires_in * 1000,
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
catch {
|
|
83
|
+
return null;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
function buildProvider(creds, apiBase, onUpdate) {
|
|
87
|
+
let currentRefreshToken = creds.refresh_token;
|
|
88
|
+
const provider = new TokenProvider(creds.access_token, creds.expires_at, async () => {
|
|
89
|
+
const result = await refreshViaApi(apiBase, currentRefreshToken);
|
|
90
|
+
if (!result)
|
|
91
|
+
return null;
|
|
92
|
+
currentRefreshToken = result.refreshToken;
|
|
93
|
+
return { token: result.token, expiresAt: result.expiresAt };
|
|
94
|
+
});
|
|
95
|
+
provider.onTokenRefreshed = onUpdate;
|
|
96
|
+
return provider;
|
|
97
|
+
}
|
|
65
98
|
/**
|
|
66
99
|
* Create and connect a Minicor MCP server on the given transport.
|
|
67
100
|
* Returns a handle with a `close()` method for cleanup.
|
|
@@ -71,21 +104,23 @@ export async function createMinicorServer(transport, opts = {}) {
|
|
|
71
104
|
const clients = new Map();
|
|
72
105
|
const tokens = new Map();
|
|
73
106
|
const baseUrls = new Map();
|
|
74
|
-
if (opts.
|
|
75
|
-
for (const [r,
|
|
76
|
-
if (!
|
|
107
|
+
if (opts.regionCredentials) {
|
|
108
|
+
for (const [r, creds] of Object.entries(opts.regionCredentials)) {
|
|
109
|
+
if (!creds)
|
|
77
110
|
continue;
|
|
78
|
-
const base =
|
|
79
|
-
|
|
80
|
-
|
|
111
|
+
const base = creds.baseUrl || regionToApiBase(r);
|
|
112
|
+
const provider = buildProvider(creds, base, (t) => tokens.set(r, t));
|
|
113
|
+
clients.set(r, new LaminarClient({ type: "bearer", token: creds.access_token }, base, provider));
|
|
114
|
+
tokens.set(r, creds.access_token);
|
|
81
115
|
baseUrls.set(r, base);
|
|
82
116
|
}
|
|
83
117
|
}
|
|
84
|
-
if (clients.size === 0 && opts.
|
|
118
|
+
if (clients.size === 0 && opts.credentials) {
|
|
85
119
|
const baseUrl = opts.baseUrl || DEFAULT_BASE_URL;
|
|
86
120
|
const region = baseUrl.includes("ca.api") ? "ca" : "us";
|
|
87
|
-
|
|
88
|
-
|
|
121
|
+
const provider = buildProvider(opts.credentials, baseUrl, (t) => tokens.set(region, t));
|
|
122
|
+
clients.set(region, new LaminarClient({ type: "bearer", token: opts.credentials.access_token }, baseUrl, provider));
|
|
123
|
+
tokens.set(region, opts.credentials.access_token);
|
|
89
124
|
baseUrls.set(region, baseUrl);
|
|
90
125
|
}
|
|
91
126
|
if (clients.size === 0) {
|
package/dist/lib.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lib.js","sourceRoot":"","sources":["../src/lib.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,EAAE,aAAa,
|
|
1
|
+
{"version":3,"file":"lib.js","sourceRoot":"","sources":["../src/lib.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export type RefreshFn = () => Promise<{
|
|
2
|
+
token: string;
|
|
3
|
+
expiresAt: number;
|
|
4
|
+
} | null>;
|
|
5
|
+
export declare class TokenProvider {
|
|
6
|
+
private token;
|
|
7
|
+
private expiresAt;
|
|
8
|
+
private refreshFn;
|
|
9
|
+
private refreshPromise;
|
|
10
|
+
onTokenRefreshed?: (token: string) => void;
|
|
11
|
+
constructor(token: string, expiresAt: number, refreshFn?: RefreshFn);
|
|
12
|
+
getToken(): string;
|
|
13
|
+
isExpiringSoon(bufferMs?: number): boolean;
|
|
14
|
+
refreshToken(): Promise<string>;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=token-provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"token-provider.d.ts","sourceRoot":"","sources":["../src/token-provider.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB,GAAG,IAAI,CAAC,CAAC;AAEV,qBAAa,aAAa;IACxB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAAmB;IACpC,OAAO,CAAC,cAAc,CAAgC;IAEtD,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;gBAE/B,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,SAAS;IAMnE,QAAQ,IAAI,MAAM;IAIlB,cAAc,CAAC,QAAQ,SAAgB,GAAG,OAAO;IAI3C,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;CAsBtC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
export class TokenProvider {
|
|
2
|
+
token;
|
|
3
|
+
expiresAt;
|
|
4
|
+
refreshFn;
|
|
5
|
+
refreshPromise = null;
|
|
6
|
+
onTokenRefreshed;
|
|
7
|
+
constructor(token, expiresAt, refreshFn) {
|
|
8
|
+
this.token = token;
|
|
9
|
+
this.expiresAt = expiresAt;
|
|
10
|
+
this.refreshFn = refreshFn ?? null;
|
|
11
|
+
}
|
|
12
|
+
getToken() {
|
|
13
|
+
return this.token;
|
|
14
|
+
}
|
|
15
|
+
isExpiringSoon(bufferMs = 5 * 60 * 1000) {
|
|
16
|
+
return Date.now() >= this.expiresAt - bufferMs;
|
|
17
|
+
}
|
|
18
|
+
async refreshToken() {
|
|
19
|
+
if (this.refreshPromise)
|
|
20
|
+
return this.refreshPromise;
|
|
21
|
+
if (!this.refreshFn) {
|
|
22
|
+
throw new Error("No refresh function configured");
|
|
23
|
+
}
|
|
24
|
+
this.refreshPromise = (async () => {
|
|
25
|
+
try {
|
|
26
|
+
const result = await this.refreshFn();
|
|
27
|
+
if (!result)
|
|
28
|
+
throw new Error("Token refresh returned null");
|
|
29
|
+
this.token = result.token;
|
|
30
|
+
this.expiresAt = result.expiresAt;
|
|
31
|
+
try {
|
|
32
|
+
this.onTokenRefreshed?.(result.token);
|
|
33
|
+
}
|
|
34
|
+
catch { /* callback errors must not fail a successful refresh */ }
|
|
35
|
+
return result.token;
|
|
36
|
+
}
|
|
37
|
+
finally {
|
|
38
|
+
this.refreshPromise = null;
|
|
39
|
+
}
|
|
40
|
+
})();
|
|
41
|
+
return this.refreshPromise;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=token-provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"token-provider.js","sourceRoot":"","sources":["../src/token-provider.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,aAAa;IAChB,KAAK,CAAS;IACd,SAAS,CAAS;IAClB,SAAS,CAAmB;IAC5B,cAAc,GAA2B,IAAI,CAAC;IAEtD,gBAAgB,CAA2B;IAE3C,YAAY,KAAa,EAAE,SAAiB,EAAE,SAAqB;QACjE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,SAAS,GAAG,SAAS,IAAI,IAAI,CAAC;IACrC,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,cAAc,CAAC,QAAQ,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI;QACrC,OAAO,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,IAAI,IAAI,CAAC,cAAc;YAAE,OAAO,IAAI,CAAC,cAAc,CAAC;QAEpD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACpD,CAAC;QAED,IAAI,CAAC,cAAc,GAAG,CAAC,KAAK,IAAI,EAAE;YAChC,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAU,EAAE,CAAC;gBACvC,IAAI,CAAC,MAAM;oBAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;gBAC5D,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;gBAC1B,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;gBAClC,IAAI,CAAC;oBAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC,CAAC,wDAAwD,CAAC,CAAC;gBACjH,OAAO,MAAM,CAAC,KAAK,CAAC;YACtB,CAAC;oBAAS,CAAC;gBACT,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;YAC7B,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;QAEL,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;CACF"}
|
package/dist/tools/vm.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vm.d.ts","sourceRoot":"","sources":["../../src/tools/vm.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAY5C,wBAAgB,QAAQ,CAAC,IAAI,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"vm.d.ts","sourceRoot":"","sources":["../../src/tools/vm.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAY5C,wBAAgB,QAAQ,CAAC,IAAI,EAAE,QAAQ,QA86BtC"}
|
package/dist/tools/vm.js
CHANGED
|
@@ -54,13 +54,15 @@ export function register(deps) {
|
|
|
54
54
|
"and the service finds a region with available quota. Deployment is async (~5-10 min). " +
|
|
55
55
|
"Poll vm_list to check when deployment_status becomes 'deployed'.", {
|
|
56
56
|
workspaceId: z.number().describe("Workspace ID"),
|
|
57
|
+
region: regionParam,
|
|
57
58
|
location: z.enum(["us", "canada", "europe"]).default("us").describe("Geography — auto-selects best region by quota"),
|
|
58
59
|
vmSize: z.string().default("Standard_D2s_v3").describe("Azure VM size"),
|
|
59
60
|
vmNamePrefix: z.string().optional().describe("Custom name prefix (max 15 chars, auto-generated if omitted)"),
|
|
60
61
|
enableRecording: z.boolean().default(true),
|
|
61
|
-
}, async ({ workspaceId, location, vmSize, vmNamePrefix, enableRecording }) => {
|
|
62
|
+
}, async ({ workspaceId, region, location, vmSize, vmNamePrefix, enableRecording }) => {
|
|
62
63
|
try {
|
|
63
|
-
const
|
|
64
|
+
const wsRegion = region ?? getWorkspaceRegion(workspaceId);
|
|
65
|
+
const authToken = deps.getAuthToken?.(wsRegion);
|
|
64
66
|
if (!authToken)
|
|
65
67
|
return text("No auth token available. Please re-authenticate.");
|
|
66
68
|
const vmServiceUrl = deps.getVmServiceBase();
|
|
@@ -466,21 +468,23 @@ print(json.dumps({"clipboard": clipboard_text}))
|
|
|
466
468
|
"wait 60 seconds then call start_mds_on_vm. Falls back to manual command if automated install fails.", {
|
|
467
469
|
workspaceId: z.number().describe("Workspace ID"),
|
|
468
470
|
vmId: z.number().describe("VM ID from vm_list"),
|
|
471
|
+
region: regionParam,
|
|
469
472
|
enableRecording: z.boolean().default(true),
|
|
470
473
|
resolution: z.string().default("1280x720"),
|
|
471
474
|
installerUrl: z.string().optional().describe("Override installer URL (e.g. ngrok URL for testing)"),
|
|
472
|
-
}, async ({ workspaceId, vmId, enableRecording, resolution, installerUrl }, extra) => {
|
|
475
|
+
}, async ({ workspaceId, vmId, region, enableRecording, resolution, installerUrl }, extra) => {
|
|
473
476
|
const vm = getCachedVm(vmId);
|
|
474
477
|
if (!vm) {
|
|
475
478
|
return text("VM not found in cache. Run vm_list first to discover available VMs.");
|
|
476
479
|
}
|
|
477
480
|
const scriptUrl = installerUrl || INSTALL_SCRIPT_URL;
|
|
478
481
|
const key = vm.api_key;
|
|
482
|
+
const wsRegion = region ?? getWorkspaceRegion(workspaceId);
|
|
479
483
|
// Fetch VM credentials for auto-logon (ensures active desktop session for RPA)
|
|
480
484
|
let autoLogonUser = "";
|
|
481
485
|
let autoLogonPass = "";
|
|
482
486
|
try {
|
|
483
|
-
const authToken = deps.getAuthToken?.();
|
|
487
|
+
const authToken = deps.getAuthToken?.(wsRegion);
|
|
484
488
|
if (authToken) {
|
|
485
489
|
const credRes = await fetch(`${deps.getVmServiceBase()}/workspaces/${workspaceId}/vms/${vmId}/credentials`, { headers: { "Authorization": `Bearer ${authToken}` } });
|
|
486
490
|
if (credRes.ok) {
|
|
@@ -511,7 +515,7 @@ print(json.dumps({"clipboard": clipboard_text}))
|
|
|
511
515
|
`powershell -ExecutionPolicy Bypass -File "C:\\temp\\install-mds.ps1" -VmApiKey '${psEscape(key || "")}'`,
|
|
512
516
|
].join("; ");
|
|
513
517
|
try {
|
|
514
|
-
const authToken = deps.getAuthToken?.();
|
|
518
|
+
const authToken = deps.getAuthToken?.(wsRegion);
|
|
515
519
|
if (!authToken) {
|
|
516
520
|
return text("No auth token available. Please re-authenticate the MCP.");
|
|
517
521
|
}
|
|
@@ -585,10 +589,12 @@ print(json.dumps({"clipboard": clipboard_text}))
|
|
|
585
589
|
"Returns step-by-step progress (8 steps total). When complete, proceed to vm_connect or start_mds_on_vm.", {
|
|
586
590
|
workspaceId: z.number().describe("Workspace ID"),
|
|
587
591
|
vmId: z.number().describe("VM ID"),
|
|
588
|
-
|
|
592
|
+
region: regionParam,
|
|
593
|
+
}, async ({ workspaceId, vmId, region }) => {
|
|
589
594
|
try {
|
|
595
|
+
const wsRegion = region ?? getWorkspaceRegion(workspaceId);
|
|
590
596
|
const vmServiceUrl = deps.getVmServiceBase();
|
|
591
|
-
const authToken = deps.getAuthToken?.();
|
|
597
|
+
const authToken = deps.getAuthToken?.(wsRegion);
|
|
592
598
|
if (!authToken)
|
|
593
599
|
return text("No auth token available.");
|
|
594
600
|
const res = await fetch(`${vmServiceUrl}/workspaces/${workspaceId}/vms/${vmId}/install-log`, { headers: { "Authorization": `Bearer ${authToken}` } });
|
|
@@ -660,11 +666,13 @@ print(json.dumps({"clipboard": clipboard_text}))
|
|
|
660
666
|
"Creates a one-shot scheduled task to launch MDS in the interactive desktop session.", {
|
|
661
667
|
workspaceId: z.number().describe("Workspace ID"),
|
|
662
668
|
vmId: z.number().describe("VM ID from vm_list"),
|
|
663
|
-
|
|
669
|
+
region: regionParam,
|
|
670
|
+
}, async ({ workspaceId, vmId, region }) => {
|
|
664
671
|
const vm = getCachedVm(vmId);
|
|
665
672
|
if (!vm) {
|
|
666
673
|
return text("VM not found in cache. Run vm_list first.");
|
|
667
674
|
}
|
|
675
|
+
const wsRegion = region ?? getWorkspaceRegion(workspaceId);
|
|
668
676
|
// PowerShell script that starts MDS in the interactive session
|
|
669
677
|
// Uses WMI to find the logged-on user (more reliable than `query session`)
|
|
670
678
|
const startScript = `
|
|
@@ -758,7 +766,7 @@ if ($proc) {
|
|
|
758
766
|
`.trim();
|
|
759
767
|
try {
|
|
760
768
|
const vmServiceUrl = deps.getVmServiceBase();
|
|
761
|
-
const authToken = deps.getAuthToken?.();
|
|
769
|
+
const authToken = deps.getAuthToken?.(wsRegion);
|
|
762
770
|
if (!authToken)
|
|
763
771
|
return text("No auth token available. Please re-authenticate the MCP.");
|
|
764
772
|
const res = await fetch(`${vmServiceUrl}/workspaces/${workspaceId}/vms/${vmId}/run-script`, {
|
package/dist/tools/vm.js.map
CHANGED
|
@@ -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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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@minicor/mcp-server",
|
|
3
|
-
"version": "3.2.
|
|
3
|
+
"version": "3.2.2",
|
|
4
4
|
"description": "Desktop and browser RPA automation, workflow management, and AI-powered debugging for the Minicor platform. Formerly Laminar.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/lib.js",
|
|
@@ -53,7 +53,8 @@
|
|
|
53
53
|
"mcpName": "io.github.minicor/mcp-server",
|
|
54
54
|
"license": "MIT",
|
|
55
55
|
"dependencies": {
|
|
56
|
-
"@modelcontextprotocol/sdk": "^1.12.1"
|
|
56
|
+
"@modelcontextprotocol/sdk": "^1.12.1",
|
|
57
|
+
"zod": "^4.3.6"
|
|
57
58
|
},
|
|
58
59
|
"devDependencies": {
|
|
59
60
|
"@types/node": "^22.13.4",
|