ncloud-mcp-server 1.0.4 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (147) hide show
  1. package/README.md +18 -2
  2. package/README_EN.md +18 -2
  3. package/dist/index.js +12 -331
  4. package/dist/index.js.map +1 -1
  5. package/dist/tools/_response.d.ts +69 -0
  6. package/dist/tools/_response.js +96 -0
  7. package/dist/tools/_response.js.map +1 -0
  8. package/dist/tools/acg.js +10 -9
  9. package/dist/tools/acg.js.map +1 -1
  10. package/dist/tools/activity-tracer.js +4 -3
  11. package/dist/tools/activity-tracer.js.map +1 -1
  12. package/dist/tools/analytics-cdss.js +51 -50
  13. package/dist/tools/analytics-cdss.js.map +1 -1
  14. package/dist/tools/analytics-datacatalog.js +22 -21
  15. package/dist/tools/analytics-datacatalog.js.map +1 -1
  16. package/dist/tools/analytics-dataflow.js +27 -26
  17. package/dist/tools/analytics-dataflow.js.map +1 -1
  18. package/dist/tools/analytics-dataforest.js +25 -24
  19. package/dist/tools/analytics-dataforest.js.map +1 -1
  20. package/dist/tools/analytics-dataquery.js +6 -5
  21. package/dist/tools/analytics-dataquery.js.map +1 -1
  22. package/dist/tools/analytics-datastream.js +22 -21
  23. package/dist/tools/analytics-datastream.js.map +1 -1
  24. package/dist/tools/analytics-hadoop.js +30 -29
  25. package/dist/tools/analytics-hadoop.js.map +1 -1
  26. package/dist/tools/analytics-ses.js +43 -42
  27. package/dist/tools/analytics-ses.js.map +1 -1
  28. package/dist/tools/api-gateway.js +13 -12
  29. package/dist/tools/api-gateway.js.map +1 -1
  30. package/dist/tools/autoscaling.js +25 -24
  31. package/dist/tools/autoscaling.js.map +1 -1
  32. package/dist/tools/billing.d.ts +0 -11
  33. package/dist/tools/billing.js +210 -48
  34. package/dist/tools/billing.js.map +1 -1
  35. package/dist/tools/certificate-manager.js +4 -3
  36. package/dist/tools/certificate-manager.js.map +1 -1
  37. package/dist/tools/cloud-advisor.js +16 -15
  38. package/dist/tools/cloud-advisor.js.map +1 -1
  39. package/dist/tools/cloud-functions.js +22 -21
  40. package/dist/tools/cloud-functions.js.map +1 -1
  41. package/dist/tools/cloud-insight-integration.js +6 -5
  42. package/dist/tools/cloud-insight-integration.js.map +1 -1
  43. package/dist/tools/cloud-insight-plugin.js +34 -33
  44. package/dist/tools/cloud-insight-plugin.js.map +1 -1
  45. package/dist/tools/cloud-insight-rule.js +28 -27
  46. package/dist/tools/cloud-insight-rule.js.map +1 -1
  47. package/dist/tools/cloud-insight.js +12 -11
  48. package/dist/tools/cloud-insight.js.map +1 -1
  49. package/dist/tools/common.js +6 -5
  50. package/dist/tools/common.js.map +1 -1
  51. package/dist/tools/compute-initscript.js +5 -4
  52. package/dist/tools/compute-initscript.js.map +1 -1
  53. package/dist/tools/compute-loginkey.js +5 -4
  54. package/dist/tools/compute-loginkey.js.map +1 -1
  55. package/dist/tools/compute-placement.js +14 -13
  56. package/dist/tools/compute-placement.js.map +1 -1
  57. package/dist/tools/compute-publicip.js +8 -7
  58. package/dist/tools/compute-publicip.js.map +1 -1
  59. package/dist/tools/compute-server.js +29 -28
  60. package/dist/tools/compute-server.js.map +1 -1
  61. package/dist/tools/compute-storage.js +16 -15
  62. package/dist/tools/compute-storage.js.map +1 -1
  63. package/dist/tools/containers-nks.js +38 -37
  64. package/dist/tools/containers-nks.js.map +1 -1
  65. package/dist/tools/containers-registry.js +13 -12
  66. package/dist/tools/containers-registry.js.map +1 -1
  67. package/dist/tools/database-cache.js +25 -24
  68. package/dist/tools/database-cache.js.map +1 -1
  69. package/dist/tools/database-mongodb.js +25 -24
  70. package/dist/tools/database-mongodb.js.map +1 -1
  71. package/dist/tools/database-mssql.js +23 -22
  72. package/dist/tools/database-mssql.js.map +1 -1
  73. package/dist/tools/database-mysql.js +30 -29
  74. package/dist/tools/database-mysql.js.map +1 -1
  75. package/dist/tools/database-postgresql.js +26 -25
  76. package/dist/tools/database-postgresql.js.map +1 -1
  77. package/dist/tools/global-dns.js +13 -12
  78. package/dist/tools/global-dns.js.map +1 -1
  79. package/dist/tools/global-edge.js +21 -20
  80. package/dist/tools/global-edge.js.map +1 -1
  81. package/dist/tools/global-traffic-manager.js +27 -26
  82. package/dist/tools/global-traffic-manager.js.map +1 -1
  83. package/dist/tools/kms.js +52 -39
  84. package/dist/tools/kms.js.map +1 -1
  85. package/dist/tools/loadbalancer.js +17 -16
  86. package/dist/tools/loadbalancer.js.map +1 -1
  87. package/dist/tools/log-analytics.js +11 -10
  88. package/dist/tools/log-analytics.js.map +1 -1
  89. package/dist/tools/media-imageoptimizer.js +10 -9
  90. package/dist/tools/media-imageoptimizer.js.map +1 -1
  91. package/dist/tools/media-livestation.js +13 -12
  92. package/dist/tools/media-livestation.js.map +1 -1
  93. package/dist/tools/media-vodstation.js +11 -10
  94. package/dist/tools/media-vodstation.js.map +1 -1
  95. package/dist/tools/nat-gateway.js +6 -5
  96. package/dist/tools/nat-gateway.js.map +1 -1
  97. package/dist/tools/network-acl.js +18 -17
  98. package/dist/tools/network-acl.js.map +1 -1
  99. package/dist/tools/network-interface.js +15 -14
  100. package/dist/tools/network-interface.js.map +1 -1
  101. package/dist/tools/private-ca.js +32 -23
  102. package/dist/tools/private-ca.js.map +1 -1
  103. package/dist/tools/registry.d.ts +49 -0
  104. package/dist/tools/registry.js +254 -0
  105. package/dist/tools/registry.js.map +1 -0
  106. package/dist/tools/resource-manager.js +7 -6
  107. package/dist/tools/resource-manager.js.map +1 -1
  108. package/dist/tools/route-table.js +12 -11
  109. package/dist/tools/route-table.js.map +1 -1
  110. package/dist/tools/security-monitoring.js +8 -7
  111. package/dist/tools/security-monitoring.js.map +1 -1
  112. package/dist/tools/sens.js +7 -6
  113. package/dist/tools/sens.js.map +1 -1
  114. package/dist/tools/sourcebuild.js +18 -17
  115. package/dist/tools/sourcebuild.js.map +1 -1
  116. package/dist/tools/sourcecommit.js +13 -12
  117. package/dist/tools/sourcecommit.js.map +1 -1
  118. package/dist/tools/sourcedeploy.js +35 -34
  119. package/dist/tools/sourcedeploy.js.map +1 -1
  120. package/dist/tools/sourcepipeline.js +18 -17
  121. package/dist/tools/sourcepipeline.js.map +1 -1
  122. package/dist/tools/storage-archive.js +13 -12
  123. package/dist/tools/storage-archive.js.map +1 -1
  124. package/dist/tools/storage-nas.js +20 -19
  125. package/dist/tools/storage-nas.js.map +1 -1
  126. package/dist/tools/storage-ncloud.js +25 -24
  127. package/dist/tools/storage-ncloud.js.map +1 -1
  128. package/dist/tools/storage-object.js +29 -28
  129. package/dist/tools/storage-object.js.map +1 -1
  130. package/dist/tools/sub-account.js +19 -18
  131. package/dist/tools/sub-account.js.map +1 -1
  132. package/dist/tools/target-group.js +12 -11
  133. package/dist/tools/target-group.js.map +1 -1
  134. package/dist/tools/vpc-peering.js +8 -7
  135. package/dist/tools/vpc-peering.js.map +1 -1
  136. package/dist/tools/vpc.js +11 -10
  137. package/dist/tools/vpc.js.map +1 -1
  138. package/package.json +1 -1
  139. package/dist/auth/signature.test.d.ts +0 -1
  140. package/dist/auth/signature.test.js +0 -90
  141. package/dist/auth/signature.test.js.map +0 -1
  142. package/dist/client/ncloud-client.test.d.ts +0 -1
  143. package/dist/client/ncloud-client.test.js +0 -477
  144. package/dist/client/ncloud-client.test.js.map +0 -1
  145. package/dist/tools/compute-server.test.d.ts +0 -1
  146. package/dist/tools/compute-server.test.js +0 -224
  147. package/dist/tools/compute-server.test.js.map +0 -1
