@cplace/test-mcp-server 0.1.12 → 0.1.13

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 (44) hide show
  1. package/README.md +11 -1
  2. package/dist/conditional-registration.d.ts.map +1 -1
  3. package/dist/conditional-registration.js +4 -2
  4. package/dist/conditional-registration.js.map +1 -1
  5. package/dist/index.js +4 -7
  6. package/dist/index.js.map +1 -1
  7. package/dist/logger.d.ts +1 -1
  8. package/dist/logger.d.ts.map +1 -1
  9. package/dist/logger.js +1 -1
  10. package/dist/logger.js.map +1 -1
  11. package/dist/profiles.d.ts.map +1 -1
  12. package/dist/profiles.js +9 -2
  13. package/dist/profiles.js.map +1 -1
  14. package/dist/tools/change-listeners.js +2 -2
  15. package/dist/tools/change-listeners.js.map +1 -1
  16. package/dist/tools/pages.js +1 -1
  17. package/dist/tools/pages.js.map +1 -1
  18. package/dist/tools/ppt-export-schemas.d.ts +1937 -0
  19. package/dist/tools/ppt-export-schemas.d.ts.map +1 -0
  20. package/dist/tools/{ppt-export-profiles.js → ppt-export-schemas.js} +15 -119
  21. package/dist/tools/ppt-export-schemas.js.map +1 -0
  22. package/dist/tools/{ppt-export-profiles.d.ts → ppt-export.d.ts} +1 -1
  23. package/dist/tools/ppt-export.d.ts.map +1 -0
  24. package/dist/tools/ppt-export.js +192 -0
  25. package/dist/tools/ppt-export.js.map +1 -0
  26. package/dist/tools/schedule.d.ts +4 -0
  27. package/dist/tools/schedule.d.ts.map +1 -0
  28. package/dist/tools/schedule.js +42 -0
  29. package/dist/tools/schedule.js.map +1 -0
  30. package/dist/tools/validators.js +2 -2
  31. package/dist/tools/validators.js.map +1 -1
  32. package/dist/tools/widgets.d.ts.map +1 -1
  33. package/dist/tools/widgets.js +215 -16
  34. package/dist/tools/widgets.js.map +1 -1
  35. package/dist/tools/workspace.d.ts.map +1 -1
  36. package/dist/tools/workspace.js +112 -1
  37. package/dist/tools/workspace.js.map +1 -1
  38. package/dist/utils.d.ts +4 -0
  39. package/dist/utils.d.ts.map +1 -1
  40. package/dist/utils.js +11 -0
  41. package/dist/utils.js.map +1 -1
  42. package/package.json +2 -1
  43. package/dist/tools/ppt-export-profiles.d.ts.map +0 -1
  44. package/dist/tools/ppt-export-profiles.js.map +0 -1
@@ -233,14 +233,37 @@ For embedded attribute widgets: {'cf.platform.quotedAttributeName': "'cf.cplace.
233
233
  debugLogWithTag('LAYOUT_MODIFY', `Request body: ${JSON.stringify(requestBody, null, 2)}`);
234
234
  const result = await client.makeApiRequest('json/pageLayout', 'PATCH', undefined, requestBody);
235
235
  debugLogWithTag('LAYOUT_MODIFY', `Successfully added widget ${widgetType} to page ${pageUID}`);
236
+ const response = {
237
+ operation: "ADD_WIDGET",
238
+ status: "SUCCESS",
239
+ pageUID,
240
+ widgetType,
241
+ position,
242
+ layoutContext,
243
+ ...(layoutContext === "widget" && containerWidgetId && { containerWidgetId }),
244
+ message: layoutContext === "widget"
245
+ ? "Widget added successfully to embedded layout"
246
+ : "Widget added successfully"
247
+ };
236
248
  return {
237
- content: [{ type: "text", text: JSON.stringify(result, null, 2) }]
249
+ content: [{ type: "text", text: JSON.stringify(response, null, 2) }]
238
250
  };
239
251
  }
