@carrierllc/mcp 0.2.1 → 0.2.3

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 (129) hide show
  1. package/dist/index.d.ts +0 -13
  2. package/dist/index.js +9374 -77
  3. package/dist/index.js.map +1 -1
  4. package/package.json +11 -10
  5. package/dist/apps/app-state.d.ts +0 -19
  6. package/dist/apps/app-state.d.ts.map +0 -1
  7. package/dist/apps/app-state.js +0 -28
  8. package/dist/apps/app-state.js.map +0 -1
  9. package/dist/apps/balance-topup.d.ts +0 -19
  10. package/dist/apps/balance-topup.d.ts.map +0 -1
  11. package/dist/apps/balance-topup.js +0 -121
  12. package/dist/apps/balance-topup.js.map +0 -1
  13. package/dist/apps/fleet-health-app.d.ts +0 -29
  14. package/dist/apps/fleet-health-app.d.ts.map +0 -1
  15. package/dist/apps/fleet-health-app.js +0 -152
  16. package/dist/apps/fleet-health-app.js.map +0 -1
  17. package/dist/apps/index.d.ts +0 -37
  18. package/dist/apps/index.d.ts.map +0 -1
  19. package/dist/apps/index.js +0 -42
  20. package/dist/apps/index.js.map +0 -1
  21. package/dist/apps/provisioning-wizard.d.ts +0 -11
  22. package/dist/apps/provisioning-wizard.d.ts.map +0 -1
  23. package/dist/apps/provisioning-wizard.js +0 -345
  24. package/dist/apps/provisioning-wizard.js.map +0 -1
  25. package/dist/audit.d.ts +0 -31
  26. package/dist/audit.d.ts.map +0 -1
  27. package/dist/audit.js +0 -42
  28. package/dist/audit.js.map +0 -1
  29. package/dist/billing-thresholds.d.ts +0 -71
  30. package/dist/billing-thresholds.d.ts.map +0 -1
  31. package/dist/billing-thresholds.js +0 -238
  32. package/dist/billing-thresholds.js.map +0 -1
  33. package/dist/billing.d.ts +0 -95
  34. package/dist/billing.d.ts.map +0 -1
  35. package/dist/billing.js +0 -239
  36. package/dist/billing.js.map +0 -1
  37. package/dist/clerk.d.ts +0 -125
  38. package/dist/clerk.d.ts.map +0 -1
  39. package/dist/clerk.js +0 -389
  40. package/dist/clerk.js.map +0 -1
  41. package/dist/client.d.ts +0 -35
  42. package/dist/client.d.ts.map +0 -1
  43. package/dist/client.js +0 -85
  44. package/dist/client.js.map +0 -1
  45. package/dist/credits.d.ts +0 -165
  46. package/dist/credits.d.ts.map +0 -1
  47. package/dist/credits.js +0 -483
  48. package/dist/credits.js.map +0 -1
  49. package/dist/index.d.ts.map +0 -1
  50. package/dist/intelligence.d.ts +0 -4
  51. package/dist/intelligence.d.ts.map +0 -1
  52. package/dist/intelligence.js +0 -977
  53. package/dist/intelligence.js.map +0 -1
  54. package/dist/list-recent-ocs-events.d.ts +0 -48
  55. package/dist/list-recent-ocs-events.d.ts.map +0 -1
  56. package/dist/list-recent-ocs-events.js +0 -160
  57. package/dist/list-recent-ocs-events.js.map +0 -1
  58. package/dist/manus-client.d.ts +0 -429
  59. package/dist/manus-client.d.ts.map +0 -1
  60. package/dist/manus-client.js +0 -401
  61. package/dist/manus-client.js.map +0 -1
  62. package/dist/manus-common.d.ts +0 -5
  63. package/dist/manus-common.d.ts.map +0 -1
  64. package/dist/manus-common.js +0 -5
  65. package/dist/manus-common.js.map +0 -1
  66. package/dist/manus-schedule.d.ts +0 -74
  67. package/dist/manus-schedule.d.ts.map +0 -1
  68. package/dist/manus-schedule.js +0 -213
  69. package/dist/manus-schedule.js.map +0 -1
  70. package/dist/manus-usage.d.ts +0 -32
  71. package/dist/manus-usage.d.ts.map +0 -1
  72. package/dist/manus-usage.js +0 -120
  73. package/dist/manus-usage.js.map +0 -1
  74. package/dist/manus-webhook.d.ts +0 -60
  75. package/dist/manus-webhook.d.ts.map +0 -1
  76. package/dist/manus-webhook.js +0 -361
  77. package/dist/manus-webhook.js.map +0 -1
  78. package/dist/pricing-tools.d.ts +0 -26
  79. package/dist/pricing-tools.d.ts.map +0 -1
  80. package/dist/pricing-tools.js +0 -428
  81. package/dist/pricing-tools.js.map +0 -1
  82. package/dist/projects-tools.d.ts +0 -39
  83. package/dist/projects-tools.d.ts.map +0 -1
  84. package/dist/projects-tools.js +0 -545
  85. package/dist/projects-tools.js.map +0 -1
  86. package/dist/prompts.d.ts +0 -7
  87. package/dist/prompts.d.ts.map +0 -1
  88. package/dist/prompts.js +0 -151
  89. package/dist/prompts.js.map +0 -1
  90. package/dist/stripe-connect-tools.d.ts +0 -33
  91. package/dist/stripe-connect-tools.d.ts.map +0 -1
  92. package/dist/stripe-connect-tools.js +0 -504
  93. package/dist/stripe-connect-tools.js.map +0 -1
  94. package/dist/timing-safe-equal.d.ts +0 -5
  95. package/dist/timing-safe-equal.d.ts.map +0 -1
  96. package/dist/timing-safe-equal.js +0 -13
  97. package/dist/timing-safe-equal.js.map +0 -1
  98. package/dist/tools-backlog.d.ts +0 -37
  99. package/dist/tools-backlog.d.ts.map +0 -1
  100. package/dist/tools-backlog.js +0 -410
  101. package/dist/tools-backlog.js.map +0 -1
  102. package/dist/tools-carrier-ask.d.ts +0 -138
  103. package/dist/tools-carrier-ask.d.ts.map +0 -1
  104. package/dist/tools-carrier-ask.js +0 -913
  105. package/dist/tools-carrier-ask.js.map +0 -1
  106. package/dist/tools-pricing.d.ts +0 -18
  107. package/dist/tools-pricing.d.ts.map +0 -1
  108. package/dist/tools-pricing.js +0 -172
  109. package/dist/tools-pricing.js.map +0 -1
  110. package/dist/tools-ui-agent-ask.d.ts +0 -29
  111. package/dist/tools-ui-agent-ask.d.ts.map +0 -1
  112. package/dist/tools-ui-agent-ask.js +0 -272
  113. package/dist/tools-ui-agent-ask.js.map +0 -1
  114. package/dist/tools-ui-agent-schedule.d.ts +0 -29
  115. package/dist/tools-ui-agent-schedule.d.ts.map +0 -1
  116. package/dist/tools-ui-agent-schedule.js +0 -517
  117. package/dist/tools-ui-agent-schedule.js.map +0 -1
  118. package/dist/tools-ui-agent.d.ts +0 -40
  119. package/dist/tools-ui-agent.d.ts.map +0 -1
  120. package/dist/tools-ui-agent.js +0 -508
  121. package/dist/tools-ui-agent.js.map +0 -1
  122. package/dist/tools.d.ts +0 -60
  123. package/dist/tools.d.ts.map +0 -1
  124. package/dist/tools.js +0 -1384
  125. package/dist/tools.js.map +0 -1
  126. package/dist/types.d.ts +0 -298
  127. package/dist/types.d.ts.map +0 -1
  128. package/dist/types.js +0 -5
  129. package/dist/types.js.map +0 -1