@@ -1,4 +1,5 @@
1
1
  import { z } from "zod";
2
+ import { toolText } from "./_response.js";
2
3
  /**
3
4
  * Data Flow API Tools
4
5
  *
@@ -27,7 +28,7 @@ export function registerDataFlowTools(server, client) {
27
28
  if (params.endTime)
28
29
  queryParams.endTime = params.endTime;
29
30
  const result = await client.requestRaw("GET", "/api/v1/dashboard/execution-interval", Object.keys(queryParams).length > 0 ? queryParams : undefined);
30
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
31
+ return toolText(result);
31
32
  }
32
33
  catch (error) {
33
34
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -44,7 +45,7 @@ export function registerDataFlowTools(server, client) {
44
45
  if (params.endTime)
45
46
  queryParams.endTime = params.endTime;
46
47
  const result = await client.requestRaw("GET", "/api/v1/dashboard/execution-result", Object.keys(queryParams).length > 0 ? queryParams : undefined);
47
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
48
+ return toolText(result);
48
49
  }
49
50
  catch (error) {
50
51
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -61,7 +62,7 @@ export function registerDataFlowTools(server, client) {
61
62
  if (params.endTime)
62
63
  queryParams.endTime = params.endTime;
63
64
  const result = await client.requestRaw("GET", "/api/v1/dashboard/execution-times", Object.keys(queryParams).length > 0 ? queryParams : undefined);
64
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
65
+ return toolText(result);
65
66
  }
66
67
  catch (error) {
67
68
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -84,7 +85,7 @@ export function registerDataFlowTools(server, client) {
84
85
  if (params.searchText)
85
86
  queryParams.searchText = params.searchText;
86
87
  const result = await client.requestRaw("GET", "/api/v1/workflows", Object.keys(queryParams).length > 0 ? queryParams : undefined);
87
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
88
+ return toolText(result);
88
89
  }
89
90
  catch (error) {
90
91
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -95,7 +96,7 @@ export function registerDataFlowTools(server, client) {
95
96
  }, async (params) => {
96
97
  try {
97
98
  const result = await client.requestRaw("GET", `/api/v1/workflows/${params.workflowId}`);
98
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
99
+ return toolText(result);
99
100
  }
100
101
  catch (error) {
101
102
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -126,7 +127,7 @@ export function registerDataFlowTools(server, client) {
126
127
  edgeCount: params.edges?.length ?? 0,
127
128
  message: "dryRun=false로 호출하면 워크플로가 생성됩니다.",
128
129
  };
129
- return { content: [{ type: "text", text: JSON.stringify(preview, null, 2) }] };
130
+ return toolText(preview);
130
131
  }
131
132
  const body = { name: params.name };
132
133
  if (params.description !== undefined)
@@ -136,7 +137,7 @@ export function registerDataFlowTools(server, client) {
136
137
  if (params.edges !== undefined)
137
138
  body.edges = params.edges;
138
139
  const result = await client.requestRaw("POST", "/api/v1/workflows", undefined, body);
139
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
140
+ return toolText(result);
140
141
  }
141
142
  catch (error) {
142
143
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -169,7 +170,7 @@ export function registerDataFlowTools(server, client) {
169
170
  if (bodyParams.edges !== undefined)
170
171
  body.edges = bodyParams.edges;
171
172
  const result = await client.requestRaw("PUT", `/api/v1/workflows/${workflowId}`, undefined, body);
172
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
173
+ return toolText(result);
173
174
  }
174
175
  catch (error) {
175
176
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -184,7 +185,7 @@ export function registerDataFlowTools(server, client) {
184
185
  return { content: [{ type: "text", text: `⚠️ This will permanently delete workflow [${params.workflowId}].\nTo execute, call again with confirm=true.` }] };
185
186
  }
186
187
  const result = await client.requestRaw("DELETE", `/api/v1/workflows/${params.workflowId}`);
187
- return { content: [{ type: "text", text: JSON.stringify(result ?? { success: true }, null, 2) }] };
188
+ return toolText(result ?? { success: true });
188
189
  }
189
190
  catch (error) {
190
191
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -202,7 +203,7 @@ export function registerDataFlowTools(server, client) {
202
203
  if (params.size !== undefined)
203
204
  queryParams.size = params.size;
204
205
  const result = await client.requestRaw("GET", `/api/v1/workflows/${params.workflowId}/executions`, Object.keys(queryParams).length > 0 ? queryParams : undefined);
205
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
206
+ return toolText(result);
206
207
  }
207
208
  catch (error) {
208
209
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -228,7 +229,7 @@ export function registerDataFlowTools(server, client) {
228
229
  if (params.status)
229
230
  queryParams.status = params.status;
230
231
  const result = await client.requestRaw("GET", "/api/v1/jobs", Object.keys(queryParams).length > 0 ? queryParams : undefined);
231
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
232
+ return toolText(result);
232
233
  }
233
234
  catch (error) {
234
235
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -239,7 +240,7 @@ export function registerDataFlowTools(server, client) {
239
240
  }, async (params) => {
240
241
  try {
241
242
  const result = await client.requestRaw("GET", `/api/v1/jobs/${params.jobId}`);
242
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
243
+ return toolText(result);
243
244
  }
244
245
  catch (error) {
245
246
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -262,7 +263,7 @@ export function registerDataFlowTools(server, client) {
262
263
  options: params.options ?? {},
263
264
  message: "dryRun=false로 호출하면 작업이 생성됩니다.",
264
265
  };
265
- return { content: [{ type: "text", text: JSON.stringify(preview, null, 2) }] };
266
+ return toolText(preview);
266
267
  }
267
268
  const body = { name: params.name };
268
269
  if (params.description !== undefined)
@@ -272,7 +273,7 @@ export function registerDataFlowTools(server, client) {
272
273
  if (params.options !== undefined)
273
274
  body.options = params.options;
274
275
  const result = await client.requestRaw("POST", "/api/v1/jobs", undefined, body);
275
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
276
+ return toolText(result);
276
277
  }
277
278
  catch (error) {
278
279
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -297,7 +298,7 @@ export function registerDataFlowTools(server, client) {
297
298
  if (bodyParams.options !== undefined)
298
299
  body.options = bodyParams.options;
299
300
  const result = await client.requestRaw("PUT", `/api/v1/jobs/${jobId}`, undefined, body);
300
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
301
+ return toolText(result);
301
302
  }
302
303
  catch (error) {
303
304
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -308,7 +309,7 @@ export function registerDataFlowTools(server, client) {
308
309
  }, async (params) => {
309
310
  try {
310
311
  const result = await client.requestRaw("POST", `/api/v1/jobs/${params.jobId}/verify`);
311
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
312
+ return toolText(result);
312
313
  }
313
314
  catch (error) {
314
315
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -319,7 +320,7 @@ export function registerDataFlowTools(server, client) {
319
320
  }, async (params) => {
320
321
  try {
321
322
  const result = await client.requestRaw("POST", `/api/v1/jobs/${params.jobId}/execute`);
322
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
323
+ return toolText(result);
323
324
  }
324
325
  catch (error) {
325
326
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -337,7 +338,7 @@ export function registerDataFlowTools(server, client) {
337
338
  if (params.size !== undefined)
338
339
  queryParams.size = params.size;
339
340
  const result = await client.requestRaw("GET", `/api/v1/jobs/${params.jobId}/executions`, Object.keys(queryParams).length > 0 ? queryParams : undefined);
340
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
341
+ return toolText(result);
341
342
  }
342
343
  catch (error) {
343
344
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -349,7 +350,7 @@ export function registerDataFlowTools(server, client) {
349
350
  }, async (params) => {
350
351
  try {
351
352
  const result = await client.requestRaw("GET", `/api/v1/jobs/${params.jobId}/executions/${params.executionId}`);
352
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
353
+ return toolText(result);
353
354
  }
354
355
  catch (error) {
355
356
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -362,7 +363,7 @@ export function registerDataFlowTools(server, client) {
362
363
  try {
363
364
  const body = { options: params.options };
364
365
  const result = await client.requestRaw("PUT", `/api/v1/jobs/${params.jobId}/execute-config`, undefined, body);
365
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
366
+ return toolText(result);
366
367
  }
367
368
  catch (error) {
368
369
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -377,7 +378,7 @@ export function registerDataFlowTools(server, client) {
377
378
  return { content: [{ type: "text", text: `⚠️ This will permanently delete job [${params.jobId}].\nTo execute, call again with confirm=true.` }] };
378
379
  }
379
380
  const result = await client.requestRaw("DELETE", `/api/v1/jobs/${params.jobId}`);
380
- return { content: [{ type: "text", text: JSON.stringify(result ?? { success: true }, null, 2) }] };
381
+ return toolText(result ?? { success: true });
381
382
  }
382
383
  catch (error) {
383
384
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -400,7 +401,7 @@ export function registerDataFlowTools(server, client) {
400
401
  if (params.searchText)
401
402
  queryParams.searchText = params.searchText;
402
403
  const result = await client.requestRaw("GET", "/api/v1/triggers", Object.keys(queryParams).length > 0 ? queryParams : undefined);
403
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
404
+ return toolText(result);
404
405
  }
405
406
  catch (error) {
406
407
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -411,7 +412,7 @@ export function registerDataFlowTools(server, client) {
411
412
  }, async (params) => {
412
413
  try {
413
414
  const result = await client.requestRaw("GET", `/api/v1/triggers/${params.triggerId}`);
414
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
415
+ return toolText(result);
415
416
  }
416
417
  catch (error) {
417
418
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -438,7 +439,7 @@ export function registerDataFlowTools(server, client) {
438
439
  enabled: params.enabled ?? true,
439
440
  message: "dryRun=false로 호출하면 트리거가 생성됩니다.",
440
441
  };
441
- return { content: [{ type: "text", text: JSON.stringify(preview, null, 2) }] };
442
+ return toolText(preview);
442
443
  }
443
444
  const body = {
444
445
  name: params.name,
@@ -453,7 +454,7 @@ export function registerDataFlowTools(server, client) {
453
454
  if (params.enabled !== undefined)
454
455
  body.enabled = params.enabled;
455
456
  const result = await client.requestRaw("POST", "/api/v1/triggers", undefined, body);
456
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
457
+ return toolText(result);
457
458
  }
458
459
  catch (error) {
459
460
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -468,7 +469,7 @@ export function registerDataFlowTools(server, client) {
468
469
  return { content: [{ type: "text", text: `⚠️ This will permanently delete trigger [${params.triggerId}].\nTo execute, call again with confirm=true.` }] };
469
470
  }
470
471
  const result = await client.requestRaw("DELETE", `/api/v1/triggers/${params.triggerId}`);
471
- return { content: [{ type: "text", text: JSON.stringify(result ?? { success: true }, null, 2) }] };
472
+ return toolText(result ?? { success: true });
472
473
  }
473
474
  catch (error) {
474
475
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -1 +1 @@
1
- {"version":3,"file":"analytics-dataflow.js","sourceRoot":"","sources":["../../src/tools/analytics-dataflow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"analytics-dataflow.js","sourceRoot":"","sources":["../../src/tools/analytics-dataflow.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { z } from "zod";
2
+ import { toolText } from "./_response.js";
2
3
  /**
3
4
  * Data Forest — 빅데이터 분석 플랫폼 (Accounts & Apps 관리)
4
5
  *
@@ -17,7 +18,7 @@ export function registerDataForestTools(server, client) {
17
18
  const result = await client.postRequest("/api/v2/accounts/checkAvailableName", {
18
19
  name: params.name,
19
20
  });
20
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
21
+ return toolText(result);
21
22
  }
22
23
  catch (error) {
23
24
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -32,7 +33,7 @@ export function registerDataForestTools(server, client) {
32
33
  name: params.name,
33
34
  password: params.password,
34
35
  });
35
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
36
+ return toolText(result);
36
37
  }
37
38
  catch (error) {
38
39
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -41,7 +42,7 @@ export function registerDataForestTools(server, client) {
41
42
  server.tool("ncloud_dataforest_list_accounts", "List all Data Forest accounts", {}, async () => {
42
43
  try {
43
44
  const result = await client.postRequest("/api/v2/accounts/getList", {});
44
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
45
+ return toolText(result);
45
46
  }
46
47
  catch (error) {
47
48
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -54,7 +55,7 @@ export function registerDataForestTools(server, client) {
54
55
  const result = await client.postRequest("/api/v2/accounts/getDetail", {
55
56
  id: params.id,
56
57
  });
57
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
58
+ return toolText(result);
58
59
  }
59
60
  catch (error) {
60
61
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -67,7 +68,7 @@ export function registerDataForestTools(server, client) {
67
68
  const result = await client.postRequest("/api/v2/accounts/checkHasResource", {
68
69
  id: params.id,
69
70
  });
70
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
71
+ return toolText(result);
71
72
  }
72
73
  catch (error) {
73
74
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -80,7 +81,7 @@ export function registerDataForestTools(server, client) {
80
81
  const result = await client.postRequest("/api/v2/accounts/getKerberosKeytab", {
81
82
  id: params.id,
82
83
  });
83
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
84
+ return toolText(result);
84
85
  }
85
86
  catch (error) {
86
87
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -93,7 +94,7 @@ export function registerDataForestTools(server, client) {
93
94
  const result = await client.postRequest("/api/v2/accounts/resetKerberosKeytab", {
94
95
  id: params.id,
95
96
  });
96
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
97
+ return toolText(result);
97
98
  }
98
99
  catch (error) {
99
100
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -108,7 +109,7 @@ export function registerDataForestTools(server, client) {
108
109
  id: params.id,
109
110
  password: params.password,
110
111
  });
111
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
112
+ return toolText(result);
112
113
  }
113
114
  catch (error) {
114
115
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -127,7 +128,7 @@ export function registerDataForestTools(server, client) {
127
128
  fileCountMillion: params.fileCountMillion,
128
129
  spaceTb: params.spaceTb,
129
130
  });
130
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
131
+ return toolText(result);
131
132
  }
132
133
  catch (error) {
133
134
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -147,7 +148,7 @@ export function registerDataForestTools(server, client) {
147
148
  const result = await client.postRequest("/api/v2/accounts/delete", {
148
149
  id: params.id,
149
150
  });
150
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
151
+ return toolText(result);
151
152
  }
152
153
  catch (error) {
153
154
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -165,7 +166,7 @@ export function registerDataForestTools(server, client) {
165
166
  accountId: params.accountId,
166
167
  name: params.name,
167
168
  });
168
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
169
+ return toolText(result);
169
170
  }
170
171
  catch (error) {
171
172
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -180,7 +181,7 @@ export function registerDataForestTools(server, client) {
180
181
  accountId: params.accountId,
181
182
  appTypeId: params.appTypeId,
182
183
  });
183
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
184
+ return toolText(result);
184
185
  }
185
186
  catch (error) {
186
187
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -189,7 +190,7 @@ export function registerDataForestTools(server, client) {
189
190
  server.tool("ncloud_dataforest_get_app_type_ids", "Get available Data Forest app type ID list (e.g. DEV-1.0.0, KAFKA-2.4.0, ZEPPELIN-0.10.1)", {}, async () => {
190
191
  try {
191
192
  const result = await client.postRequest("/api/v2/apps/getAppTypeIdList", {});
192
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
193
+ return toolText(result);
193
194
  }
194
195
  catch (error) {
195
196
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -202,7 +203,7 @@ export function registerDataForestTools(server, client) {
202
203
  const result = await client.postRequest("/api/v2/apps/getAppTypeTemplate", {
203
204
  appTypeId: params.appTypeId,
204
205
  });
205
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
206
+ return toolText(result);
206
207
  }
207
208
  catch (error) {
208
209
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -237,7 +238,7 @@ export function registerDataForestTools(server, client) {
237
238
  if (params.dependentIds)
238
239
  body.dependentIds = params.dependentIds;
239
240
  const result = await client.postRequest("/api/v2/apps/create", body);
240
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
241
+ return toolText(result);
241
242
  }
242
243
  catch (error) {
243
244
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -250,7 +251,7 @@ export function registerDataForestTools(server, client) {
250
251
  const result = await client.postRequest("/api/v2/apps/getList", {
251
252
  search: { accountId: params.accountId },
252
253
  });
253
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
254
+ return toolText(result);
254
255
  }
255
256
  catch (error) {
256
257
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -263,7 +264,7 @@ export function registerDataForestTools(server, client) {
263
264
  const result = await client.postRequest("/api/v2/apps/getDetail", {
264
265
  id: params.id,
265
266
  });
266
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
267
+ return toolText(result);
267
268
  }
268
269
  catch (error) {
269
270
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -280,7 +281,7 @@ export function registerDataForestTools(server, client) {
280
281
  componentName: params.componentName,
281
282
  containerCount: params.containerCount,
282
283
  });
283
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
284
+ return toolText(result);
284
285
  }
285
286
  catch (error) {
286
287
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -295,7 +296,7 @@ export function registerDataForestTools(server, client) {
295
296
  id: params.id,
296
297
  lifetime: params.lifetime,
297
298
  });
298
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
299
+ return toolText(result);
299
300
  }
300
301
  catch (error) {
301
302
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -310,7 +311,7 @@ export function registerDataForestTools(server, client) {
310
311
  id: params.id,
311
312
  containerName: params.containerName,
312
313
  });
313
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
314
+ return toolText(result);
314
315
  }
315
316
  catch (error) {
316
317
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -323,7 +324,7 @@ export function registerDataForestTools(server, client) {
323
324
  const result = await client.postRequest("/api/v2/apps/killMaster", {
324
325
  id: params.id,
325
326
  });
326
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
327
+ return toolText(result);
327
328
  }
328
329
  catch (error) {
329
330
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -336,7 +337,7 @@ export function registerDataForestTools(server, client) {
336
337
  const result = await client.postRequest("/api/v2/apps/start", {
337
338
  id: params.id,
338
339
  });
339
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
340
+ return toolText(result);
340
341
  }
341
342
  catch (error) {
342
343
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -349,7 +350,7 @@ export function registerDataForestTools(server, client) {
349
350
  const result = await client.postRequest("/api/v2/apps/stop", {
350
351
  id: params.id,
351
352
  });
352
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
353
+ return toolText(result);
353
354
  }
354
355
  catch (error) {
355
356
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -369,7 +370,7 @@ export function registerDataForestTools(server, client) {
369
370
  const result = await client.postRequest("/api/v2/apps/delete", {
370
371
  id: params.id,
371
372
  });
372
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
373
+ return toolText(result);
373
374
  }
374
375
  catch (error) {
375
376
  return { content: [{ type: "text", text: error.message }], isError: true };