240
252
  catch (error) {
241
253
  debugLogWithTag('LAYOUT_MODIFY', `Error adding widget: ${error instanceof Error ? error.message : String(error)}`);
254
+ const errorResponse = {
255
+ operation: "ADD_WIDGET",
256
+ status: "ERROR",
257
+ pageUID,
258
+ widgetType,
259
+ position,
260
+ layoutContext,
261
+ ...(layoutContext === "widget" && containerWidgetId && { containerWidgetId }),
262
+ error: error instanceof Error ? error.message : String(error),
263
+ message: "Failed to add widget"
264
+ };
242
265
  return {
243
- content: [{ type: "text", text: `Error adding widget to layout: ${error instanceof Error ? error.message : String(error)}` }],
266
+ content: [{ type: "text", text: JSON.stringify(errorResponse, null, 2) }],
244
267
  isError: true
245
268
  };
246
269
  }
@@ -265,14 +288,29 @@ For embedded attribute widgets: {'cf.platform.quotedAttributeName': "'cf.cplace.
265
288
  debugLogWithTag('LAYOUT_MODIFY', `Request body: ${JSON.stringify(requestBody, null, 2)}`);
266
289
  const result = await client.makeApiRequest('json/pageLayout', 'PATCH', undefined, requestBody);
267
290
  debugLogWithTag('LAYOUT_MODIFY', `Successfully removed widget ${widgetId} from page ${pageUID}`);
291
+ const response = {
292
+ operation: "REMOVE_WIDGET",
293
+ status: "SUCCESS",
294
+ pageUID,
295
+ widgetId,
296
+ message: "Widget removed successfully"
297
+ };
268
298
  return {
269
- content: [{ type: "text", text: JSON.stringify(result, null, 2) }]
299
+ content: [{ type: "text", text: JSON.stringify(response, null, 2) }]
270
300
  };
271
301
  }
272
302
  catch (error) {
273
303
  debugLogWithTag('LAYOUT_MODIFY', `Error removing widget: ${error instanceof Error ? error.message : String(error)}`);
304
+ const errorResponse = {
305
+ operation: "REMOVE_WIDGET",
306
+ status: "ERROR",
307
+ pageUID,
308
+ widgetId,
309
+ error: error instanceof Error ? error.message : String(error),
310
+ message: "Failed to remove widget"
311
+ };
274
312
  return {
275
- content: [{ type: "text", text: `Error removing widget from layout: ${error instanceof Error ? error.message : String(error)}` }],
313
+ content: [{ type: "text", text: JSON.stringify(errorResponse, null, 2) }],
276
314
  isError: true
277
315
  };
278
316
  }
@@ -313,14 +351,29 @@ For embedded attribute widgets: {'cf.platform.quotedAttributeName': "'cf.cplace.
313
351
  debugLogWithTag('LAYOUT_MODIFY', `Request body: ${JSON.stringify(requestBody, null, 2)}`);
314
352
  const result = await client.makeApiRequest('json/pageLayout', 'PATCH', undefined, requestBody);
315
353
  debugLogWithTag('LAYOUT_MODIFY', `Successfully updated widget ${widgetId} in page ${pageUID}`);
354
+ const response = {
355
+ operation: "UPDATE_WIDGET",
356
+ status: "SUCCESS",
357
+ pageUID,
358
+ widgetId,
359
+ message: "Widget updated successfully"
360
+ };
316
361
  return {
317
- content: [{ type: "text", text: JSON.stringify(result, null, 2) }]
362
+ content: [{ type: "text", text: JSON.stringify(response, null, 2) }]
318
363
  };
319
364
  }
320
365
  catch (error) {
321
366
  debugLogWithTag('LAYOUT_MODIFY', `Error updating widget: ${error instanceof Error ? error.message : String(error)}`);
367
+ const errorResponse = {
368
+ operation: "UPDATE_WIDGET",
369
+ status: "ERROR",
370
+ pageUID,
371
+ widgetId,
372
+ error: error instanceof Error ? error.message : String(error),
373
+ message: "Failed to update widget"
374
+ };
322
375
  return {
323
- content: [{ type: "text", text: `Error updating widget in layout: ${error instanceof Error ? error.message : String(error)}` }],
376
+ content: [{ type: "text", text: JSON.stringify(errorResponse, null, 2) }],
324
377
  isError: true
325
378
  };
326
379
  }