@@ -1,517 +0,0 @@
1
- /**
2
- * Carrier MCP — Manus Scheduled Tasks + Usage Telemetry tools (v1.0.0).
3
- *
4
- * NEW TOOLS:
5
- * ui_agent_schedule_create — create a recurring Manus agent run (cron-based)
6
- * ui_agent_schedule_list — list the caller's schedules
7
- * ui_agent_schedule_delete — delete a schedule by ID
8
- * ui_agent_schedule_pause — pause a schedule
9
- * ui_agent_schedule_resume — resume a paused schedule
10
- * ui_agent_usage — current month spend + remaining credits (60s KV cache)
11
- *
12
- * SCOPE GATES:
13
- * - schedule_create / delete / pause / resume: admin only
14
- * - schedule_list / usage: read
15
- *
16
- * CRON SAFETY:
17
- * - Minimum interval: 5 minutes (rejects * * * * * and sub-5-min step/list expressions)
18
- *
19
- * AUDIT:
20
- * - Every mutating call writes an AE row.
21
- * - ui_agent_usage emits threshold events when remaining_credits < 1000 (warning) or < 100 (critical).
22
- */
23
- import { z } from "zod";
24
- import { createSchedule, listSchedules, deleteSchedule, pauseSchedule, resumeSchedule, validateCron, ManusScheduleError, } from "./manus-schedule.js";
25
- import { getUsage, emitUsageThresholdIfNeeded } from "./manus-usage.js";
26
- /** Doc + registry merge — keep aligned with scope checks in registerScheduleAndUsageTools. */
27
- export const UI_AGENT_SCHEDULE_TOOL_SCOPES = {
28
- ui_agent_schedule_create: "admin",
29
- ui_agent_schedule_list: "read",
30
- ui_agent_schedule_delete: "admin",
31
- ui_agent_schedule_pause: "admin",
32
- ui_agent_schedule_resume: "admin",
33
- ui_agent_usage: "read",
34
- };
35
- function noManusKeyError() {
36
- return {
37
- isError: true,
38
- content: [
39
- {
40
- type: "text",
41
- text: JSON.stringify({
42
- error: "manus_api_not_configured",
43
- message: "MANUS_API_KEY is not configured on this Carrier MCP deployment. " +
44
- "Schedule and usage tools require a Manus API key. " +
45
- "Contact your Carrier MCP administrator.",
46
- }),
47
- },
48
- ],
49
- };
50
- }
51
- function scopeError(toolName, required, actual) {
52
- return {
53
- isError: true,
54
- content: [
55
- {
56
- type: "text",
57
- text: `Scope denied: tool '${toolName}' requires '${required}' scope. Your token has: [${actual.join(", ")}].`,
58
- },
59
- ],
60
- };
61
- }
62
- // ---------------------------------------------------------------------------
63
- // Tool registrations
64
- // ---------------------------------------------------------------------------
65
- export function registerScheduleAndUsageTools(server, ctx) {
66
- // =========================================================================
67
- // ui_agent_schedule_create
68
- // =========================================================================
69
- server.registerTool("ui_agent_schedule_create", {
70
- title: "Create Manus Schedule (UI Agent)",
71
- description: "Creates a recurring Manus agent run on a cron schedule. " +
72
- "Use this to automate periodic OCS audits, fleet health checks, or any recurring " +
73
- "browser-automation task. Minimum interval: 5 minutes (*/1, */2, */3, */4 and '* * * * *' are rejected). " +
74
- "Requires admin scope. Returns schedule_id.",
75
- inputSchema: {
76
- name: z.string().describe("Human-readable name for this schedule"),
77
- cron: z
78
- .string()
79
- .describe("Standard 5-field cron expression (minute hour day month weekday). " +
80
- "Minimum interval: 5 minutes. Example: '0 */6 * * *' = every 6 hours."),
81
- prompt_template: z
82
- .string()
83
- .describe("Agent prompt/task template the Manus agent will execute on each run"),
84
- profile: z
85
- .string()
86
- .optional()
87
- .describe("Manus agent profile to use. Defaults to 'manus-1.6-lite'."),
88
- },
89
- }, async (args) => {
90
- const start = Date.now();
91
- if (!ctx.props.scope.includes("admin")) {
92
- ctx.audit({
93
- tool_name: "ui_agent_schedule_create",
94
- ocs_method: "[manus:schedule.create]",
95
- status: "scope_denied",
96
- dry_run: false,
97
- duration_ms: 0,
98
- });
99
- return scopeError("ui_agent_schedule_create", "admin", ctx.props.scope);
100
- }
101
- if (!ctx.env.MANUS_API_KEY) {
102
- return noManusKeyError();
103
- }
104
- const cronError = validateCron(args.cron);
105
- if (cronError) {
106
- return {
107
- isError: true,
108
- content: [{ type: "text", text: JSON.stringify({ error: "invalid_cron", message: cronError }) }],
109
- };
110
- }
111
- try {
112
- const result = await createSchedule(ctx.env.MANUS_API_KEY, {
113
- name: args.name,
114
- cron: args.cron,
115
- prompt_template: args.prompt_template,
116
- agent_profile: args.profile,
117
- });
118
- ctx.audit({
119
- tool_name: "ui_agent_schedule_create",
120
- ocs_method: "[manus:schedule.create]",
121
- status: result.ok ? "ok" : "error",
122
- dry_run: false,
123
- duration_ms: Date.now() - start,
124
- event_type: "ui_agent_dispatch",
125
- });
126
- if (!result.ok || !result.schedule_id) {
127
- return {
128
- isError: true,
129
- content: [
130
- {
131
- type: "text",
132
- text: JSON.stringify({
133
- error: "schedule_create_failed",
134
- message: result.error?.message ?? "Manus schedule.create returned ok=false",
135
- code: result.error?.code,
136
- }),
137
- },
138
- ],
139
- };
140
- }
141
- return {
142
- content: [
143
- {
144
- type: "text",
145
- text: JSON.stringify({
146
- status: "created",
147
- schedule_id: result.schedule_id,
148
- name: args.name,
149
- cron: args.cron,
150
- }, null, 2),
151
- },
152
- ],
153
- };
154
- }
155
- catch (err) {
156
- ctx.audit({
157
- tool_name: "ui_agent_schedule_create",
158
- ocs_method: "[manus:schedule.create]",
159
- status: "error",
160
- dry_run: false,
161
- duration_ms: Date.now() - start,
162
- event_type: "ui_agent_dispatch",
163
- });
164
- const msg = err instanceof ManusScheduleError
165
- ? `Manus API error (HTTP ${err.statusCode}): ${err.message}`
166
- : (err instanceof Error ? err.message : String(err));
167
- return { isError: true, content: [{ type: "text", text: msg }] };
168
- }
169
- });
170
- // =========================================================================
171
- // ui_agent_schedule_list
172
- // =========================================================================
173
- server.registerTool("ui_agent_schedule_list", {
174
- title: "List Manus Schedules",
175
- description: "Lists all Manus recurring schedules configured for this API key. " +
176
- "Returns schedule IDs, names, cron expressions, status (active/paused), " +
177
- "and next/last run timestamps.",
178
- inputSchema: {},
179
- }, async () => {
180
- const start = Date.now();
181
- if (!ctx.props.scope.includes("read")) {
182
- ctx.audit({
183
- tool_name: "ui_agent_schedule_list",
184
- ocs_method: "[manus:schedule.list]",
185
- status: "scope_denied",
186
- dry_run: false,
187
- duration_ms: 0,
188
- });
189
- return scopeError("ui_agent_schedule_list", "read", ctx.props.scope);
190
- }
191
- if (!ctx.env.MANUS_API_KEY) {
192
- return noManusKeyError();
193
- }
194
- try {
195
- const result = await listSchedules(ctx.env.MANUS_API_KEY);
196
- ctx.audit({
197
- tool_name: "ui_agent_schedule_list",
198
- ocs_method: "[manus:schedule.list]",
199
- status: result.ok ? "ok" : "error",
200
- dry_run: false,
201
- duration_ms: Date.now() - start,
202
- });
203
- if (!result.ok) {
204
- return {
205
- isError: true,
206
- content: [
207
- {
208
- type: "text",
209
- text: JSON.stringify({
210
- error: "schedule_list_failed",
211
- message: result.error?.message ?? "Manus schedule.list returned ok=false",
212
- }),
213
- },
214
- ],
215
- };
216
- }
217
- return {
218
- content: [
219
- {
220
- type: "text",
221
- text: JSON.stringify({ schedules: result.schedules ?? [] }, null, 2),
222
- },
223
- ],
224
- };
225
- }
226
- catch (err) {
227
- ctx.audit({
228
- tool_name: "ui_agent_schedule_list",
229
- ocs_method: "[manus:schedule.list]",
230
- status: "error",
231
- dry_run: false,
232
- duration_ms: Date.now() - start,
233
- });
234
- const msg = err instanceof ManusScheduleError
235
- ? `Manus API error (HTTP ${err.statusCode}): ${err.message}`
236
- : (err instanceof Error ? err.message : String(err));
237
- return { isError: true, content: [{ type: "text", text: msg }] };
238
- }
239
- });
240
- // =========================================================================
241
- // ui_agent_schedule_delete
242
- // =========================================================================
243
- server.registerTool("ui_agent_schedule_delete", {
244
- title: "Delete Manus Schedule",
245
- description: "Permanently deletes a Manus recurring schedule. " +
246
- "This cannot be undone. Use ui_agent_schedule_pause to temporarily suspend instead. " +
247
- "Requires admin scope.",
248
- inputSchema: {
249
- schedule_id: z.string().describe("ID of the schedule to delete"),
250
- },
251
- }, async (args) => {
252
- const start = Date.now();
253
- if (!ctx.props.scope.includes("admin")) {
254
- ctx.audit({
255
- tool_name: "ui_agent_schedule_delete",
256
- ocs_method: "[manus:schedule.delete]",
257
- status: "scope_denied",
258
- dry_run: false,
259
- duration_ms: 0,
260
- });
261
- return scopeError("ui_agent_schedule_delete", "admin", ctx.props.scope);
262
- }
263
- if (!ctx.env.MANUS_API_KEY) {
264
- return noManusKeyError();
265
- }
266
- try {
267
- const result = await deleteSchedule(ctx.env.MANUS_API_KEY, args.schedule_id);
268
- ctx.audit({
269
- tool_name: "ui_agent_schedule_delete",
270
- ocs_method: "[manus:schedule.delete]",
271
- status: result.ok ? "ok" : "error",
272
- dry_run: false,
273
- duration_ms: Date.now() - start,
274
- event_type: "ui_agent_dispatch",
275
- });
276
- if (!result.ok) {
277
- return {
278
- isError: true,
279
- content: [
280
- {
281
- type: "text",
282
- text: JSON.stringify({
283
- error: "schedule_delete_failed",
284
- message: result.error?.message ?? "Manus schedule.delete returned ok=false",
285
- }),
286
- },
287
- ],
288
- };
289
- }
290
- return {
291
- content: [
292
- {
293
- type: "text",
294
- text: JSON.stringify({ status: "deleted", schedule_id: args.schedule_id }, null, 2),
295
- },
296
- ],
297
- };
298
- }
299
- catch (err) {
300
- ctx.audit({
301
- tool_name: "ui_agent_schedule_delete",
302
- ocs_method: "[manus:schedule.delete]",
303
- status: "error",
304
- dry_run: false,
305
- duration_ms: Date.now() - start,
306
- event_type: "ui_agent_dispatch",
307
- });
308
- const msg = err instanceof ManusScheduleError
309
- ? `Manus API error (HTTP ${err.statusCode}): ${err.message}`
310
- : (err instanceof Error ? err.message : String(err));
311
- return { isError: true, content: [{ type: "text", text: msg }] };
312
- }
313
- });
314
- // =========================================================================
315
- // ui_agent_schedule_pause
316
- // =========================================================================
317
- server.registerTool("ui_agent_schedule_pause", {
318
- title: "Pause Manus Schedule",
319
- description: "Pauses an active Manus recurring schedule. The schedule is preserved and can be " +
320
- "resumed later with ui_agent_schedule_resume. Requires admin scope.",
321
- inputSchema: {
322
- schedule_id: z.string().describe("ID of the schedule to pause"),
323
- },
324
- }, async (args) => {
325
- const start = Date.now();
326
- if (!ctx.props.scope.includes("admin")) {
327
- ctx.audit({
328
- tool_name: "ui_agent_schedule_pause",
329
- ocs_method: "[manus:schedule.pause]",
330
- status: "scope_denied",
331
- dry_run: false,
332
- duration_ms: 0,
333
- });
334
- return scopeError("ui_agent_schedule_pause", "admin", ctx.props.scope);
335
- }
336
- if (!ctx.env.MANUS_API_KEY) {
337
- return noManusKeyError();
338
- }
339
- try {
340
- const result = await pauseSchedule(ctx.env.MANUS_API_KEY, args.schedule_id);
341
- ctx.audit({
342
- tool_name: "ui_agent_schedule_pause",
343
- ocs_method: "[manus:schedule.pause]",
344
- status: result.ok ? "ok" : "error",
345
- dry_run: false,
346
- duration_ms: Date.now() - start,
347
- event_type: "ui_agent_dispatch",
348
- });
349
- if (!result.ok) {
350
- return {
351
- isError: true,
352
- content: [
353
- {
354
- type: "text",
355
- text: JSON.stringify({
356
- error: "schedule_pause_failed",
357
- message: result.error?.message ?? "Manus schedule.pause returned ok=false",
358
- }),
359
- },
360
- ],
361
- };
362
- }
363
- return {
364
- content: [
365
- {
366
- type: "text",
367
- text: JSON.stringify({ status: "paused", schedule_id: args.schedule_id }, null, 2),
368
- },
369
- ],
370
- };
371
- }
372
- catch (err) {
373
- ctx.audit({
374
- tool_name: "ui_agent_schedule_pause",
375
- ocs_method: "[manus:schedule.pause]",
376
- status: "error",
377
- dry_run: false,
378
- duration_ms: Date.now() - start,
379
- event_type: "ui_agent_dispatch",
380
- });
381
- const msg = err instanceof ManusScheduleError
382
- ? `Manus API error (HTTP ${err.statusCode}): ${err.message}`
383
- : (err instanceof Error ? err.message : String(err));
384
- return { isError: true, content: [{ type: "text", text: msg }] };
385
- }
386
- });
387
- // =========================================================================
388
- // ui_agent_schedule_resume
389
- // =========================================================================
390
- server.registerTool("ui_agent_schedule_resume", {
391
- title: "Resume Manus Schedule",
392
- description: "Resumes a paused Manus recurring schedule. Requires admin scope.",
393
- inputSchema: {
394
- schedule_id: z.string().describe("ID of the schedule to resume"),
395
- },
396
- }, async (args) => {
397
- const start = Date.now();
398
- if (!ctx.props.scope.includes("admin")) {
399
- ctx.audit({
400
- tool_name: "ui_agent_schedule_resume",
401
- ocs_method: "[manus:schedule.resume]",
402
- status: "scope_denied",
403
- dry_run: false,
404
- duration_ms: 0,
405
- });
406
- return scopeError("ui_agent_schedule_resume", "admin", ctx.props.scope);
407
- }
408
- if (!ctx.env.MANUS_API_KEY) {
409
- return noManusKeyError();
410
- }
411
- try {
412
- const result = await resumeSchedule(ctx.env.MANUS_API_KEY, args.schedule_id);
413
- ctx.audit({
414
- tool_name: "ui_agent_schedule_resume",
415
- ocs_method: "[manus:schedule.resume]",
416
- status: result.ok ? "ok" : "error",
417
- dry_run: false,
418
- duration_ms: Date.now() - start,
419
- event_type: "ui_agent_dispatch",
420
- });
421
- if (!result.ok) {
422
- return {
423
- isError: true,
424
- content: [
425
- {
426
- type: "text",
427
- text: JSON.stringify({
428
- error: "schedule_resume_failed",
429
- message: result.error?.message ?? "Manus schedule.resume returned ok=false",
430
- }),
431
- },
432
- ],
433
- };
434
- }
435
- return {
436
- content: [
437
- {
438
- type: "text",
439
- text: JSON.stringify({ status: "active", schedule_id: args.schedule_id }, null, 2),
440
- },
441
- ],
442
- };
443
- }
444
- catch (err) {
445
- ctx.audit({
446
- tool_name: "ui_agent_schedule_resume",
447
- ocs_method: "[manus:schedule.resume]",
448
- status: "error",
449
- dry_run: false,
450
- duration_ms: Date.now() - start,
451
- event_type: "ui_agent_dispatch",
452
- });
453
- const msg = err instanceof ManusScheduleError
454
- ? `Manus API error (HTTP ${err.statusCode}): ${err.message}`
455
- : (err instanceof Error ? err.message : String(err));
456
- return { isError: true, content: [{ type: "text", text: msg }] };
457
- }
458
- });
459
- // =========================================================================
460
- // ui_agent_usage
461
- // =========================================================================
462
- server.registerTool("ui_agent_usage", {
463
- title: "Manus Usage & Credits",
464
- description: "Returns current month Manus credit spend, remaining balance, and task count. " +
465
- "Result is cached for 60 seconds in KV to avoid rate-limiting the Manus API. " +
466
- "Emits an Analytics Engine event when remaining_credits drops below 1000 (warning) " +
467
- "or 100 (critical). Use this to track Carrier's Manus credit burn.",
468
- inputSchema: {},
469
- }, async () => {
470
- const start = Date.now();
471
- if (!ctx.props.scope.includes("read")) {
472
- ctx.audit({
473
- tool_name: "ui_agent_usage",
474
- ocs_method: "[manus:usage.get]",
475
- status: "scope_denied",
476
- dry_run: false,
477
- duration_ms: 0,
478
- });
479
- return scopeError("ui_agent_usage", "read", ctx.props.scope);
480
- }
481
- if (!ctx.env.MANUS_API_KEY) {
482
- return noManusKeyError();
483
- }
484
- try {
485
- const { data, from_cache } = await getUsage(ctx.env.MANUS_API_KEY, ctx.env);
486
- // Emit threshold AE event if needed (fire-and-forget)
487
- emitUsageThresholdIfNeeded(ctx.env, data);
488
- ctx.audit({
489
- tool_name: "ui_agent_usage",
490
- ocs_method: "[manus:usage.get]",
491
- status: "ok",
492
- dry_run: false,
493
- duration_ms: Date.now() - start,
494
- });
495
- return {
496
- content: [
497
- {
498
- type: "text",
499
- text: JSON.stringify({ ...data, from_cache }, null, 2),
500
- },
501
- ],
502
- };
503
- }
504
- catch (err) {
505
- ctx.audit({
506
- tool_name: "ui_agent_usage",
507
- ocs_method: "[manus:usage.get]",
508
- status: "error",
509
- dry_run: false,
510
- duration_ms: Date.now() - start,
511
- });
512
- const msg = err instanceof Error ? err.message : String(err);
513
- return { isError: true, content: [{ type: "text", text: msg }] };
514
- }
515
- });
516
- }
517
- //# sourceMappingURL=tools-ui-agent-schedule.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tools-ui-agent-schedule.js","sourceRoot":"","sources":["../src/tools-ui-agent-schedule.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,OAAO,EACL,cAAc,EACd,aAAa,EACb,cAAc,EACd,aAAa,EACb,cAAc,EACd,YAAY,EACZ,kBAAkB,GACnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAExE,8FAA8F;AAC9F,MAAM,CAAC,MAAM,6BAA6B,GAA8B;IACtE,wBAAwB,EAAE,OAAO;IACjC,sBAAsB,EAAE,MAAM;IAC9B,wBAAwB,EAAE,OAAO;IACjC,uBAAuB,EAAE,OAAO;IAChC,wBAAwB,EAAE,OAAO;IACjC,cAAc,EAAE,MAAM;CACvB,CAAC;AAWF,SAAS,eAAe;IACtB,OAAO;QACL,OAAO,EAAE,IAAI;QACb,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,KAAK,EAAE,0BAA0B;oBACjC,OAAO,EACL,kEAAkE;wBAClE,oDAAoD;wBACpD,yCAAyC;iBAC5C,CAAC;aACH;SACF;KACF,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,QAAgB,EAAE,QAAgB,EAAE,MAAgB;IACtE,OAAO;QACL,OAAO,EAAE,IAAI;QACb,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,uBAAuB,QAAQ,eAAe,QAAQ,6BAA6B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;aAC/G;SACF;KACF,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,qBAAqB;AACrB,8EAA8E;AAE9E,MAAM,UAAU,6BAA6B,CAC3C,MAAiB,EACjB,GAAgB;IAEhB,4EAA4E;IAC5E,2BAA2B;IAC3B,4EAA4E;IAC5E,MAAM,CAAC,YAAY,CACjB,0BAA0B,EAC1B;QACE,KAAK,EAAE,kCAAkC;QACzC,WAAW,EACT,0DAA0D;YAC1D,kFAAkF;YAClF,0GAA0G;YAC1G,4CAA4C;QAC9C,WAAW,EAAE;YACX,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uCAAuC,CAAC;YAClE,IAAI,EAAE,CAAC;iBACJ,MAAM,EAAE;iBACR,QAAQ,CACP,oEAAoE;gBACpE,sEAAsE,CACvE;YACH,eAAe,EAAE,CAAC;iBACf,MAAM,EAAE;iBACR,QAAQ,CAAC,qEAAqE,CAAC;YAClF,OAAO,EAAE,CAAC;iBACP,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,2DAA2D,CAAC;SACzE;KACF,EACD,KAAK,EAAE,IAAI,EAAuB,EAAE;QAClC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEzB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACvC,GAAG,CAAC,KAAK,CAAC;gBACR,SAAS,EAAE,0BAA0B;gBACrC,UAAU,EAAE,yBAAyB;gBACrC,MAAM,EAAE,cAAc;gBACtB,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,CAAC;aACf,CAAC,CAAC;YACH,OAAO,UAAU,CAAC,0BAA0B,EAAE,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1E,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YAC3B,OAAO,eAAe,EAAE,CAAC;QAC3B,CAAC;QAED,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,SAAS,EAAE,CAAC;YACd,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;aAC1G,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa,EAAE;gBACzD,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,eAAe,EAAE,IAAI,CAAC,eAAe;gBACrC,aAAa,EAAE,IAAI,CAAC,OAAO;aAC5B,CAAC,CAAC;YAEH,GAAG,CAAC,KAAK,CAAC;gBACR,SAAS,EAAE,0BAA0B;gBACrC,UAAU,EAAE,yBAAyB;gBACrC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO;gBAClC,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;gBAC/B,UAAU,EAAE,mBAAmB;aAChC,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;gBACtC,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gCACnB,KAAK,EAAE,wBAAwB;gCAC/B,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,yCAAyC;gCAC3E,IAAI,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI;6BACzB,CAAC;yBACH;qBACF;iBACF,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;4BACnB,MAAM,EAAE,SAAS;4BACjB,WAAW,EAAE,MAAM,CAAC,WAAW;4BAC/B,IAAI,EAAE,IAAI,CAAC,IAAI;4BACf,IAAI,EAAE,IAAI,CAAC,IAAI;yBAChB,EAAE,IAAI,EAAE,CAAC,CAAC;qBACZ;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,KAAK,CAAC;gBACR,SAAS,EAAE,0BAA0B;gBACrC,UAAU,EAAE,yBAAyB;gBACrC,MAAM,EAAE,OAAO;gBACf,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;gBAC/B,UAAU,EAAE,mBAAmB;aAChC,CAAC,CAAC;YACH,MAAM,GAAG,GAAG,GAAG,YAAY,kBAAkB;gBAC3C,CAAC,CAAC,yBAAyB,GAAG,CAAC,UAAU,MAAM,GAAG,CAAC,OAAO,EAAE;gBAC5D,CAAC,CAAC,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YACvD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;QAC5E,CAAC;IACH,CAAC,CACF,CAAC;IAEF,4EAA4E;IAC5E,yBAAyB;IACzB,4EAA4E;IAC5E,MAAM,CAAC,YAAY,CACjB,wBAAwB,EACxB;QACE,KAAK,EAAE,sBAAsB;QAC7B,WAAW,EACT,mEAAmE;YACnE,yEAAyE;YACzE,+BAA+B;QACjC,WAAW,EAAE,EAAE;KAChB,EACD,KAAK,IAAyB,EAAE;QAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEzB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACtC,GAAG,CAAC,KAAK,CAAC;gBACR,SAAS,EAAE,wBAAwB;gBACnC,UAAU,EAAE,uBAAuB;gBACnC,MAAM,EAAE,cAAc;gBACtB,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,CAAC;aACf,CAAC,CAAC;YACH,OAAO,UAAU,CAAC,wBAAwB,EAAE,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACvE,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YAC3B,OAAO,eAAe,EAAE,CAAC;QAC3B,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YAE1D,GAAG,CAAC,KAAK,CAAC;gBACR,SAAS,EAAE,wBAAwB;gBACnC,UAAU,EAAE,uBAAuB;gBACnC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO;gBAClC,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;aAChC,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;gBACf,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gCACnB,KAAK,EAAE,sBAAsB;gCAC7B,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,uCAAuC;6BAC1E,CAAC;yBACH;qBACF;iBACF,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;qBACrE;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,KAAK,CAAC;gBACR,SAAS,EAAE,wBAAwB;gBACnC,UAAU,EAAE,uBAAuB;gBACnC,MAAM,EAAE,OAAO;gBACf,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;aAChC,CAAC,CAAC;YACH,MAAM,GAAG,GAAG,GAAG,YAAY,kBAAkB;gBAC3C,CAAC,CAAC,yBAAyB,GAAG,CAAC,UAAU,MAAM,GAAG,CAAC,OAAO,EAAE;gBAC5D,CAAC,CAAC,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YACvD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;QAC5E,CAAC;IACH,CAAC,CACF,CAAC;IAEF,4EAA4E;IAC5E,2BAA2B;IAC3B,4EAA4E;IAC5E,MAAM,CAAC,YAAY,CACjB,0BAA0B,EAC1B;QACE,KAAK,EAAE,uBAAuB;QAC9B,WAAW,EACT,kDAAkD;YAClD,qFAAqF;YACrF,uBAAuB;QACzB,WAAW,EAAE;YACX,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;SACjE;KACF,EACD,KAAK,EAAE,IAAI,EAAuB,EAAE;QAClC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEzB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACvC,GAAG,CAAC,KAAK,CAAC;gBACR,SAAS,EAAE,0BAA0B;gBACrC,UAAU,EAAE,yBAAyB;gBACrC,MAAM,EAAE,cAAc;gBACtB,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,CAAC;aACf,CAAC,CAAC;YACH,OAAO,UAAU,CAAC,0BAA0B,EAAE,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1E,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YAC3B,OAAO,eAAe,EAAE,CAAC;QAC3B,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YAE7E,GAAG,CAAC,KAAK,CAAC;gBACR,SAAS,EAAE,0BAA0B;gBACrC,UAAU,EAAE,yBAAyB;gBACrC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO;gBAClC,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;gBAC/B,UAAU,EAAE,mBAAmB;aAChC,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;gBACf,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gCACnB,KAAK,EAAE,wBAAwB;gCAC/B,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,yCAAyC;6BAC5E,CAAC;yBACH;qBACF;iBACF,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;qBACpF;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,KAAK,CAAC;gBACR,SAAS,EAAE,0BAA0B;gBACrC,UAAU,EAAE,yBAAyB;gBACrC,MAAM,EAAE,OAAO;gBACf,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;gBAC/B,UAAU,EAAE,mBAAmB;aAChC,CAAC,CAAC;YACH,MAAM,GAAG,GAAG,GAAG,YAAY,kBAAkB;gBAC3C,CAAC,CAAC,yBAAyB,GAAG,CAAC,UAAU,MAAM,GAAG,CAAC,OAAO,EAAE;gBAC5D,CAAC,CAAC,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YACvD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;QAC5E,CAAC;IACH,CAAC,CACF,CAAC;IAEF,4EAA4E;IAC5E,0BAA0B;IAC1B,4EAA4E;IAC5E,MAAM,CAAC,YAAY,CACjB,yBAAyB,EACzB;QACE,KAAK,EAAE,sBAAsB;QAC7B,WAAW,EACT,kFAAkF;YAClF,oEAAoE;QACtE,WAAW,EAAE;YACX,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6BAA6B,CAAC;SAChE;KACF,EACD,KAAK,EAAE,IAAI,EAAuB,EAAE;QAClC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEzB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACvC,GAAG,CAAC,KAAK,CAAC;gBACR,SAAS,EAAE,yBAAyB;gBACpC,UAAU,EAAE,wBAAwB;gBACpC,MAAM,EAAE,cAAc;gBACtB,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,CAAC;aACf,CAAC,CAAC;YACH,OAAO,UAAU,CAAC,yBAAyB,EAAE,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACzE,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YAC3B,OAAO,eAAe,EAAE,CAAC;QAC3B,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YAE5E,GAAG,CAAC,KAAK,CAAC;gBACR,SAAS,EAAE,yBAAyB;gBACpC,UAAU,EAAE,wBAAwB;gBACpC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO;gBAClC,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;gBAC/B,UAAU,EAAE,mBAAmB;aAChC,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;gBACf,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gCACnB,KAAK,EAAE,uBAAuB;gCAC9B,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,wCAAwC;6BAC3E,CAAC;yBACH;qBACF;iBACF,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;qBACnF;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,KAAK,CAAC;gBACR,SAAS,EAAE,yBAAyB;gBACpC,UAAU,EAAE,wBAAwB;gBACpC,MAAM,EAAE,OAAO;gBACf,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;gBAC/B,UAAU,EAAE,mBAAmB;aAChC,CAAC,CAAC;YACH,MAAM,GAAG,GAAG,GAAG,YAAY,kBAAkB;gBAC3C,CAAC,CAAC,yBAAyB,GAAG,CAAC,UAAU,MAAM,GAAG,CAAC,OAAO,EAAE;gBAC5D,CAAC,CAAC,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YACvD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;QAC5E,CAAC;IACH,CAAC,CACF,CAAC;IAEF,4EAA4E;IAC5E,2BAA2B;IAC3B,4EAA4E;IAC5E,MAAM,CAAC,YAAY,CACjB,0BAA0B,EAC1B;QACE,KAAK,EAAE,uBAAuB;QAC9B,WAAW,EACT,kEAAkE;QACpE,WAAW,EAAE;YACX,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;SACjE;KACF,EACD,KAAK,EAAE,IAAI,EAAuB,EAAE;QAClC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEzB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACvC,GAAG,CAAC,KAAK,CAAC;gBACR,SAAS,EAAE,0BAA0B;gBACrC,UAAU,EAAE,yBAAyB;gBACrC,MAAM,EAAE,cAAc;gBACtB,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,CAAC;aACf,CAAC,CAAC;YACH,OAAO,UAAU,CAAC,0BAA0B,EAAE,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1E,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YAC3B,OAAO,eAAe,EAAE,CAAC;QAC3B,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YAE7E,GAAG,CAAC,KAAK,CAAC;gBACR,SAAS,EAAE,0BAA0B;gBACrC,UAAU,EAAE,yBAAyB;gBACrC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO;gBAClC,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;gBAC/B,UAAU,EAAE,mBAAmB;aAChC,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;gBACf,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gCACnB,KAAK,EAAE,wBAAwB;gCAC/B,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,yCAAyC;6BAC5E,CAAC;yBACH;qBACF;iBACF,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;qBACnF;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,KAAK,CAAC;gBACR,SAAS,EAAE,0BAA0B;gBACrC,UAAU,EAAE,yBAAyB;gBACrC,MAAM,EAAE,OAAO;gBACf,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;gBAC/B,UAAU,EAAE,mBAAmB;aAChC,CAAC,CAAC;YACH,MAAM,GAAG,GAAG,GAAG,YAAY,kBAAkB;gBAC3C,CAAC,CAAC,yBAAyB,GAAG,CAAC,UAAU,MAAM,GAAG,CAAC,OAAO,EAAE;gBAC5D,CAAC,CAAC,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YACvD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;QAC5E,CAAC;IACH,CAAC,CACF,CAAC;IAEF,4EAA4E;IAC5E,iBAAiB;IACjB,4EAA4E;IAC5E,MAAM,CAAC,YAAY,CACjB,gBAAgB,EAChB;QACE,KAAK,EAAE,uBAAuB;QAC9B,WAAW,EACT,+EAA+E;YAC/E,8EAA8E;YAC9E,oFAAoF;YACpF,mEAAmE;QACrE,WAAW,EAAE,EAAE;KAChB,EACD,KAAK,IAAyB,EAAE;QAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEzB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACtC,GAAG,CAAC,KAAK,CAAC;gBACR,SAAS,EAAE,gBAAgB;gBAC3B,UAAU,EAAE,mBAAmB;gBAC/B,MAAM,EAAE,cAAc;gBACtB,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,CAAC;aACf,CAAC,CAAC;YACH,OAAO,UAAU,CAAC,gBAAgB,EAAE,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC/D,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YAC3B,OAAO,eAAe,EAAE,CAAC;QAC3B,CAAC;QAED,IAAI,CAAC;YACH,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;YAE5E,sDAAsD;YACtD,0BAA0B,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YAE1C,GAAG,CAAC,KAAK,CAAC;gBACR,SAAS,EAAE,gBAAgB;gBAC3B,UAAU,EAAE,mBAAmB;gBAC/B,MAAM,EAAE,IAAI;gBACZ,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;aAChC,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;qBACvD;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,KAAK,CAAC;gBACR,SAAS,EAAE,gBAAgB;gBAC3B,UAAU,EAAE,mBAAmB;gBAC/B,MAAM,EAAE,OAAO;gBACf,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;aAChC,CAAC,CAAC;YACH,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC7D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;QAC5E,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -1,40 +0,0 @@
1
- /**
2
- * Carrier MCP — UI-Agent tools (v1.1.1).
3
- *
4
- * These tools handle OCS operations that are NOT exposed via the OCS REST API
5
- * (confirmed by NOC/Bridge4IP on 2026-05-13). Instead of calling OCS JSON-RPC,
6
- * they spawn a Manus "lite" agent that drives the OCS web dashboard via browser
7
- * automation to complete the operation.
8
- *
9
- * Gap IDs covered:
10
- * G-01 createSteeringList — create a new steering list
11
- * G-02 buildSteeringList — add/remove operators in a steering list
12
- * G-03 setSteeringListOnAccount — assign steering list at account level
13
- * G-05 createAccount — create a new reseller sub-account
14
- * G-12 destination list CRUD — create/edit/delete destination lists
15
- * G-18 deletePackageTemplate — delete a package template
16
- * G-19 editLocationZone/deleteLocationZone — edit or delete location zones
17
- *
18
- * AUTH FLOW:
19
- * OCS portal credentials are stored in Clerk privateMetadata (org or user level).
20
- * At dispatch time, getOcsPortalCredentials() reads them via the Clerk Backend API.
21
- * Credentials are passed to the Manus agent prompt — the agent uses them to log
22
- * into the OCS dashboard before performing the requested operation.
23
- *
24
- * MANUS API:
25
- * Uses v2 task.create with agent_profile "manus-1.6-lite", hide_in_task_list true,
26
- * and structured_output_schema to extract a typed result from the agent's work.
27
- *
28
- * SAFETY:
29
- * - All UI-agent tools require "write" or "admin" scope.
30
- * - Destructive operations support dry_run (returns the prompt without dispatching).
31
- * - Audit log records ui_agent_dispatched status + Manus task_id.
32
- * - Credentials are never logged or returned in tool output.
33
- */
34
- import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
35
- import type { ToolContext } from "./tools.js";
36
- import type { ToolScope } from "./types.js";
37
- export declare const UI_AGENT_TOOL_SCOPES: Record<string, ToolScope>;
38
- export declare const UI_AGENT_DESTRUCTIVE_TOOLS: Set<string>;
39
- export declare function registerAllUiAgentTools(server: McpServer, ctx: ToolContext): void;
40
- //# sourceMappingURL=tools-ui-agent.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tools-ui-agent.d.ts","sourceRoot":"","sources":["../src/tools-ui-agent.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AA+S5C,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAW1D,CAAC;AAEF,eAAO,MAAM,0BAA0B,aAWrC,CAAC;AAKH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,SAAS,EACjB,GAAG,EAAE,WAAW,GACf,IAAI,CA4RN"}