@minicor/mcp-server 2.0.8 → 3.0.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.
- package/README.md +29 -2
- package/dist/__tests__/state.test.d.ts +2 -0
- package/dist/__tests__/state.test.d.ts.map +1 -0
- package/dist/__tests__/state.test.js +90 -0
- package/dist/__tests__/state.test.js.map +1 -0
- package/dist/__tests__/vm-service-client.test.d.ts +2 -0
- package/dist/__tests__/vm-service-client.test.d.ts.map +1 -0
- package/dist/__tests__/vm-service-client.test.js +80 -0
- package/dist/__tests__/vm-service-client.test.js.map +1 -0
- package/dist/agent-service-client.d.ts +34 -0
- package/dist/agent-service-client.d.ts.map +1 -0
- package/dist/agent-service-client.js +64 -0
- package/dist/agent-service-client.js.map +1 -0
- package/dist/helpers.d.ts +1 -1
- package/dist/helpers.d.ts.map +1 -1
- package/dist/helpers.js +1 -1
- package/dist/helpers.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +13 -0
- package/dist/index.js.map +1 -1
- package/dist/lib.d.ts +2 -0
- package/dist/lib.d.ts.map +1 -1
- package/dist/lib.js +8 -0
- package/dist/lib.js.map +1 -1
- package/dist/prompts/build-rpa.d.ts.map +1 -1
- package/dist/prompts/build-rpa.js +39 -5
- package/dist/prompts/build-rpa.js.map +1 -1
- package/dist/state.d.ts +10 -0
- package/dist/state.d.ts.map +1 -1
- package/dist/state.js +9 -0
- package/dist/state.js.map +1 -1
- package/dist/tools/{stats.d.ts → agents.d.ts} +1 -1
- package/dist/tools/agents.d.ts.map +1 -0
- package/dist/tools/agents.js +78 -0
- package/dist/tools/agents.js.map +1 -0
- package/dist/tools/issues.d.ts.map +1 -1
- package/dist/tools/issues.js +12 -9
- package/dist/tools/issues.js.map +1 -1
- package/dist/tools/vm.d.ts.map +1 -1
- package/dist/tools/vm.js +81 -12
- package/dist/tools/vm.js.map +1 -1
- package/dist/types.d.ts +3 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/vm-service-client.d.ts +24 -0
- package/dist/vm-service-client.d.ts.map +1 -0
- package/dist/vm-service-client.js +23 -0
- package/dist/vm-service-client.js.map +1 -0
- package/package.json +2 -2
- package/dist/browser-client.d.ts +0 -42
- package/dist/browser-client.d.ts.map +0 -1
- package/dist/browser-client.js +0 -66
- package/dist/browser-client.js.map +0 -1
- package/dist/prompts/build-browser-rpa.d.ts +0 -3
- package/dist/prompts/build-browser-rpa.d.ts.map +0 -1
- package/dist/prompts/build-browser-rpa.js +0 -90
- package/dist/prompts/build-browser-rpa.js.map +0 -1
- package/dist/prompts/build-nerve-rpa.d.ts +0 -3
- package/dist/prompts/build-nerve-rpa.d.ts.map +0 -1
- package/dist/prompts/build-nerve-rpa.js +0 -148
- package/dist/prompts/build-nerve-rpa.js.map +0 -1
- package/dist/services.d.ts +0 -61
- package/dist/services.d.ts.map +0 -1
- package/dist/services.js +0 -249
- package/dist/services.js.map +0 -1
- package/dist/tools/browser.d.ts +0 -3
- package/dist/tools/browser.d.ts.map +0 -1
- package/dist/tools/browser.js +0 -254
- package/dist/tools/browser.js.map +0 -1
- package/dist/tools/cron.d.ts +0 -3
- package/dist/tools/cron.d.ts.map +0 -1
- package/dist/tools/cron.js +0 -168
- package/dist/tools/cron.js.map +0 -1
- package/dist/tools/elasticsearch.d.ts +0 -3
- package/dist/tools/elasticsearch.d.ts.map +0 -1
- package/dist/tools/elasticsearch.js +0 -248
- package/dist/tools/elasticsearch.js.map +0 -1
- package/dist/tools/stats.d.ts.map +0 -1
- package/dist/tools/stats.js +0 -18
- package/dist/tools/stats.js.map +0 -1
|
@@ -173,7 +173,10 @@ Before writing any automation:
|
|
|
173
173
|
- \`vm_screenshot\` immediately after
|
|
174
174
|
- If result is wrong, go back to (b)
|
|
175
175
|
|
|
176
|
-
**e. SAVE — Call \`create_rpa_flow\` (only after c + d pass)**
|
|
176
|
+
**e. SAVE — Call \`create_rpa_flow\` (only after c + d pass) — then test it through Minicor individually**
|
|
177
|
+
- After saving, run \`execute_workflow_async\` with \`start_from_step\`/\`end_at_step\` to isolate this step
|
|
178
|
+
- Poll \`get_execution_status\`, then \`vm_screenshot\` to verify the Minicor-executed result
|
|
179
|
+
- Only proceed to the next step once this one passes through the real executor
|
|
177
180
|
- Pass the validated Python script, step name, description, flowId, and executionOrder
|
|
178
181
|
- The tool handles all JS wrapping automatically
|
|
179
182
|
- For browser/CDP automations: set \`dispatchPattern: "browser"\` — routes to \`/execute/browser\` (parallel-safe)
|
|
@@ -215,10 +218,11 @@ mrn = data.input.mrn # WRONG — data object doesn't exist in Python
|
|
|
215
218
|
- \`data.input\` interpolation only works through the JS wrapper
|
|
216
219
|
- Step-to-step data flow (\`data.step_N\`) only works in the real executor
|
|
217
220
|
|
|
218
|
-
**After saving ALL steps, you MUST test through Minicor:**
|
|
221
|
+
**After saving ALL steps, you MUST test end-to-end through Minicor:**
|
|
219
222
|
|
|
220
|
-
a. \`
|
|
221
|
-
|
|
223
|
+
a. \`execute_workflow_async\` with **real input data** and a **configurationId** — use async so you can monitor
|
|
224
|
+
a2. Poll \`get_execution_status\` every 5-10s and take \`vm_screenshot\` at intervals to observe progress
|
|
225
|
+
b. If a step fails → \`diagnose_execution\` + \`vm_screenshot\` to identify the issue
|
|
222
226
|
c. Use \`test_workflow_step\` to re-run individual failing steps through Minicor (NOT \`vm_execute_script\`)
|
|
223
227
|
d. Fix with \`update_flow\`, then re-test through \`execute_workflow\` again
|
|
224
228
|
e. Iterate until the **full workflow passes end-to-end** through \`execute_workflow\`
|
|
@@ -229,6 +233,21 @@ e. Iterate until the **full workflow passes end-to-end** through \`execute_workf
|
|
|
229
233
|
- Present completed workflow summary with execution results from Minicor
|
|
230
234
|
- Make adjustments, re-validate changed steps through \`execute_workflow\`
|
|
231
235
|
|
|
236
|
+
### 8. Offer Agent Setup
|
|
237
|
+
After a workflow passes end-to-end, offer to create an agent to manage it:
|
|
238
|
+
|
|
239
|
+
"Workflow is working. Want me to set up a monitoring agent? It can:
|
|
240
|
+
- **Watch for failures** and auto-recover (monitor mode)
|
|
241
|
+
- **Run on a schedule** (scheduled mode, e.g. daily at 9am)
|
|
242
|
+
- **Notify Slack** when runs complete or fail"
|
|
243
|
+
|
|
244
|
+
If the user agrees, call \`create_agent\` with:
|
|
245
|
+
- \`mode: "monitor"\` + \`watchWorkflowId\` for failure monitoring
|
|
246
|
+
- \`mode: "scheduled"\` + a cron expression for recurring runs
|
|
247
|
+
- \`task\`: describe the recovery/check behavior (e.g. "When this workflow fails, take a screenshot, check if the login expired, and re-run")
|
|
248
|
+
- \`vmUrl\`: the same VM URL used during the build
|
|
249
|
+
- Same \`workspaceId\`
|
|
250
|
+
|
|
232
251
|
## Data Extraction Strategy
|
|
233
252
|
|
|
234
253
|
When you need to READ data from the screen (not just click/type), follow this priority order. **Do NOT rely solely on screenshots for data reading.**
|
|
@@ -279,6 +298,20 @@ When you need to READ data from the screen (not just click/type), follow this pr
|
|
|
279
298
|
- **\`batch_test_rpa\`** — run the workflow with multiple test inputs.
|
|
280
299
|
- **Video Recordings** — Minicor records MP4 videos of each RPA step execution. Use \`get_full_execution\` to see recording references (\`recording.blobName\`). These can be viewed in the Minicor platform for visual debugging.
|
|
281
300
|
|
|
301
|
+
## State Reset (Idempotency)
|
|
302
|
+
|
|
303
|
+
The workflow MUST return the system to its original state so it can run repeatedly:
|
|
304
|
+
- Last step must reset — close dialogs, navigate back to the starting screen
|
|
305
|
+
- Don't include login/window-opening — those belong in a separate setup workflow
|
|
306
|
+
- After a successful run, immediately re-run to verify idempotency
|
|
307
|
+
|
|
308
|
+
## Context Persistence
|
|
309
|
+
|
|
310
|
+
Use \`create_issue\` / \`update_issue\` to persist learned context across builds:
|
|
311
|
+
- \`[Agent:<name>] Rules\` — app-specific behaviors (e.g., "Reports tab takes 15s to load")
|
|
312
|
+
- \`[Agent:<name>] Context\` — persistent facts (URLs, credential rotation dates)
|
|
313
|
+
- Read these at the start of future builds to avoid re-learning things
|
|
314
|
+
|
|
282
315
|
## Important Rules
|
|
283
316
|
- **VALIDATE BEFORE SAVING** — no exceptions unless user explicitly opts out
|
|
284
317
|
- **TEST THROUGH MINICOR** — \`vm_execute_script\` is for prototyping. Always run \`execute_workflow\` with real inputs before declaring done.
|
|
@@ -290,7 +323,8 @@ When you need to READ data from the screen (not just click/type), follow this pr
|
|
|
290
323
|
- **Start simple** — get basic automation working before adding sophistication
|
|
291
324
|
- **Add waits** — use \`time.sleep()\` or element-wait patterns between actions
|
|
292
325
|
- **Handle errors** — try/except with meaningful messages
|
|
293
|
-
- **Keep scripts focused** — one logical action per step
|
|
326
|
+
- **Keep scripts focused** — one logical action per step
|
|
327
|
+
- **Reset to original state** — every workflow must be idempotent (see State Reset section above)`,
|
|
294
328
|
},
|
|
295
329
|
},
|
|
296
330
|
],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-rpa.js","sourceRoot":"","sources":["../../src/prompts/build-rpa.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,UAAU,QAAQ,CAAC,EAAE,MAAM,EAAY;IAC3C,MAAM,CAAC,MAAM,CACX,oBAAoB,EACpB,wSAAwS,EACxS;QACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;QACxD,IAAI,EAAE,CAAC;aACJ,MAAM,EAAE;aACR,QAAQ,CACP,iHAAiH,CAClH;QACH,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,QAAQ,CACP,uFAAuF,CACxF;QACH,UAAU,EAAE,CAAC;aACV,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,sEAAsE,CACvE;KACJ,EACD,KAAK,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC;QACrD,QAAQ,EAAE;YACR;gBACE,IAAI,EAAE,MAAe;gBACrB,OAAO,EAAE;oBACP,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE;;;EAGhB,IAAI;;;EAGJ,OAAO;;;MAGH,WAAW,GAAG,UAAU,CAAC,CAAC,CAAC,2BAA2B,UAAU,+BAA+B,CAAC,CAAC,CAAC,8CAA8C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAoH1I,OAAO
|
|
1
|
+
{"version":3,"file":"build-rpa.js","sourceRoot":"","sources":["../../src/prompts/build-rpa.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,UAAU,QAAQ,CAAC,EAAE,MAAM,EAAY;IAC3C,MAAM,CAAC,MAAM,CACX,oBAAoB,EACpB,wSAAwS,EACxS;QACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;QACxD,IAAI,EAAE,CAAC;aACJ,MAAM,EAAE;aACR,QAAQ,CACP,iHAAiH,CAClH;QACH,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,QAAQ,CACP,uFAAuF,CACxF;QACH,UAAU,EAAE,CAAC;aACV,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,sEAAsE,CACvE;KACJ,EACD,KAAK,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC;QACrD,QAAQ,EAAE;YACR;gBACE,IAAI,EAAE,MAAe;gBACrB,OAAO,EAAE;oBACP,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE;;;EAGhB,IAAI;;;EAGJ,OAAO;;;MAGH,WAAW,GAAG,UAAU,CAAC,CAAC,CAAC,2BAA2B,UAAU,+BAA+B,CAAC,CAAC,CAAC,8CAA8C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAoH1I,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kGAqL+E;iBACvF;aACF;SACF;KACF,CAAC,CACH,CAAC;AACJ,CAAC"}
|
package/dist/state.d.ts
CHANGED
|
@@ -3,12 +3,22 @@
|
|
|
3
3
|
* Imported by tool modules that need to read/write connection state.
|
|
4
4
|
*/
|
|
5
5
|
import type * as lds from "./lds-client.js";
|
|
6
|
+
import type { VmInfo } from "./vm-service-client.js";
|
|
6
7
|
export interface LdsConnection {
|
|
7
8
|
url: string;
|
|
8
9
|
apiKey?: string;
|
|
9
10
|
serviceId?: string;
|
|
11
|
+
vmId?: number;
|
|
12
|
+
vmName?: string;
|
|
10
13
|
}
|
|
11
14
|
export declare let ldsConnection: LdsConnection | null;
|
|
12
15
|
export declare function setLdsConnection(conn: LdsConnection | null): void;
|
|
13
16
|
export declare function ldsAuth(): lds.LdsAuth | undefined;
|
|
17
|
+
export interface VmCacheEntry {
|
|
18
|
+
vms: VmInfo[];
|
|
19
|
+
fetchedAt: number;
|
|
20
|
+
}
|
|
21
|
+
export declare let vmCache: VmCacheEntry | null;
|
|
22
|
+
export declare function setVmCache(entry: VmCacheEntry | null): void;
|
|
23
|
+
export declare function getCachedVm(vmId: number): VmInfo | undefined;
|
|
14
24
|
//# sourceMappingURL=state.d.ts.map
|
package/dist/state.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,KAAK,GAAG,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,KAAK,GAAG,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,IAAI,aAAa,EAAE,aAAa,GAAG,IAAW,CAAC;AAEtD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI,QAE1D;AAED,wBAAgB,OAAO,IAAI,GAAG,CAAC,OAAO,GAAG,SAAS,CAKjD;AAID,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,eAAO,IAAI,OAAO,EAAE,YAAY,GAAG,IAAW,CAAC;AAE/C,wBAAgB,UAAU,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI,QAEpD;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAG5D"}
|
package/dist/state.js
CHANGED
|
@@ -12,4 +12,13 @@ export function ldsAuth() {
|
|
|
12
12
|
}
|
|
13
13
|
return undefined;
|
|
14
14
|
}
|
|
15
|
+
export let vmCache = null;
|
|
16
|
+
export function setVmCache(entry) {
|
|
17
|
+
vmCache = entry;
|
|
18
|
+
}
|
|
19
|
+
export function getCachedVm(vmId) {
|
|
20
|
+
if (!vmCache)
|
|
21
|
+
return undefined;
|
|
22
|
+
return vmCache.vms.find((vm) => vm.id === vmId);
|
|
23
|
+
}
|
|
15
24
|
//# sourceMappingURL=state.js.map
|
package/dist/state.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.js","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"state.js","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAaH,MAAM,CAAC,IAAI,aAAa,GAAyB,IAAI,CAAC;AAEtD,MAAM,UAAU,gBAAgB,CAAC,IAA0B;IACzD,aAAa,GAAG,IAAI,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,OAAO;IACrB,IAAI,aAAa,EAAE,MAAM,IAAI,aAAa,EAAE,SAAS,EAAE,CAAC;QACtD,OAAO,EAAE,MAAM,EAAE,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,aAAa,CAAC,SAAS,EAAE,CAAC;IAC9E,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AASD,MAAM,CAAC,IAAI,OAAO,GAAwB,IAAI,CAAC;AAE/C,MAAM,UAAU,UAAU,CAAC,KAA0B;IACnD,OAAO,GAAG,KAAK,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,IAAY;IACtC,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAC/B,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC;AAClD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../../src/tools/agents.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,wBAAgB,QAAQ,CAAC,IAAI,EAAE,QAAQ,QAkHtC"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { safe } from "../helpers.js";
|
|
3
|
+
import { AgentServiceClient } from "../agent-service-client.js";
|
|
4
|
+
export function register(deps) {
|
|
5
|
+
const { server } = deps;
|
|
6
|
+
function getClient() {
|
|
7
|
+
const token = deps.getAuthToken?.() || "";
|
|
8
|
+
return new AgentServiceClient(deps.getApiBase(), token);
|
|
9
|
+
}
|
|
10
|
+
server.tool("list_agents", "List agents in a workspace. Agents are autonomous runners that can execute tasks on VMs, monitor workflows, or run on a schedule.", {
|
|
11
|
+
workspaceId: z
|
|
12
|
+
.number()
|
|
13
|
+
.optional()
|
|
14
|
+
.describe("Filter by workspace ID"),
|
|
15
|
+
}, async ({ workspaceId }) => safe(() => getClient().listAgents(workspaceId)));
|
|
16
|
+
server.tool("get_agent", "Get details of a specific agent including its task, mode, VM URL, and run history stats", {
|
|
17
|
+
agentId: z.string().describe("Agent ID (e.g. agt_abc123)"),
|
|
18
|
+
}, async ({ agentId }) => safe(() => getClient().getAgent(agentId)));
|
|
19
|
+
server.tool("create_agent", "Create a new agent in a workspace. The agent can run tasks on a VM using MCP tools. Modes: 'on-demand' (manual/API trigger), 'scheduled' (cron), 'monitor' (triggered by workflow failures).", {
|
|
20
|
+
name: z.string().describe("Agent name"),
|
|
21
|
+
task: z
|
|
22
|
+
.string()
|
|
23
|
+
.describe("The task/instructions for the agent (what it should do when triggered)"),
|
|
24
|
+
vmUrl: z.string().describe("Cloudflare Tunnel URL of the target VM"),
|
|
25
|
+
workspaceId: z.number().describe("Workspace ID"),
|
|
26
|
+
model: z
|
|
27
|
+
.string()
|
|
28
|
+
.optional()
|
|
29
|
+
.describe("Model to use (default: anthropic-sonnet-4)"),
|
|
30
|
+
maxSteps: z
|
|
31
|
+
.number()
|
|
32
|
+
.optional()
|
|
33
|
+
.describe("Max tool-calling steps (default: 50)"),
|
|
34
|
+
mode: z
|
|
35
|
+
.enum(["on-demand", "scheduled", "monitor"])
|
|
36
|
+
.optional()
|
|
37
|
+
.describe("Trigger mode (default: on-demand)"),
|
|
38
|
+
serviceId: z
|
|
39
|
+
.string()
|
|
40
|
+
.optional()
|
|
41
|
+
.describe("LDS service ID for VM authentication"),
|
|
42
|
+
watchWorkflowId: z
|
|
43
|
+
.number()
|
|
44
|
+
.optional()
|
|
45
|
+
.describe("Workflow ID to monitor (for monitor mode)"),
|
|
46
|
+
watchWorkflowName: z
|
|
47
|
+
.string()
|
|
48
|
+
.optional()
|
|
49
|
+
.describe("Workflow name being monitored (for display)"),
|
|
50
|
+
recoveryTask: z
|
|
51
|
+
.string()
|
|
52
|
+
.optional()
|
|
53
|
+
.describe("Recovery instructions when a monitored workflow fails"),
|
|
54
|
+
slackWebhookUrl: z
|
|
55
|
+
.string()
|
|
56
|
+
.optional()
|
|
57
|
+
.describe("Slack webhook URL for run notifications"),
|
|
58
|
+
slackChannel: z
|
|
59
|
+
.string()
|
|
60
|
+
.optional()
|
|
61
|
+
.describe("Slack channel name for notifications"),
|
|
62
|
+
}, async ({ name, task, vmUrl, workspaceId, model, maxSteps, mode, serviceId, watchWorkflowId, watchWorkflowName, recoveryTask, slackWebhookUrl, slackChannel, }) => safe(() => getClient().createAgent({
|
|
63
|
+
name,
|
|
64
|
+
task,
|
|
65
|
+
vm_url: vmUrl,
|
|
66
|
+
workspace_id: workspaceId,
|
|
67
|
+
model,
|
|
68
|
+
max_steps: maxSteps,
|
|
69
|
+
mode,
|
|
70
|
+
service_id: serviceId,
|
|
71
|
+
watch_workflow_id: watchWorkflowId,
|
|
72
|
+
watch_workflow_name: watchWorkflowName,
|
|
73
|
+
recovery_task: recoveryTask,
|
|
74
|
+
slack_webhook_url: slackWebhookUrl,
|
|
75
|
+
slack_channel: slackChannel,
|
|
76
|
+
})));
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=agents.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agents.js","sourceRoot":"","sources":["../../src/tools/agents.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"issues.d.ts","sourceRoot":"","sources":["../../src/tools/issues.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,wBAAgB,QAAQ,CAAC,IAAI,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"issues.d.ts","sourceRoot":"","sources":["../../src/tools/issues.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,wBAAgB,QAAQ,CAAC,IAAI,EAAE,QAAQ,QA2EtC"}
|
package/dist/tools/issues.js
CHANGED
|
@@ -2,15 +2,15 @@ import { z } from "zod";
|
|
|
2
2
|
import { safe } from "../helpers.js";
|
|
3
3
|
export function register(deps) {
|
|
4
4
|
const { server } = deps;
|
|
5
|
-
server.tool("list_issues", "List all issues in a workspace", { workspaceId: z.number().describe("Workspace ID") }, async ({ workspaceId }) => safe(() => deps.client().listIssues(workspaceId)));
|
|
6
|
-
server.tool("get_issue", "Get issue
|
|
5
|
+
server.tool("list_issues", "List all issues in a workspace. Issues with titles starting with '[Agent:' are agent-managed context (rules, session notes, persistent state).", { workspaceId: z.number().describe("Workspace ID") }, async ({ workspaceId }) => safe(() => deps.client().listIssues(workspaceId)));
|
|
6
|
+
server.tool("get_issue", "Get a specific issue by ID, including its full description", {
|
|
7
7
|
workspaceId: z.number().describe("Workspace ID"),
|
|
8
8
|
issueId: z.number().describe("Issue ID"),
|
|
9
9
|
}, async ({ workspaceId, issueId }) => safe(() => deps.client().getIssue(workspaceId, issueId)));
|
|
10
|
-
server.tool("create_issue", "Create
|
|
10
|
+
server.tool("create_issue", "Create an issue in a workspace. Agents use this to persist context across runs — use title prefix '[Agent:<name>] Rules|Context|Session YYYY-MM-DD' and Markdown description.", {
|
|
11
11
|
workspaceId: z.number().describe("Workspace ID"),
|
|
12
12
|
title: z.string().describe("Issue title"),
|
|
13
|
-
description: z.string().describe("Issue description"),
|
|
13
|
+
description: z.string().describe("Issue description (Markdown supported)"),
|
|
14
14
|
assignedUserId: z
|
|
15
15
|
.number()
|
|
16
16
|
.optional()
|
|
@@ -20,18 +20,21 @@ export function register(deps) {
|
|
|
20
20
|
description,
|
|
21
21
|
assignedUserId,
|
|
22
22
|
})));
|
|
23
|
-
server.tool("update_issue", "Update an existing issue
|
|
23
|
+
server.tool("update_issue", "Update an existing issue's title, description, status, or assignee", {
|
|
24
24
|
workspaceId: z.number().describe("Workspace ID"),
|
|
25
25
|
issueId: z.number().describe("Issue ID"),
|
|
26
26
|
title: z.string().optional().describe("New title"),
|
|
27
|
-
description: z.string().optional().describe("New description"),
|
|
27
|
+
description: z.string().optional().describe("New description (Markdown)"),
|
|
28
28
|
status: z
|
|
29
29
|
.enum(["OPEN", "IN_PROGRESS", "BLOCKED", "REVIEW", "DONE", "CLOSED"])
|
|
30
30
|
.optional()
|
|
31
31
|
.describe("New status"),
|
|
32
|
-
assignedUserId: z
|
|
33
|
-
|
|
34
|
-
|
|
32
|
+
assignedUserId: z
|
|
33
|
+
.number()
|
|
34
|
+
.optional()
|
|
35
|
+
.describe("User ID to assign the issue to"),
|
|
36
|
+
}, async ({ workspaceId, issueId, ...updates }) => safe(() => deps.client().updateIssue(workspaceId, issueId, updates)));
|
|
37
|
+
server.tool("delete_issue", "Delete an issue from a workspace", {
|
|
35
38
|
workspaceId: z.number().describe("Workspace ID"),
|
|
36
39
|
issueId: z.number().describe("Issue ID"),
|
|
37
40
|
}, async ({ workspaceId, issueId }) => safe(() => deps.client().deleteIssue(workspaceId, issueId)));
|
package/dist/tools/issues.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"issues.js","sourceRoot":"","sources":["../../src/tools/issues.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAGrC,MAAM,UAAU,QAAQ,CAAC,IAAc;IACrC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAExB,MAAM,CAAC,IAAI,CACT,aAAa,EACb,
|
|
1
|
+
{"version":3,"file":"issues.js","sourceRoot":"","sources":["../../src/tools/issues.ts"],"names":[],"mappings":"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"}
|
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":"
|
|
1
|
+
{"version":3,"file":"vm.d.ts","sourceRoot":"","sources":["../../src/tools/vm.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAO5C,wBAAgB,QAAQ,CAAC,IAAI,EAAE,QAAQ,QAwbtC"}
|
package/dist/tools/vm.js
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
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 } 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";
|
|
6
8
|
function requireVM() {
|
|
7
9
|
if (!ldsConnection)
|
|
8
10
|
return text(NOT_CONNECTED_VM);
|
|
@@ -10,19 +12,80 @@ function requireVM() {
|
|
|
10
12
|
}
|
|
11
13
|
export function register(deps) {
|
|
12
14
|
const { server } = deps;
|
|
15
|
+
// ── VM discovery ─────────────────────────────────────────────
|
|
16
|
+
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.", {
|
|
17
|
+
workspaceId: z.number().describe("Workspace ID"),
|
|
18
|
+
region: z.string().optional().describe("Filter by region (e.g. 'us', 'ca')"),
|
|
19
|
+
channelId: z.string().optional().describe("Filter by channel ID"),
|
|
20
|
+
}, async ({ workspaceId, region, channelId }) => {
|
|
21
|
+
try {
|
|
22
|
+
const keys = await deps.client().listApiKeys(workspaceId);
|
|
23
|
+
const apiKeyList = Array.isArray(keys) ? keys : keys?.api_keys ?? keys?.data ?? [];
|
|
24
|
+
if (!apiKeyList.length) {
|
|
25
|
+
return text(`No API keys found for workspace ${workspaceId}. Create one in the Laminar dashboard.`);
|
|
26
|
+
}
|
|
27
|
+
const workspaceApiKey = apiKeyList[0].apiKey ?? apiKeyList[0].api_key ?? apiKeyList[0].key ?? apiKeyList[0];
|
|
28
|
+
const effectiveRegion = region ?? apiBaseToRegion(deps.getApiBase());
|
|
29
|
+
const vms = await vmService.listVms(deps.getVmServiceBase(), typeof workspaceApiKey === "string" ? workspaceApiKey : String(workspaceApiKey), { region: effectiveRegion, channelId });
|
|
30
|
+
setVmCache({ vms, fetchedAt: Date.now() });
|
|
31
|
+
return ok({
|
|
32
|
+
count: vms.length,
|
|
33
|
+
vms: vms.map((vm) => ({
|
|
34
|
+
id: vm.id,
|
|
35
|
+
name: vm.vm_name,
|
|
36
|
+
status: vm.deployment_status ?? vm.status,
|
|
37
|
+
agent_status: vm.agent_status,
|
|
38
|
+
tunnel_url: vm.tunnel_url,
|
|
39
|
+
description: vm.description,
|
|
40
|
+
})),
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
catch (e) {
|
|
44
|
+
return text(`Failed to list VMs: ${e.message}`);
|
|
45
|
+
}
|
|
46
|
+
});
|
|
13
47
|
// ── Connection management ─────────────────────────────────
|
|
14
|
-
server.tool("vm_connect", "Connect to a VM
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
48
|
+
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.", {
|
|
49
|
+
vmId: z.number().optional().describe("VM ID from vm_list — auto-fills url, apiKey, serviceId"),
|
|
50
|
+
url: z.string().optional().describe("MDS base URL (Cloudflare Tunnel) — use this OR vmId"),
|
|
51
|
+
apiKey: z.string().optional().describe("MDS API key (not needed with vmId)"),
|
|
52
|
+
serviceId: z.string().optional().describe("MDS service ID (not needed with vmId)"),
|
|
53
|
+
}, async ({ vmId, url, apiKey, serviceId }) => {
|
|
54
|
+
let connectUrl = url;
|
|
55
|
+
let connectApiKey = apiKey;
|
|
56
|
+
let connectServiceId = serviceId;
|
|
57
|
+
let vmName;
|
|
58
|
+
if (vmId) {
|
|
59
|
+
const vm = getCachedVm(vmId);
|
|
60
|
+
if (!vm) {
|
|
61
|
+
return text("VM not found in cache. Run vm_list first to discover available VMs.");
|
|
62
|
+
}
|
|
63
|
+
if (!vm.tunnel_url) {
|
|
64
|
+
return text(`VM "${vm.vm_name}" has no tunnel URL — it may not be running.`);
|
|
65
|
+
}
|
|
66
|
+
connectUrl = vm.tunnel_url;
|
|
67
|
+
connectApiKey = vm.api_key;
|
|
68
|
+
connectServiceId = vm.service_id;
|
|
69
|
+
vmName = vm.vm_name;
|
|
70
|
+
}
|
|
71
|
+
if (!connectUrl) {
|
|
72
|
+
return text("Provide either vmId (from vm_list) or url to connect.");
|
|
73
|
+
}
|
|
19
74
|
try {
|
|
20
|
-
const health = await lds.health(
|
|
21
|
-
setLdsConnection({
|
|
75
|
+
const health = await lds.health(connectUrl);
|
|
76
|
+
setLdsConnection({
|
|
77
|
+
url: connectUrl,
|
|
78
|
+
apiKey: connectApiKey,
|
|
79
|
+
serviceId: connectServiceId,
|
|
80
|
+
vmId,
|
|
81
|
+
vmName,
|
|
82
|
+
});
|
|
22
83
|
return ok({
|
|
23
84
|
connected: true,
|
|
24
|
-
url,
|
|
25
|
-
|
|
85
|
+
url: connectUrl,
|
|
86
|
+
vmId,
|
|
87
|
+
vmName,
|
|
88
|
+
authenticated: !!(connectApiKey && connectServiceId),
|
|
26
89
|
service: health,
|
|
27
90
|
next_steps: [
|
|
28
91
|
"Take vm_screenshot to see the current desktop state",
|
|
@@ -38,7 +101,7 @@ export function register(deps) {
|
|
|
38
101
|
});
|
|
39
102
|
}
|
|
40
103
|
catch (e) {
|
|
41
|
-
return text(`Failed to connect to VM at ${
|
|
104
|
+
return text(`Failed to connect to VM at ${connectUrl}: ${e.message}`);
|
|
42
105
|
}
|
|
43
106
|
});
|
|
44
107
|
server.tool("vm_disconnect", "Disconnect from the current VM", {}, async () => {
|
|
@@ -51,7 +114,13 @@ export function register(deps) {
|
|
|
51
114
|
return err;
|
|
52
115
|
try {
|
|
53
116
|
const health = await lds.health(ldsConnection.url);
|
|
54
|
-
return ok({
|
|
117
|
+
return ok({
|
|
118
|
+
connected: true,
|
|
119
|
+
url: ldsConnection.url,
|
|
120
|
+
vmId: ldsConnection.vmId,
|
|
121
|
+
vmName: ldsConnection.vmName,
|
|
122
|
+
...health,
|
|
123
|
+
});
|
|
55
124
|
}
|
|
56
125
|
catch (e) {
|
|
57
126
|
return text(`VM unreachable: ${e.message}`);
|
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/dist/types.d.ts
CHANGED
|
@@ -7,5 +7,8 @@ export interface ToolDeps {
|
|
|
7
7
|
server: McpServer;
|
|
8
8
|
client: () => LaminarClient;
|
|
9
9
|
getApiBase: () => string;
|
|
10
|
+
getVmServiceBase: () => string;
|
|
11
|
+
/** The raw auth token (bearer or API key) for passing to proxied services. */
|
|
12
|
+
getAuthToken?: () => string;
|
|
10
13
|
}
|
|
11
14
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,SAAS,CAAC;IAClB,MAAM,EAAE,MAAM,aAAa,CAAC;IAC5B,UAAU,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,SAAS,CAAC;IAClB,MAAM,EAAE,MAAM,aAAa,CAAC;IAC5B,UAAU,EAAE,MAAM,MAAM,CAAC;IACzB,gBAAgB,EAAE,MAAM,MAAM,CAAC;IAC/B,8EAA8E;IAC9E,YAAY,CAAC,EAAE,MAAM,MAAM,CAAC;CAC7B"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Stateless HTTP client for the VM Manager service (abuja).
|
|
3
|
+
* Mirrors the lds-client.ts pattern — pure functions, no shared state.
|
|
4
|
+
*/
|
|
5
|
+
export interface VmInfo {
|
|
6
|
+
id: number;
|
|
7
|
+
vm_name: string;
|
|
8
|
+
status?: string;
|
|
9
|
+
deployment_status?: string;
|
|
10
|
+
tunnel_url: string | null;
|
|
11
|
+
api_key: string;
|
|
12
|
+
service_id: string;
|
|
13
|
+
channel_id?: string;
|
|
14
|
+
agent_status?: string;
|
|
15
|
+
description?: string;
|
|
16
|
+
tags?: string[] | null;
|
|
17
|
+
workspace_id?: string;
|
|
18
|
+
last_heartbeat_at?: string;
|
|
19
|
+
}
|
|
20
|
+
export declare function listVms(baseUrl: string, workspaceApiKey: string, opts?: {
|
|
21
|
+
region?: string;
|
|
22
|
+
channelId?: string;
|
|
23
|
+
}): Promise<VmInfo[]>;
|
|
24
|
+
//# sourceMappingURL=vm-service-client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vm-service-client.d.ts","sourceRoot":"","sources":["../src/vm-service-client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AASD,wBAAsB,OAAO,CAC3B,OAAO,EAAE,MAAM,EACf,eAAe,EAAE,MAAM,EACvB,IAAI,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAC7C,OAAO,CAAC,MAAM,EAAE,CAAC,CAkBnB"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Stateless HTTP client for the VM Manager service (abuja).
|
|
3
|
+
* Mirrors the lds-client.ts pattern — pure functions, no shared state.
|
|
4
|
+
*/
|
|
5
|
+
export async function listVms(baseUrl, workspaceApiKey, opts) {
|
|
6
|
+
const params = new URLSearchParams();
|
|
7
|
+
if (opts?.region)
|
|
8
|
+
params.set("region", opts.region);
|
|
9
|
+
if (opts?.channelId)
|
|
10
|
+
params.set("channel_id", opts.channelId);
|
|
11
|
+
const qs = params.toString();
|
|
12
|
+
const url = `${baseUrl}/vms/list${qs ? `?${qs}` : ""}`;
|
|
13
|
+
const res = await fetch(url, {
|
|
14
|
+
headers: { "X-API-KEY": workspaceApiKey },
|
|
15
|
+
});
|
|
16
|
+
if (!res.ok) {
|
|
17
|
+
const body = await res.text().catch(() => "");
|
|
18
|
+
throw new Error(`VM service returned ${res.status}: ${body}`);
|
|
19
|
+
}
|
|
20
|
+
const data = await res.json();
|
|
21
|
+
return data.vms;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=vm-service-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vm-service-client.js","sourceRoot":"","sources":["../src/vm-service-client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAyBH,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,OAAe,EACf,eAAuB,EACvB,IAA8C;IAE9C,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IACrC,IAAI,IAAI,EAAE,MAAM;QAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACpD,IAAI,IAAI,EAAE,SAAS;QAAE,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAC9D,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC7B,MAAM,GAAG,GAAG,GAAG,OAAO,YAAY,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IAEvD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QAC3B,OAAO,EAAE,EAAE,WAAW,EAAE,eAAe,EAAE;KAC1C,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,uBAAuB,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC;IAChE,CAAC;IAED,MAAM,IAAI,GAAoB,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;IAC/C,OAAO,IAAI,CAAC,GAAG,CAAC;AAClB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@minicor/mcp-server",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "3.0.0",
|
|
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",
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
],
|
|
25
25
|
"repository": {
|
|
26
26
|
"type": "git",
|
|
27
|
-
"url": "https://github.com/
|
|
27
|
+
"url": "git+https://github.com/laminar-run/mcp.git"
|
|
28
28
|
},
|
|
29
29
|
"homepage": "https://minicor.com",
|
|
30
30
|
"scripts": {
|
package/dist/browser-client.d.ts
DELETED
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Stateless HTTP client for Browser RPA sessions.
|
|
3
|
-
*
|
|
4
|
-
* Matches the session-based API pattern from Sully QA workspace:
|
|
5
|
-
* POST /sessions → create session
|
|
6
|
-
* POST /sessions/:id/act → send action
|
|
7
|
-
* POST /sessions/:id/extract → extract data
|
|
8
|
-
* GET /sessions/:id/screenshot → screenshot
|
|
9
|
-
* DELETE /sessions/:id → close session
|
|
10
|
-
*/
|
|
11
|
-
export interface BrowserAuth {
|
|
12
|
-
bearerToken: string;
|
|
13
|
-
}
|
|
14
|
-
export interface BrowserSessionResponse {
|
|
15
|
-
sessionId: string;
|
|
16
|
-
[key: string]: unknown;
|
|
17
|
-
}
|
|
18
|
-
export interface BrowserActResponse {
|
|
19
|
-
success?: boolean;
|
|
20
|
-
result?: unknown;
|
|
21
|
-
[key: string]: unknown;
|
|
22
|
-
}
|
|
23
|
-
export interface BrowserExtractResponse {
|
|
24
|
-
success?: boolean;
|
|
25
|
-
data?: unknown;
|
|
26
|
-
[key: string]: unknown;
|
|
27
|
-
}
|
|
28
|
-
export interface BrowserScreenshotResponse {
|
|
29
|
-
image?: string;
|
|
30
|
-
screenshot?: string;
|
|
31
|
-
[key: string]: unknown;
|
|
32
|
-
}
|
|
33
|
-
export declare function createSession(baseUrl: string, auth: BrowserAuth, opts?: {
|
|
34
|
-
slackChannelId?: string;
|
|
35
|
-
}): Promise<BrowserSessionResponse>;
|
|
36
|
-
export declare function act(baseUrl: string, sessionId: string, message: string, auth: BrowserAuth): Promise<BrowserActResponse>;
|
|
37
|
-
export declare function extract(baseUrl: string, sessionId: string, instructions: string, auth: BrowserAuth): Promise<BrowserExtractResponse>;
|
|
38
|
-
export declare function screenshot(baseUrl: string, sessionId: string, auth: BrowserAuth): Promise<BrowserScreenshotResponse>;
|
|
39
|
-
export declare function closeSession(baseUrl: string, sessionId: string, auth: BrowserAuth): Promise<{
|
|
40
|
-
closed: boolean;
|
|
41
|
-
}>;
|
|
42
|
-
//# sourceMappingURL=browser-client.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"browser-client.d.ts","sourceRoot":"","sources":["../src/browser-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,sBAAsB;IACrC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,yBAAyB;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAwBD,wBAAsB,aAAa,CACjC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,WAAW,EACjB,IAAI,CAAC,EAAE;IAAE,cAAc,CAAC,EAAE,MAAM,CAAA;CAAE,GACjC,OAAO,CAAC,sBAAsB,CAAC,CAOjC;AAED,wBAAsB,GAAG,CACvB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,WAAW,GAChB,OAAO,CAAC,kBAAkB,CAAC,CAO7B;AAED,wBAAsB,OAAO,CAC3B,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,WAAW,GAChB,OAAO,CAAC,sBAAsB,CAAC,CAOjC;AAED,wBAAsB,UAAU,CAC9B,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,WAAW,GAChB,OAAO,CAAC,yBAAyB,CAAC,CAKpC;AAED,wBAAsB,YAAY,CAChC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,WAAW,GAChB,OAAO,CAAC;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC,CAO9B"}
|