@@ -351,14 +404,57 @@ For embedded attribute widgets: {'cf.platform.quotedAttributeName': "'cf.cplace.
351
404
  debugLogWithTag('LAYOUT_MODIFY', `Request body: ${JSON.stringify(requestBody, null, 2)}`);
352
405
  const result = await client.makeApiRequest('json/pageLayout', 'PATCH', undefined, requestBody);
353
406
  debugLogWithTag('LAYOUT_MODIFY', `Successfully moved widget ${widgetId} in page ${pageUID}`);
407
+ let newWidgetId = widgetId;
408
+ let widgetIdChanged = false;
409
+ try {
410
+ const layoutString = result.result;
411
+ const layout = JSON.parse(layoutString);
412
+ if (layout.rows && layout.rows[newPosition.rowIndex]) {
413
+ const targetRow = layout.rows[newPosition.rowIndex];
414
+ if (targetRow.columns && targetRow.columns[newPosition.columnIndex]) {
415
+ const targetColumn = targetRow.columns[newPosition.columnIndex];
416
+ if (targetColumn.widgets && targetColumn.widgets[newPosition.widgetIndex]) {
417
+ const movedWidget = targetColumn.widgets[newPosition.widgetIndex];
418
+ if (movedWidget.id && movedWidget.id !== widgetId) {
419
+ newWidgetId = movedWidget.id;
420
+ widgetIdChanged = true;
421
+ }
422
+ }
423
+ }
424
+ }
425
+ }
426
+ catch (parseError) {
427
+ debugLogWithTag('LAYOUT_MODIFY', `Could not parse layout to detect ID change: ${parseError}`);
428
+ }
429
+ const response = {
430
+ operation: "MOVE_WIDGET",
431
+ status: "SUCCESS",
432
+ pageUID,
433
+ oldWidgetId: widgetId,
434
+ newWidgetId,
435
+ newPosition,
436
+ widgetIdChanged,
437
+ message: widgetIdChanged
438
+ ? "Widget moved successfully - widget ID changed, please update any references"
439
+ : "Widget moved successfully"
440
+ };
354
441
  return {
355
- content: [{ type: "text", text: JSON.stringify(result, null, 2) }]
442
+ content: [{ type: "text", text: JSON.stringify(response, null, 2) }]
356
443
  };
357
444
  }
358
445
  catch (error) {
359
446
  debugLogWithTag('LAYOUT_MODIFY', `Error moving widget: ${error instanceof Error ? error.message : String(error)}`);
447
+ const errorResponse = {
448
+ operation: "MOVE_WIDGET",
449
+ status: "ERROR",
450
+ pageUID,
451
+ oldWidgetId: widgetId,
452
+ newPosition,
453
+ error: error instanceof Error ? error.message : String(error),
454
+ message: "Failed to move widget"
455
+ };
360
456
  return {
361
- content: [{ type: "text", text: `Error moving widget in layout: ${error instanceof Error ? error.message : String(error)}` }],
457
+ content: [{ type: "text", text: JSON.stringify(errorResponse, null, 2) }],
362
458
  isError: true
363
459
  };
364
460
  }
@@ -428,14 +524,35 @@ Examples: {'title': {'en': 'Embedded Widget', 'de': 'Eingebettetes Widget'}, 'sh
428
524
  debugLogWithTag('EMBEDDED_LAYOUT_ADD', `Request body: ${JSON.stringify(requestBody, null, 2)}`);
429
525
  const result = await client.makeApiRequest('json/page/embeddedWidgetLayout', 'PATCH', undefined, requestBody);
430
526
  debugLogWithTag('EMBEDDED_LAYOUT_ADD', `Successfully added widget ${widgetType} to embedded layout`);
527
+ const response = {
528
+ operation: "ADD_EMBEDDED_WIDGET",
529
+ status: "SUCCESS",
530
+ pageUID,
531
+ containerWidgetId,
532
+ layoutAttributeName,
533
+ widgetType,
534
+ position,
535
+ message: "Widget added successfully to embedded layout"
536
+ };
431
537
  return {
432
- content: [{ type: "text", text: JSON.stringify(result, null, 2) }]
538
+ content: [{ type: "text", text: JSON.stringify(response, null, 2) }]
433
539
  };
434
540
  }
