ncloud-mcp-server 1.0.4 → 1.1.1

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 +56 -35
  42. package/dist/tools/cloud-insight-integration.js.map +1 -1
  43. package/dist/tools/cloud-insight-plugin.js +291 -353
  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 +118 -110
  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 +120 -129
  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
  export function registerLoadBalancerTools(server, client) {
3
4
  // ─── Load Balancer Query Tools ─────────────────────────────────────────────
4
5
  server.tool("ncloud_list_load_balancers", "List all load balancer instances in the current region", {
@@ -11,7 +12,7 @@ export function registerLoadBalancerTools(server, client) {
11
12
  }, async (params) => {
12
13
  try {
13
14
  const result = await client.request("/vloadbalancer/v2/getLoadBalancerInstanceList", params);
14
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
15
+ return toolText(result);
15
16
  }
16
17
  catch (error) {
17
18
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -22,7 +23,7 @@ export function registerLoadBalancerTools(server, client) {
22
23
  }, async (params) => {
23
24
  try {
24
25
  const result = await client.request("/vloadbalancer/v2/getLoadBalancerInstanceDetail", params);
25
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
26
+ return toolText(result);
26
27
  }
27
28
  catch (error) {
28
29
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -72,7 +73,7 @@ export function registerLoadBalancerTools(server, client) {
72
73
  listeners: params.listenerList.map((l) => `${l.protocolTypeCode}:${l.port} → TG:${l.targetGroupNo}`),
73
74
  message: "이 요청은 실제 로드 밸런서를 생성하지 않습니다. dryRun=false로 호출하면 로드 밸런서가 생성됩니다.",
74
75
  };
75
- return { content: [{ type: "text", text: JSON.stringify(preview, null, 2) }] };
76
+ return toolText(preview);
76
77
  }
77
78
  const { dryRun, listenerList, subnetNoList, ...restParams } = params;
78
79
  const apiParams = { ...restParams, subnetNoList };
@@ -109,7 +110,7 @@ export function registerLoadBalancerTools(server, client) {
109
110
  도메인: instance?.loadBalancerDomain ?? "pending",
110
111
  리스너설정: params.listenerList.map((l) => `${l.protocolTypeCode}:${l.port}`).join(", "),
111
112
  };
112
- return { content: [{ type: "text", text: JSON.stringify(summary, null, 2) }] };
113
+ return toolText(summary);
113
114
  }
114
115
  catch (error) {
115
116
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -129,7 +130,7 @@ export function registerLoadBalancerTools(server, client) {
129
130
  }
130
131
  const { confirm, ...apiParams } = params;
131
132
  const result = await client.request("/vloadbalancer/v2/deleteLoadBalancerInstances", apiParams);
132
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
133
+ return toolText(result);
133
134
  }
134
135
  catch (error) {
135
136
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -145,7 +146,7 @@ export function registerLoadBalancerTools(server, client) {
145
146
  }, async (params) => {
146
147
  try {
147
148
  const result = await client.request("/vloadbalancer/v2/changeLoadBalancerInstanceConfiguration", params);
148
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
149
+ return toolText(result);
149
150
  }
150
151
  catch (error) {
151
152
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -161,7 +162,7 @@ export function registerLoadBalancerTools(server, client) {
161
162
  }, async (params) => {
162
163
  try {
163
164
  const result = await client.request("/vloadbalancer/v2/setLoadBalancerDescription", params);
164
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
165
+ return toolText(result);
165
166
  }
166
167
  catch (error) {
167
168
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -177,7 +178,7 @@ export function registerLoadBalancerTools(server, client) {
177
178
  }, async (params) => {
178
179
  try {
179
180
  const result = await client.request("/vloadbalancer/v2/setLoadBalancerInstanceSubnet", params);
180
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
181
+ return toolText(result);
181
182
  }
182
183
  catch (error) {
183
184
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -201,7 +202,7 @@ export function registerLoadBalancerTools(server, client) {
201
202
  }, async (params) => {
202
203
  try {
203
204
  const result = await client.request("/vloadbalancer/v2/changeLoadBalancerListenerConfiguration", params);
204
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
205
+ return toolText(result);
205
206
  }
206
207
  catch (error) {
207
208
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -215,7 +216,7 @@ export function registerLoadBalancerTools(server, client) {
215
216
  }, async (params) => {
216
217
  try {
217
218
  const result = await client.request("/vloadbalancer/v2/getLoadBalancerRuleList", params);
218
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
219
+ return toolText(result);
219
220
  }
220
221
  catch (error) {
221
222
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -232,7 +233,7 @@ export function registerLoadBalancerTools(server, client) {
232
233
  }, async (params) => {
233
234
  try {
234
235
  const result = await client.request("/vloadbalancer/v2/addLoadBalancerListenerCertificate", params);
235
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
236
+ return toolText(result);
236
237
  }
237
238
  catch (error) {
238
239
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -254,7 +255,7 @@ export function registerLoadBalancerTools(server, client) {
254
255
  }
255
256
  const { confirm, ...apiParams } = params;
256
257
  const result = await client.request("/vloadbalancer/v2/removeLoadBalancerListenerCertificate", apiParams);
257
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
258
+ return toolText(result);
258
259
  }
259
260
  catch (error) {
260
261
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -267,7 +268,7 @@ export function registerLoadBalancerTools(server, client) {
267
268
  }, async (params) => {
268
269
  try {
269
270
  const result = await client.request("/vloadbalancer/v2/getLoadBalancerListenerCertificateList", params);
270
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
271
+ return toolText(result);
271
272
  }
272
273
  catch (error) {
273
274
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -281,7 +282,7 @@ export function registerLoadBalancerTools(server, client) {
281
282
  }, async (params) => {
282
283
  try {
283
284
  const result = await client.request("/vloadbalancer/v2/getLoadBalancerListenerList", params);
284
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
285
+ return toolText(result);
285
286
  }
286
287
  catch (error) {
287
288
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -308,7 +309,7 @@ export function registerLoadBalancerTools(server, client) {
308
309
  }, async (params) => {
309
310
  try {
310
311
  const result = await client.request("/vloadbalancer/v2/createLoadBalancerListener", params);
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 };
@@ -331,7 +332,7 @@ export function registerLoadBalancerTools(server, client) {
331
332
  }
332
333
  const { confirm, ...apiParams } = params;
333
334
  const result = await client.request("/vloadbalancer/v2/deleteLoadBalancerListeners", apiParams);
334
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
335
+ return toolText(result);
335
336
  }
336
337
  catch (error) {
337
338
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -1 +1 @@
1
- {"version":3,"file":"loadbalancer.js","sourceRoot":"","sources":["../../src/tools/loadbalancer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loadbalancer.js","sourceRoot":"","sources":["../../src/tools/loadbalancer.ts"],"names":[],"mappings":"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"}
@@ -1,179 +1,187 @@
1
1
  import { z } from "zod";
2
+ import { toolText } from "./_response.js";
3
+ // Cloud Log Analytics (NCP) API
4
+ // Base host: https://cloudloganalytics.apigw.ntruss.com (registry에서 주입)
5
+ // 경로: /api/{regionCode}-v1/... (regionCode 는 소문자 path segment: kr/sgn/jpn/uswn/den)
6
+ // responseFormatType 미사용 → request() 대신 requestRaw() 사용.
7
+ // 공식 docs: analytics-cloudloganalytics-*
8
+ function regionSeg(regionCode) {
9
+ return (regionCode ?? "kr").toLowerCase();
10
+ }
2
11
  export function registerLogAnalyticsTools(server, client) {
3
- // ncloud_search_logs — Search logs by keyword, period, and log source
4
- server.tool("ncloud_search_logs", "Search cloud log analytics logs with filtering by keyword, time period, and log source", {
5
- keyword: z.string().optional().describe("Search keyword to filter logs"),
6
- startTime: z.string().optional().describe("Start time in ISO 8601 format (e.g., \"2024-01-01T00:00:00Z\")"),
7
- endTime: z.string().optional().describe("End time in ISO 8601 format (e.g., \"2024-01-31T23:59:59Z\")"),
8
- logSource: z.string().optional().describe("Log source identifier to filter (e.g., server, database, loadbalancer)"),
9
- regionCode: z.string().optional().describe("Region code (KR, JPN, SGN, etc.)"),
10
- pageNo: z.number().optional().describe("Page number (default 1)"),
11
- pageSize: z.number().optional().describe("Page size (default 50)"),
12
+ // ncloud_search_logs — Search logs
13
+ server.tool("ncloud_search_logs", "Search collected logs in Cloud Log Analytics.", {
14
+ regionCode: z.string().optional().describe("Region code (kr, sgn, jpn, uswn, den). Default kr"),
15
+ interval: z.string().optional().describe("Time interval, e.g. 5m/1h/1d (default 5m)"),
16
+ keyword: z.string().optional().describe("Search keyword (default: all)"),
17
+ logTypes: z.string().optional().describe("Log type filter, e.g. SYSLOG, security_log"),
18
+ timestampFrom: z.string().optional().describe("Start Unix timestamp"),
19
+ timestampTo: z.string().optional().describe("End Unix timestamp"),
20
+ pageNo: z.number().optional().describe("Page number (1-100, default 1)"),
21
+ pageSize: z.number().optional().describe("Page size (10-100, default 10)"),
12
22
  }, async (params) => {
13
23
  try {
14
- const apiParams = {};
24
+ const body = {};
25
+ if (params.interval !== undefined)
26
+ body.interval = params.interval;
15
27
  if (params.keyword !== undefined)
16
- apiParams.keyword = params.keyword;
17
- if (params.startTime !== undefined)
18
- apiParams.startTime = params.startTime;
19
- if (params.endTime !== undefined)
20
- apiParams.endTime = params.endTime;
21
- if (params.logSource !== undefined)
22
- apiParams.logSource = params.logSource;
23
- if (params.regionCode !== undefined)
24
- apiParams.regionCode = params.regionCode;
28
+ body.keyword = params.keyword;
29
+ if (params.logTypes !== undefined)
30
+ body.logTypes = params.logTypes;
31
+ if (params.timestampFrom !== undefined)
32
+ body.timestampFrom = params.timestampFrom;
33
+ if (params.timestampTo !== undefined)
34
+ body.timestampTo = params.timestampTo;
25
35
  if (params.pageNo !== undefined)
26
- apiParams.pageNo = params.pageNo;
36
+ body.pageNo = params.pageNo;
27
37
  if (params.pageSize !== undefined)
28
- apiParams.pageSize = params.pageSize;
29
- const result = await client.request("/cloudloganalytics/v2/searchLogs", apiParams);
30
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
38
+ body.pageSize = params.pageSize;
39
+ const result = await client.requestRaw("POST", `/api/${regionSeg(params.regionCode)}-v1/logs/search`, undefined, body);
40
+ return toolText(result);
31
41
  }
32
42
  catch (error) {
33
43
  return { content: [{ type: "text", text: error.message }], isError: true };
34
44
  }
35
45
  });
36
- // ncloud_list_log_sources — List available log sources for collection
37
- server.tool("ncloud_list_log_sources", "Get list of available log sources that can be collected by Cloud Log Analytics", {
38
- regionCode: z.string().optional().describe("Region code (KR, JPN, SGN, etc.)"),
46
+ // ncloud_list_log_servers — List servers that can collect logs (replaces fictional getLogSourceList)
47
+ server.tool("ncloud_list_log_servers", "List servers eligible for log collection in Cloud Log Analytics (includes per-server collection status).", {
48
+ regionCode: z.string().optional().describe("Region code (kr, sgn, jpn). Default kr"),
49
+ platform: z.enum(["vpc", "classic"]).optional().describe("Platform (default vpc)"),
50
+ pageNo: z.number().optional().describe("Page number (1-100, default 1)"),
51
+ pageSize: z.number().optional().describe("Page size (10-100, default 10)"),
39
52
  }, async (params) => {
40
53
  try {
41
- const apiParams = {};
42
- if (params.regionCode !== undefined)
43
- apiParams.regionCode = params.regionCode;
44
- const result = await client.request("/cloudloganalytics/v2/getLogSourceList", apiParams);
45
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
54
+ const q = {};
55
+ if (params.pageNo !== undefined)
56
+ q.pageNo = params.pageNo;
57
+ if (params.pageSize !== undefined)
58
+ q.pageSize = params.pageSize;
59
+ const platform = params.platform ?? "vpc";
60
+ const result = await client.requestRaw("GET", `/api/${regionSeg(params.regionCode)}-v1/${platform}/servers`, q);
61
+ return toolText(result);
46
62
  }
47
63
  catch (error) {
48
64
  return { content: [{ type: "text", text: error.message }], isError: true };
49
65
  }
50
66
  });
51
- // ncloud_get_log_configGet current log collection configuration
52
- server.tool("ncloud_get_log_config", "Get current log collection configuration for Cloud Log Analytics", {
53
- regionCode: z.string().optional().describe("Region code (KR, JPN, SGN, etc.)"),
54
- }, async (params) => {
67
+ // ncloud_get_log_count_totalTotal log count
68
+ server.tool("ncloud_get_log_count_total", "Get the total collected log count in Cloud Log Analytics.", { regionCode: z.string().optional().describe("Region code (default kr)") }, async (params) => {
55
69
  try {
56
- const apiParams = {};
57
- if (params.regionCode !== undefined)
58
- apiParams.regionCode = params.regionCode;
59
- const result = await client.request("/cloudloganalytics/v2/getLogConfig", apiParams);
60
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
70
+ const result = await client.requestRaw("GET", `/api/${regionSeg(params.regionCode)}-v1/logs/count/total`);
71
+ return toolText(result);
61
72
  }
62
73
  catch (error) {
63
74
  return { content: [{ type: "text", text: error.message }], isError: true };
64
75
  }
65
76
  });
66
- // ncloud_get_log_count_totalGet total collected log count
67
- server.tool("ncloud_get_log_count_total", "Get total number of collected logs in Cloud Log Analytics", {
68
- regionCode: z.string({ required_error: "필수 파라미터 'regionCode'가 누락되었습니다." }).describe("Region code (KR, JPN, SGN, etc.)"),
69
- }, async (params) => {
77
+ // ncloud_get_log_count_recentRecent log count
78
+ server.tool("ncloud_get_log_count_recent", "Get the recent log count in Cloud Log Analytics.", { regionCode: z.string().optional().describe("Region code (default kr)") }, async (params) => {
70
79
  try {
71
- const result = await client.request("/cloudloganalytics/v2/getLogCountTotal", {
72
- regionCode: params.regionCode,
73
- });
74
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
80
+ const result = await client.requestRaw("GET", `/api/${regionSeg(params.regionCode)}-v1/logs/count/recent`);
81
+ return toolText(result);
75
82
  }
76
83
  catch (error) {
77
84
  return { content: [{ type: "text", text: error.message }], isError: true };
78
85
  }
79
86
  });
80
- // ncloud_get_log_count_recentGet recent (last 1 minute) collected log count
81
- server.tool("ncloud_get_log_count_recent", "Get number of logs collected in the last 1 minute in Cloud Log Analytics", {
82
- regionCode: z.string({ required_error: "필수 파라미터 'regionCode'가 누락되었습니다." }).describe("Region code (KR, JPN, SGN, etc.)"),
87
+ // ncloud_get_log_count_by_periodLog count over an interval
88
+ server.tool("ncloud_get_log_count_by_period", "Get log counts over a time interval in Cloud Log Analytics.", {
89
+ regionCode: z.string().optional().describe("Region code (default kr)"),
90
+ startTime: z.string().optional().describe("Start time (Unix ts or relative e.g. now-1h)"),
91
+ endTime: z.string().optional().describe("End time (Unix ts or relative e.g. now)"),
92
+ interval: z.string().optional().describe("Bucket interval: 1d/1h/1m"),
83
93
  }, async (params) => {
84
94
  try {
85
- const result = await client.request("/cloudloganalytics/v2/getLogCountRecent", {
86
- regionCode: params.regionCode,
87
- });
88
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
95
+ const q = {};
96
+ if (params.startTime !== undefined)
97
+ q.startTime = params.startTime;
98
+ if (params.endTime !== undefined)
99
+ q.endTime = params.endTime;
100
+ if (params.interval !== undefined)
101
+ q.interval = params.interval;
102
+ const result = await client.requestRaw("GET", `/api/${regionSeg(params.regionCode)}-v1/logs/count/interval`, q);
103
+ return toolText(result);
89
104
  }
90
105
  catch (error) {
91
106
  return { content: [{ type: "text", text: error.message }], isError: true };
92
107
  }
93
108
  });
94
- // ncloud_get_log_count_by_periodGet collected log count by period
95
- server.tool("ncloud_get_log_count_by_period", "Get number of collected logs grouped by time period in Cloud Log Analytics", {
96
- regionCode: z.string({ required_error: "필수 파라미터 'regionCode'가 누락되었습니다." }).describe("Region code (KR, JPN, SGN, etc.)"),
97
- startTime: z.string({ required_error: "필수 파라미터 'startTime'이 누락되었습니다." }).describe("Start time in ISO 8601 format (e.g., \"2024-01-01T00:00:00Z\")"),
98
- endTime: z.string({ required_error: "필수 파라미터 'endTime'이 누락되었습니다." }).describe("End time in ISO 8601 format (e.g., \"2024-01-31T23:59:59Z\")"),
109
+ // ncloud_get_log_count_by_typeAggregated log count by server or log name
110
+ server.tool("ncloud_get_log_count_by_type", "Get aggregated log counts by type (server or log_name) in Cloud Log Analytics.", {
111
+ regionCode: z.string().optional().describe("Region code (default kr)"),
112
+ type: z.enum(["server", "log_name"]).describe("Aggregation type"),
99
113
  }, async (params) => {
100
114
  try {
101
- const result = await client.request("/cloudloganalytics/v2/getLogCountByPeriod", {
102
- regionCode: params.regionCode,
103
- startTime: params.startTime,
104
- endTime: params.endTime,
105
- });
106
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
115
+ const result = await client.requestRaw("GET", `/api/${regionSeg(params.regionCode)}-v1/logs/count/aggregation`, { type: params.type });
116
+ return toolText(result);
107
117
  }
108
118
  catch (error) {
109
119
  return { content: [{ type: "text", text: error.message }], isError: true };
110
120
  }
111
121
  });
112
- // ncloud_get_log_count_by_typeGet collected log count by type
113
- server.tool("ncloud_get_log_count_by_type", "Get number of collected logs grouped by log type in Cloud Log Analytics", {
114
- regionCode: z.string({ required_error: "필수 파라미터 'regionCode'가 누락되었습니다." }).describe("Region code (KR, JPN, SGN, etc.)"),
115
- startTime: z.string({ required_error: "필수 파라미터 'startTime'이 누락되었습니다." }).describe("Start time in ISO 8601 format (e.g., \"2024-01-01T00:00:00Z\")"),
116
- endTime: z.string({ required_error: "필수 파라미터 'endTime'이 누락되었습니다." }).describe("End time in ISO 8601 format (e.g., \"2024-01-31T23:59:59Z\")"),
122
+ // ncloud_export_logsExport logs to Object Storage
123
+ server.tool("ncloud_export_logs", "Export searched logs to an Object Storage bucket in Cloud Log Analytics.", {
124
+ regionCode: z.string().optional().describe("Region code (default kr)"),
125
+ bucketname: z.string().describe("Object Storage bucket name (required)"),
126
+ keyword: z.string().optional().describe("Search keyword"),
127
+ logTypes: z.string().optional().describe("Log type filter (e.g. SYSLOG, security_log, tomcat)"),
128
+ timestampFrom: z.string().optional().describe("Start time (default now-1h)"),
129
+ timestampTo: z.string().optional().describe("End time (default now)"),
130
+ regionNo: z.number().optional().describe("Region number"),
117
131
  }, async (params) => {
118
132
  try {
119
- const result = await client.request("/cloudloganalytics/v2/getLogCountByType", {
120
- regionCode: params.regionCode,
121
- startTime: params.startTime,
122
- endTime: params.endTime,
123
- });
124
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
133
+ const body = { bucketname: params.bucketname };
134
+ if (params.keyword !== undefined)
135
+ body.keyword = params.keyword;
136
+ if (params.logTypes !== undefined)
137
+ body.logTypes = params.logTypes;
138
+ if (params.timestampFrom !== undefined)
139
+ body.timestampFrom = params.timestampFrom;
140
+ if (params.timestampTo !== undefined)
141
+ body.timestampTo = params.timestampTo;
142
+ if (params.regionNo !== undefined)
143
+ body.regionNo = params.regionNo;
144
+ const result = await client.requestRaw("POST", `/api/${regionSeg(params.regionCode)}-v1/logs/search/export`, undefined, body);
145
+ return toolText(result);
125
146
  }
126
147
  catch (error) {
127
148
  return { content: [{ type: "text", text: error.message }], isError: true };
128
149
  }
129
150
  });
130
- // ncloud_export_logs — Export collected logs to Object Storage
131
- server.tool("ncloud_export_logs", "Export collected logs to Object Storage bucket in Cloud Log Analytics", {
132
- regionCode: z.string({ required_error: "필수 파라미터 'regionCode'가 누락되었습니다." }).describe("Region code (KR, JPN, SGN, etc.)"),
133
- bucketName: z.string({ required_error: "필수 파라미터 'bucketName'이 누락되었습니다." }).describe("Object Storage bucket name to export logs to"),
134
- startTime: z.string({ required_error: "필수 파라미터 'startTime'이 누락되었습니다." }).describe("Export start time in ISO 8601 format (e.g., \"2024-01-01T00:00:00Z\")"),
135
- endTime: z.string({ required_error: "필수 파라미터 'endTime'이 누락되었습니다." }).describe("Export end time in ISO 8601 format (e.g., \"2024-01-31T23:59:59Z\")"),
136
- logType: z.string().optional().describe("Log type to export (optional filter)"),
151
+ // ncloud_get_log_export_history — Export history
152
+ server.tool("ncloud_get_log_export_history", "Get the log export history in Cloud Log Analytics.", {
153
+ regionCode: z.string().optional().describe("Region code (default kr)"),
154
+ pageNo: z.number().optional().describe("Page number (1-100, default 1)"),
155
+ pageSize: z.number().optional().describe("Page size (20-100, default 20)"),
137
156
  }, async (params) => {
138
157
  try {
139
- const apiParams = {
140
- regionCode: params.regionCode,
141
- bucketName: params.bucketName,
142
- startTime: params.startTime,
143
- endTime: params.endTime,
144
- };
145
- if (params.logType !== undefined)
146
- apiParams.logType = params.logType;
147
- const result = await client.request("/cloudloganalytics/v2/exportLogs", apiParams);
148
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
158
+ const q = {};
159
+ if (params.pageNo !== undefined)
160
+ q.pageNo = params.pageNo;
161
+ if (params.pageSize !== undefined)
162
+ q.pageSize = params.pageSize;
163
+ const result = await client.requestRaw("GET", `/api/${regionSeg(params.regionCode)}-v1/export/history`, q);
164
+ return toolText(result);
149
165
  }
150
166
  catch (error) {
151
167
  return { content: [{ type: "text", text: error.message }], isError: true };
152
168
  }
153
169
  });
154
- // ncloud_get_log_export_historyGet log export history
155
- server.tool("ncloud_get_log_export_history", "Get history of log exports to Object Storage in Cloud Log Analytics", {
156
- regionCode: z.string({ required_error: "필수 파라미터 'regionCode'가 누락되었습니다." }).describe("Region code (KR, JPN, SGN, etc.)"),
157
- }, async (params) => {
170
+ // ncloud_list_export_bucketsList Object Storage buckets available as export targets
171
+ server.tool("ncloud_list_export_buckets", "List Object Storage buckets available as log export targets in Cloud Log Analytics.", { regionCode: z.string().optional().describe("Region code (default kr)") }, async (params) => {
158
172
  try {
159
- const result = await client.request("/cloudloganalytics/v2/getLogExportHistory", {
160
- regionCode: params.regionCode,
161
- });
162
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
173
+ const result = await client.requestRaw("GET", `/api/${regionSeg(params.regionCode)}-v1/export/buckets`);
174
+ return toolText(result);
163
175
  }
164
176
  catch (error) {
165
177
  return { content: [{ type: "text", text: error.message }], isError: true };
166
178
  }
167
179
  });
168
- // ncloud_get_log_usage — Get Cloud Log Analytics usage
169
- server.tool("ncloud_get_log_usage", "Get Cloud Log Analytics usage information including storage and collection volume", {
170
- regionCode: z.string({ required_error: "필수 파라미터 'regionCode'가 누락되었습니다." }).describe("Region code (KR, JPN, SGN, etc.)"),
171
- }, async (params) => {
180
+ // ncloud_get_log_usage — Capacity/usage
181
+ server.tool("ncloud_get_log_usage", "Get the Cloud Log Analytics storage capacity and usage.", { regionCode: z.string().optional().describe("Region code (default kr)") }, async (params) => {
172
182
  try {
173
- const result = await client.request("/cloudloganalytics/v2/getLogUsage", {
174
- regionCode: params.regionCode,
175
- });
176
- return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
183
+ const result = await client.requestRaw("GET", `/api/${regionSeg(params.regionCode)}-v1/capacity`);
184
+ return toolText(result);
177
185
  }
178
186
  catch (error) {
179
187
  return { content: [{ type: "text", text: error.message }], isError: true };
@@ -1 +1 @@
1
- {"version":3,"file":"log-analytics.js","sourceRoot":"","sources":["../../src/tools/log-analytics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"log-analytics.js","sourceRoot":"","sources":["../../src/tools/log-analytics.ts"],"names":[],"mappings":"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"}