435
541
  catch (error) {
436
542
  debugLogWithTag('EMBEDDED_LAYOUT_ADD', `Error adding widget to embedded layout: ${error instanceof Error ? error.message : String(error)}`);
543
+ const errorResponse = {
544
+ operation: "ADD_EMBEDDED_WIDGET",
545
+ status: "ERROR",
546
+ pageUID,
547
+ containerWidgetId,
548
+ layoutAttributeName,
549
+ widgetType,
550
+ position,
551
+ error: error instanceof Error ? error.message : String(error),
552
+ message: "Failed to add widget to embedded layout"
553
+ };
437
554
  return {
438
- content: [{ type: "text", text: `Error adding widget to embedded layout: ${error instanceof Error ? error.message : String(error)}` }],
555
+ content: [{ type: "text", text: JSON.stringify(errorResponse, null, 2) }],
439
556
  isError: true
440
557
  };
441
558
  }
@@ -464,14 +581,33 @@ Examples: {'title': {'en': 'Embedded Widget', 'de': 'Eingebettetes Widget'}, 'sh
464
581
  debugLogWithTag('EMBEDDED_LAYOUT_REMOVE', `Request body: ${JSON.stringify(requestBody, null, 2)}`);
465
582
  const result = await client.makeApiRequest('json/page/embeddedWidgetLayout', 'PATCH', undefined, requestBody);
466
583
  debugLogWithTag('EMBEDDED_LAYOUT_REMOVE', `Successfully removed widget ${widgetId} from embedded layout`);
584
+ const response = {
585
+ operation: "REMOVE_EMBEDDED_WIDGET",
586
+ status: "SUCCESS",
587
+ pageUID,
588
+ containerWidgetId,
589
+ layoutAttributeName,
590
+ widgetId,
591
+ message: "Widget removed successfully from embedded layout"
592
+ };
467
593
  return {
468
- content: [{ type: "text", text: JSON.stringify(result, null, 2) }]
594
+ content: [{ type: "text", text: JSON.stringify(response, null, 2) }]
469
595
  };
470
596
  }
471
597
  catch (error) {
472
598
  debugLogWithTag('EMBEDDED_LAYOUT_REMOVE', `Error removing widget from embedded layout: ${error instanceof Error ? error.message : String(error)}`);
599
+ const errorResponse = {
600
+ operation: "REMOVE_EMBEDDED_WIDGET",
601
+ status: "ERROR",
602
+ pageUID,
603
+ containerWidgetId,
604
+ layoutAttributeName,
605
+ widgetId,
606
+ error: error instanceof Error ? error.message : String(error),
607
+ message: "Failed to remove widget from embedded layout"
608
+ };
473
609
  return {
474
- content: [{ type: "text", text: `Error removing widget from embedded layout: ${error instanceof Error ? error.message : String(error)}` }],
610
+ content: [{ type: "text", text: JSON.stringify(errorResponse, null, 2) }],
475
611
  isError: true
476
612
  };
477
613
  }
@@ -494,14 +630,43 @@ Examples: {'title': {'en': 'Embedded Widget', 'de': 'Eingebettetes Widget'}, 'sh
494
630
  debugLogWithTag('LAYOUT_MODIFY', `Request body: ${JSON.stringify(requestBody, null, 2)}`);
495
631
  const result = await client.makeApiRequest('json/pageLayout', 'PATCH', undefined, requestBody);
496
632
  debugLogWithTag('LAYOUT_MODIFY', `Successfully compacted layout for page ${pageUID}`);
633
+ let emptyRowsRemoved = 0;
634
+ try {
635
+ const originalLayoutResult = await client.makeApiRequest('json/pageLayout', 'GET', { pageUID });
636
+ const originalLayout = JSON.parse(originalLayoutResult.result || '{}');
637
+ const originalRowCount = originalLayout.rows ? originalLayout.rows.length : 0;
638
+ const compactedLayoutString = result.result;
639
+ const compactedLayout = JSON.parse(compactedLayoutString);
640
+ const compactedRowCount = compactedLayout.rows ? compactedLayout.rows.length : 0;
641
+ emptyRowsRemoved = Math.max(0, originalRowCount - compactedRowCount);
642
+ }
643
+ catch (parseError) {
644
+ debugLogWithTag('LAYOUT_MODIFY', `Could not calculate compaction statistics: ${parseError}`);
645
+ }
646
+ const response = {
647
+ operation: "COMPACT_LAYOUT",
648
+ status: "SUCCESS",
649
+ pageUID,
650
+ emptyRowsRemoved,
651
+ message: emptyRowsRemoved > 0
652
+ ? `Layout compacted successfully - removed ${emptyRowsRemoved} empty row${emptyRowsRemoved === 1 ? '' : 's'}`
653
+ : "Layout was already compact - no empty rows found"
654
+ };
497
655
  return {
498
- content: [{ type: "text", text: JSON.stringify(result, null, 2) }]
656
+ content: [{ type: "text", text: JSON.stringify(response, null, 2) }]
499
657
  };
500
658
  }
501
659
  catch (error) {
502
660
  debugLogWithTag('LAYOUT_MODIFY', `Error compacting layout: ${error instanceof Error ? error.message : String(error)}`);
661
+ const errorResponse = {
662
+ operation: "COMPACT_LAYOUT",
663
+ status: "ERROR",
664
+ pageUID,
665
+ error: error instanceof Error ? error.message : String(error),
666
+ message: "Failed to compact layout"
667
+ };
503
668
  return {
504
- content: [{ type: "text", text: `Error compacting page layout: ${error instanceof Error ? error.message : String(error)}` }],
669
+ content: [{ type: "text", text: JSON.stringify(errorResponse, null, 2) }],
505
670
  isError: true
506
671
  };
507
672
  }
@@ -528,14 +693,48 @@ Examples: {'title': {'en': 'Embedded Widget', 'de': 'Eingebettetes Widget'}, 'sh
528
693
  debugLogWithTag('LAYOUT_MODIFY', `Request body: ${JSON.stringify(requestBody, null, 2)}`);
529
694
  const result = await client.makeApiRequest('json/pageLayout', 'PATCH', undefined, requestBody);
530
695
  debugLogWithTag('LAYOUT_MODIFY', `Successfully added row ${rowIndex} with ${columnProportions.length} columns to page ${pageUID}`);
696
+ const columnsCreated = columnProportions.length;
697
+ const columnSum = columnProportions.reduce((sum, prop) => sum + prop, 0);
698
+ let insertionType = "appended";
699
+ try {
700
+ const layoutString = result.result;
701
+ const layout = JSON.parse(layoutString);
702
+ if (layout.rows && layout.rows.length > rowIndex + 1) {
703
+ insertionType = "inserted";
704
+ }
705
+ }
706
+ catch (parseError) {
707
+ debugLogWithTag('LAYOUT_MODIFY', `Could not determine insertion type: ${parseError}`);
708
+ }
709
+ const response = {
710
+ operation: "ADD_ROW",
711
+ status: "SUCCESS",
712
+ pageUID,
713
+ rowIndex,
714
+ columnProportions,
715
+ columnsCreated,
716
+ insertionType,
717
+ message: insertionType === "inserted"
718
+ ? `Row added successfully at index ${rowIndex} with ${columnsCreated} column${columnsCreated === 1 ? '' : 's'} [${columnProportions.join(',')}]`
719
+ : `Row added successfully at end with ${columnsCreated} column${columnsCreated === 1 ? '' : 's'} [${columnProportions.join(',')}]`
720
+ };
531
721
  return {
532
- content: [{ type: "text", text: JSON.stringify(result, null, 2) }]
722
+ content: [{ type: "text", text: JSON.stringify(response, null, 2) }]
533
723
  };
534
724
  }
535
725
  catch (error) {
536
726
  debugLogWithTag('LAYOUT_MODIFY', `Error adding row: ${error instanceof Error ? error.message : String(error)}`);
727
+ const errorResponse = {
728
+ operation: "ADD_ROW",
729
+ status: "ERROR",
730
+ pageUID,
731
+ rowIndex,
732
+ columnProportions,
733
+ error: error instanceof Error ? error.message : String(error),
734
+ message: "Failed to add row"
735
+ };
537
736
  return {
538
- content: [{ type: "text", text: `Error adding row to page layout: ${error instanceof Error ? error.message : String(error)}` }],
737
+ content: [{ type: "text", text: JSON.stringify(errorResponse, null, 2) }],
539
738
  isError: true
540
739
  };
541
740
  }
@@ -1 +1 @@
1
- {"version":3,"file":"widgets.js","sourceRoot":"","sources":["../../src/tools/widgets.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"widgets.js","sourceRoot":"","sources":["../../src/tools/widgets.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"workspace.d.ts","sourceRoot":"","sources":["../../src/tools/workspace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,EAAE,eAAe,EAAqB,MAAM,WAAW,CAAC;AAI/D,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,eAAe,QAsehF"}
1
+ {"version":3,"file":"workspace.d.ts","sourceRoot":"","sources":["../../src/tools/workspace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,EAAE,eAAe,EAAqB,MAAM,WAAW,CAAC;AAI/D,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,eAAe,QA8mBhF"}
@@ -143,7 +143,7 @@ export function registerWorkspaceTools(server, client) {
143
143
  description: "Create or update type definitions in a workspace with comprehensive configuration options. All properties from the enhanced read endpoint are available for both creation and updates to enable complete type configuration.",
144
144
  inputSchema: {
145
145
  operation: z.enum(["create", "update"]).describe("Operation type: 'create' for new type definitions, 'update' for existing type definitions"),
146
- workspaceId: z.string().optional().describe("Required for both: Target workspace ID (e.g., 'workspace/abc123')"),
146
+ workspaceId: z.string().optional().describe("Required for both: Target workspace ID (e.g., 'abc123')"),
147
147
  typeInternalName: z.string().optional().describe("For create: type internal name (e.g., 'cf.example.myType'). For update: type internal name to update (e.g., 'cf.example.myType')"),
148
148
  localizedNames: z.record(z.string()).optional().describe("Localized type names (singular) - e.g., {\"en\": \"My Type\", \"de\": \"Mein Typ\"}"),
149
149
  localizedPlural: z.record(z.string()).optional().describe("Localized type names (plural) - e.g., {\"en\": \"My Types\", \"de\": \"Meine Typen\"}"),
@@ -429,5 +429,116 @@ export function registerWorkspaceTools(server, client) {
429
429
  };
430
430
  }
431
431
  });
432
+ server.registerTool("cplace_create_workspace", {
433
+ description: "Create a new workspace (PageSpace) with specified configuration including name, permissions, and apps. Requires global CREATE_PAGE_SPACE permission.",
434
+ inputSchema: {
435
+ name: z.string().describe("Required: Internal workspace name (must be unique across the system)"),
436
+ administratorUids: z.array(z.string()).optional().describe("Optional: List of administrator principal UIDs (e.g., ['person/user123', 'person/admin456']). Defaults to current user if not provided."),
437
+ readerUids: z.array(z.string()).optional().describe("Optional: List of reader principal UIDs (e.g., ['person/reader789'])"),
438
+ writerUids: z.array(z.string()).optional().describe("Optional: List of writer principal UIDs (e.g., ['person/writer456'])"),
439
+ layouterUids: z.array(z.string()).optional().describe("Optional: List of layouter principal UIDs (e.g., ['person/layouter123'])"),
440
+ apps: z.array(z.string()).optional().describe("Optional: List of app qualified names to install (e.g., ['cf.cplace.solution.safe', 'cf.cplace.solution.ppm']). Apps are installed best-effort - incompatible apps are skipped with warnings.")
441
+ },
442
+ annotations: { title: "Create Workspace" }
443
+ }, async ({ name, administratorUids, readerUids, writerUids, layouterUids, apps }) => {
444
+ debugLogWithTag('WORKSPACES', `Creating workspace: ${name}`);
445
+ try {
446
+ const requestBody = { name };
447
+ if (administratorUids)
448
+ requestBody.administratorUids = administratorUids;
449
+ if (readerUids)
450
+ requestBody.readerUids = readerUids;
451
+ if (writerUids)
452
+ requestBody.writerUids = writerUids;
453
+ if (layouterUids)
454
+ requestBody.layouterUids = layouterUids;
455
+ if (apps)
456
+ requestBody.apps = apps;
457
+ const result = await client.makeApiRequest('json/workspace/create', 'POST', undefined, requestBody);
458
+ debugLogWithTag('WORKSPACES', `Successfully created workspace: ${name} with ID: ${result.result?.workspaceId}`);
459
+ return {
460
+ content: [{ type: "text", text: JSON.stringify(result, null, 2) }]
461
+ };
462
+ }
463
+ catch (error) {
464
+ debugLogWithTag('WORKSPACES', `Error creating workspace ${name}: ${error instanceof Error ? error.message : String(error)}`);
465
+ return {
466
+ content: [{ type: "text", text: `Error creating workspace: ${error instanceof Error ? error.message : String(error)}` }],
467
+ isError: true
468
+ };
469
+ }
470
+ });
471
+ server.registerTool("cplace_list_workspace_apps", {
472
+ description: "Get comprehensive information about applications within a workspace, including installed apps, available apps for installation, dependency information, and compatibility status",
473
+ inputSchema: {
474
+ workspaceId: z.string().describe("The ID of the workspace to query for apps (e.g., 'abc123')")
475
+ },
476
+ annotations: { title: "List Workspace Apps" }
477
+ }, async ({ workspaceId }) => {
478
+ debugLogWithTag('WORKSPACES', `Getting apps for workspace: ${workspaceId}`);
479
+ try {
480
+ const result = await client.makeApiRequest('json/apps', 'GET', { workspaceId });
481
+ debugLogWithTag('WORKSPACES', `Retrieved apps data for workspace ${workspaceId}`);
482
+ debugLogWithTag('WORKSPACES', `Installed apps: ${result.result?.installed?.length || 0}, Available apps: ${result.result?.available?.length || 0}`);
483
+ const sizeCheck = checkResponseSize(result);
484
+ if (sizeCheck.tooLarge) {
485
+ return {
486
+ content: [{ type: "text", text: `Response too large (${sizeCheck.actualSize} characters, max allowed: 45000). The apps data for this workspace is too large to display. Consider using the workspace details tool for basic app information.` }],
487
+ isError: true
488
+ };
489
+ }
490
+ return {
491
+ content: [{ type: "text", text: JSON.stringify(result, null, 2) }]
492
+ };
493
+ }
494
+ catch (error) {
495
+ debugLogWithTag('WORKSPACES', `Error getting apps for workspace ${workspaceId}: ${error instanceof Error ? error.message : String(error)}`);
496
+ return {
497
+ content: [{ type: "text", text: `Error retrieving workspace apps: ${error instanceof Error ? error.message : String(error)}` }],
498
+ isError: true
499
+ };
500
+ }
501
+ });
502
+ server.registerTool("cplace_install_workspace_app", {
503
+ description: "Install a specific application into a workspace, including automatic dependency resolution. Validates permissions, app compatibility, and automatically installs required dependencies.",
504
+ inputSchema: {
505
+ workspaceId: z.string().describe("The ID of the workspace to install the app in (e.g., 'abc123')"),
506
+ appQualifiedName: z.string().describe("The qualified name of the app to install (e.g., 'cf.cplace.solution.safe')")
507
+ },
508
+ annotations: { title: "Install Workspace App" }
509
+ }, async ({ workspaceId, appQualifiedName }) => {
510
+ debugLogWithTag('WORKSPACES', `Installing app: ${appQualifiedName} in workspace: ${workspaceId}`);
511
+ try {
512
+ const requestBody = {
513
+ workspaceId,
514
+ appQualifiedName
515
+ };
516
+ const result = await client.makeApiRequest('json/install-app', 'POST', undefined, requestBody);
517
+ debugLogWithTag('WORKSPACES', `Successfully installed app: ${appQualifiedName}`);
518
+ const sizeCheck = checkResponseSize(result);
519
+ if (sizeCheck.tooLarge) {
520
+ return {
521
+ content: [{
522
+ type: "text",
523
+ text: `App installed successfully but response too large (${sizeCheck.actualSize} characters, max allowed: 45000). Use cplace_list_workspace_apps to see updated app information.`
524
+ }],
525
+ isError: true
526
+ };
527
+ }
528
+ return {
529
+ content: [{ type: "text", text: JSON.stringify(result, null, 2) }]
530
+ };
531
+ }
532
+ catch (error) {
533
+ debugLogWithTag('WORKSPACES', `Error installing app ${appQualifiedName} in workspace ${workspaceId}: ${error instanceof Error ? error.message : String(error)}`);
534
+ return {
535
+ content: [{
536
+ type: "text",
537
+ text: `Error installing app: ${error instanceof Error ? error.message : String(error)}`
538
+ }],
539
+ isError: true
540
+ };
541
+ }
542
+ });
432
543
  }
433
544
  //# sourceMappingURL=workspace.js.map