kubeview-mcp 1.1.0 → 1.3.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 (650) hide show
  1. package/CHANGELOG.md +28 -1
  2. package/README.md +97 -43
  3. package/bin/kubeview-mcp-code-mode.js +60 -0
  4. package/bin/setup.js +8 -8
  5. package/dist/agent/bridge/MCPBridge.d.ts +41 -0
  6. package/dist/agent/bridge/MCPBridge.d.ts.map +1 -0
  7. package/dist/agent/bridge/MCPBridge.js +127 -0
  8. package/dist/agent/bridge/MCPBridge.js.map +1 -0
  9. package/dist/agent/codegen/CodegenManager.d.ts +26 -0
  10. package/dist/agent/codegen/CodegenManager.d.ts.map +1 -0
  11. package/dist/agent/codegen/CodegenManager.js +222 -0
  12. package/dist/agent/codegen/CodegenManager.js.map +1 -0
  13. package/dist/agent/codegen/SchemaToTypeScriptMapper.d.ts +13 -0
  14. package/dist/agent/codegen/SchemaToTypeScriptMapper.d.ts.map +1 -0
  15. package/dist/agent/codegen/SchemaToTypeScriptMapper.js +54 -0
  16. package/dist/agent/codegen/SchemaToTypeScriptMapper.js.map +1 -0
  17. package/dist/agent/codegen/ToolDescriptionBuilder.d.ts +67 -0
  18. package/dist/agent/codegen/ToolDescriptionBuilder.d.ts.map +1 -0
  19. package/dist/agent/codegen/ToolDescriptionBuilder.js +201 -0
  20. package/dist/agent/codegen/ToolDescriptionBuilder.js.map +1 -0
  21. package/dist/agent/codegen/ToolSchemaIntrospector.d.ts +10 -0
  22. package/dist/agent/codegen/ToolSchemaIntrospector.d.ts.map +1 -0
  23. package/dist/agent/codegen/ToolSchemaIntrospector.js +72 -0
  24. package/dist/agent/codegen/ToolSchemaIntrospector.js.map +1 -0
  25. package/dist/agent/codegen/types.d.ts +31 -0
  26. package/dist/agent/codegen/types.d.ts.map +1 -0
  27. package/dist/agent/codegen/types.js +2 -0
  28. package/dist/agent/codegen/types.js.map +1 -0
  29. package/dist/agent/config/CodeModeConfig.d.ts +70 -0
  30. package/dist/agent/config/CodeModeConfig.d.ts.map +1 -0
  31. package/dist/agent/config/CodeModeConfig.js +34 -0
  32. package/dist/agent/config/CodeModeConfig.js.map +1 -0
  33. package/dist/agent/runtime/code-executor/CodeExecutor.d.ts +25 -0
  34. package/dist/agent/runtime/code-executor/CodeExecutor.d.ts.map +1 -0
  35. package/dist/agent/runtime/code-executor/CodeExecutor.js +95 -0
  36. package/dist/agent/runtime/code-executor/CodeExecutor.js.map +1 -0
  37. package/dist/agent/runtime/code-executor/NodeVmCodeExecutor.d.ts +21 -0
  38. package/dist/agent/runtime/code-executor/NodeVmCodeExecutor.d.ts.map +1 -0
  39. package/dist/agent/runtime/code-executor/NodeVmCodeExecutor.js +89 -0
  40. package/dist/agent/runtime/code-executor/NodeVmCodeExecutor.js.map +1 -0
  41. package/dist/agent/runtime/createSandboxManager.d.ts +4 -0
  42. package/dist/agent/runtime/createSandboxManager.d.ts.map +1 -0
  43. package/dist/agent/runtime/createSandboxManager.js +28 -0
  44. package/dist/agent/runtime/createSandboxManager.js.map +1 -0
  45. package/dist/agent/runtime/ivm/IVMSandboxManager.d.ts +21 -0
  46. package/dist/agent/runtime/ivm/IVMSandboxManager.d.ts.map +1 -0
  47. package/dist/agent/runtime/ivm/IVMSandboxManager.js +189 -0
  48. package/dist/agent/runtime/ivm/IVMSandboxManager.js.map +1 -0
  49. package/dist/agent/runtime/types.d.ts +12 -0
  50. package/dist/agent/runtime/types.d.ts.map +1 -0
  51. package/dist/agent/runtime/types.js +2 -0
  52. package/dist/agent/runtime/types.js.map +1 -0
  53. package/dist/agent/runtime/vm/VmSandboxManager.d.ts +23 -0
  54. package/dist/agent/runtime/vm/VmSandboxManager.d.ts.map +1 -0
  55. package/dist/agent/runtime/vm/VmSandboxManager.js +168 -0
  56. package/dist/agent/runtime/vm/VmSandboxManager.js.map +1 -0
  57. package/dist/agent/security/PIITokenizer.d.ts +15 -0
  58. package/dist/agent/security/PIITokenizer.d.ts.map +1 -0
  59. package/dist/agent/security/PIITokenizer.js +54 -0
  60. package/dist/agent/security/PIITokenizer.js.map +1 -0
  61. package/dist/cli/cli.d.ts +3 -0
  62. package/dist/cli/cli.d.ts.map +1 -0
  63. package/dist/cli/cli.js +23 -0
  64. package/dist/cli/cli.js.map +1 -0
  65. package/dist/cli/code-mode.d.ts +3 -0
  66. package/dist/cli/code-mode.d.ts.map +1 -0
  67. package/dist/cli/code-mode.js +225 -0
  68. package/dist/cli/code-mode.js.map +1 -0
  69. package/dist/index.d.ts +14 -0
  70. package/dist/index.d.ts.map +1 -0
  71. package/dist/index.js +125 -0
  72. package/dist/index.js.map +1 -0
  73. package/dist/kubernetes/BaseResourceOperations.d.ts +155 -0
  74. package/dist/kubernetes/BaseResourceOperations.d.ts.map +1 -0
  75. package/dist/kubernetes/BaseResourceOperations.js +136 -0
  76. package/dist/kubernetes/BaseResourceOperations.js.map +1 -0
  77. package/dist/kubernetes/CircuitBreaker.d.ts +182 -0
  78. package/dist/kubernetes/CircuitBreaker.d.ts.map +1 -0
  79. package/dist/kubernetes/CircuitBreaker.js +369 -0
  80. package/dist/kubernetes/CircuitBreaker.js.map +1 -0
  81. package/dist/kubernetes/ConnectionManager.d.ts +60 -0
  82. package/dist/kubernetes/ConnectionManager.d.ts.map +1 -0
  83. package/dist/kubernetes/ConnectionManager.js +77 -0
  84. package/dist/kubernetes/ConnectionManager.js.map +1 -0
  85. package/dist/kubernetes/ConnectionPool.d.ts +183 -0
  86. package/dist/kubernetes/ConnectionPool.d.ts.map +1 -0
  87. package/dist/kubernetes/ConnectionPool.js +437 -0
  88. package/dist/kubernetes/ConnectionPool.js.map +1 -0
  89. package/dist/kubernetes/ErrorHandler.d.ts +172 -0
  90. package/dist/kubernetes/ErrorHandler.d.ts.map +1 -0
  91. package/dist/kubernetes/ErrorHandler.js +328 -0
  92. package/dist/kubernetes/ErrorHandler.js.map +1 -0
  93. package/dist/kubernetes/ErrorHandling.d.ts +148 -0
  94. package/dist/kubernetes/ErrorHandling.d.ts.map +1 -0
  95. package/dist/kubernetes/ErrorHandling.js +304 -0
  96. package/dist/kubernetes/ErrorHandling.js.map +1 -0
  97. package/dist/kubernetes/KubernetesClient.d.ts +178 -0
  98. package/dist/kubernetes/KubernetesClient.d.ts.map +1 -0
  99. package/dist/kubernetes/KubernetesClient.js +524 -0
  100. package/dist/kubernetes/KubernetesClient.js.map +1 -0
  101. package/dist/kubernetes/ResourceOperations.d.ts +69 -0
  102. package/dist/kubernetes/ResourceOperations.d.ts.map +1 -0
  103. package/dist/kubernetes/ResourceOperations.js +99 -0
  104. package/dist/kubernetes/ResourceOperations.js.map +1 -0
  105. package/dist/kubernetes/RetryStrategy.d.ts +137 -0
  106. package/dist/kubernetes/RetryStrategy.d.ts.map +1 -0
  107. package/dist/kubernetes/RetryStrategy.js +282 -0
  108. package/dist/kubernetes/RetryStrategy.js.map +1 -0
  109. package/dist/kubernetes/RetryableOperation.d.ts +118 -0
  110. package/dist/kubernetes/RetryableOperation.d.ts.map +1 -0
  111. package/dist/kubernetes/RetryableOperation.js +233 -0
  112. package/dist/kubernetes/RetryableOperation.js.map +1 -0
  113. package/dist/kubernetes/index.d.ts +18 -0
  114. package/dist/kubernetes/index.d.ts.map +1 -0
  115. package/dist/kubernetes/index.js +28 -0
  116. package/dist/kubernetes/index.js.map +1 -0
  117. package/dist/kubernetes/resources/ConfigMapOperations.d.ts +60 -0
  118. package/dist/kubernetes/resources/ConfigMapOperations.d.ts.map +1 -0
  119. package/dist/kubernetes/resources/ConfigMapOperations.js +307 -0
  120. package/dist/kubernetes/resources/ConfigMapOperations.js.map +1 -0
  121. package/dist/kubernetes/resources/CustomResourceOperations.d.ts +55 -0
  122. package/dist/kubernetes/resources/CustomResourceOperations.d.ts.map +1 -0
  123. package/dist/kubernetes/resources/CustomResourceOperations.js +363 -0
  124. package/dist/kubernetes/resources/CustomResourceOperations.js.map +1 -0
  125. package/dist/kubernetes/resources/DeploymentOperations.d.ts +66 -0
  126. package/dist/kubernetes/resources/DeploymentOperations.d.ts.map +1 -0
  127. package/dist/kubernetes/resources/DeploymentOperations.js +234 -0
  128. package/dist/kubernetes/resources/DeploymentOperations.js.map +1 -0
  129. package/dist/kubernetes/resources/IngressOperations.d.ts +60 -0
  130. package/dist/kubernetes/resources/IngressOperations.d.ts.map +1 -0
  131. package/dist/kubernetes/resources/IngressOperations.js +224 -0
  132. package/dist/kubernetes/resources/IngressOperations.js.map +1 -0
  133. package/dist/kubernetes/resources/MetricOperations.d.ts +251 -0
  134. package/dist/kubernetes/resources/MetricOperations.d.ts.map +1 -0
  135. package/dist/kubernetes/resources/MetricOperations.js +1377 -0
  136. package/dist/kubernetes/resources/MetricOperations.js.map +1 -0
  137. package/dist/kubernetes/resources/NamespaceOperations.d.ts +38 -0
  138. package/dist/kubernetes/resources/NamespaceOperations.d.ts.map +1 -0
  139. package/dist/kubernetes/resources/NamespaceOperations.js +101 -0
  140. package/dist/kubernetes/resources/NamespaceOperations.js.map +1 -0
  141. package/dist/kubernetes/resources/PersistentVolumeClaimOperations.d.ts +109 -0
  142. package/dist/kubernetes/resources/PersistentVolumeClaimOperations.d.ts.map +1 -0
  143. package/dist/kubernetes/resources/PersistentVolumeClaimOperations.js +383 -0
  144. package/dist/kubernetes/resources/PersistentVolumeClaimOperations.js.map +1 -0
  145. package/dist/kubernetes/resources/PersistentVolumeOperations.d.ts +97 -0
  146. package/dist/kubernetes/resources/PersistentVolumeOperations.d.ts.map +1 -0
  147. package/dist/kubernetes/resources/PersistentVolumeOperations.js +321 -0
  148. package/dist/kubernetes/resources/PersistentVolumeOperations.js.map +1 -0
  149. package/dist/kubernetes/resources/PodOperations.d.ts +99 -0
  150. package/dist/kubernetes/resources/PodOperations.d.ts.map +1 -0
  151. package/dist/kubernetes/resources/PodOperations.js +333 -0
  152. package/dist/kubernetes/resources/PodOperations.js.map +1 -0
  153. package/dist/kubernetes/resources/SecretOperations.d.ts +71 -0
  154. package/dist/kubernetes/resources/SecretOperations.d.ts.map +1 -0
  155. package/dist/kubernetes/resources/SecretOperations.js +261 -0
  156. package/dist/kubernetes/resources/SecretOperations.js.map +1 -0
  157. package/dist/kubernetes/resources/ServiceOperations.d.ts +64 -0
  158. package/dist/kubernetes/resources/ServiceOperations.d.ts.map +1 -0
  159. package/dist/kubernetes/resources/ServiceOperations.js +232 -0
  160. package/dist/kubernetes/resources/ServiceOperations.js.map +1 -0
  161. package/dist/kubernetes/utils/ResourceUtils.d.ts +238 -0
  162. package/dist/kubernetes/utils/ResourceUtils.d.ts.map +1 -0
  163. package/dist/kubernetes/utils/ResourceUtils.js +439 -0
  164. package/dist/kubernetes/utils/ResourceUtils.js.map +1 -0
  165. package/dist/package.json +90 -0
  166. package/dist/plugins/ArgoCDToolsPlugin.d.ts +19 -0
  167. package/dist/plugins/ArgoCDToolsPlugin.d.ts.map +1 -0
  168. package/dist/plugins/ArgoCDToolsPlugin.js +74 -0
  169. package/dist/plugins/ArgoCDToolsPlugin.js.map +1 -0
  170. package/dist/plugins/ArgoToolsPlugin.d.ts +19 -0
  171. package/dist/plugins/ArgoToolsPlugin.d.ts.map +1 -0
  172. package/dist/plugins/ArgoToolsPlugin.js +73 -0
  173. package/dist/plugins/ArgoToolsPlugin.js.map +1 -0
  174. package/dist/plugins/BaseToolsPlugin.d.ts +37 -0
  175. package/dist/plugins/BaseToolsPlugin.d.ts.map +1 -0
  176. package/dist/plugins/BaseToolsPlugin.js +114 -0
  177. package/dist/plugins/BaseToolsPlugin.js.map +1 -0
  178. package/dist/plugins/HelmToolsPlugin.d.ts +19 -0
  179. package/dist/plugins/HelmToolsPlugin.d.ts.map +1 -0
  180. package/dist/plugins/HelmToolsPlugin.js +73 -0
  181. package/dist/plugins/HelmToolsPlugin.js.map +1 -0
  182. package/dist/plugins/KubernetesToolsPlugin.d.ts +54 -0
  183. package/dist/plugins/KubernetesToolsPlugin.d.ts.map +1 -0
  184. package/dist/plugins/KubernetesToolsPlugin.js +194 -0
  185. package/dist/plugins/KubernetesToolsPlugin.js.map +1 -0
  186. package/dist/plugins/SamplePlugin.d.ts +12 -0
  187. package/dist/plugins/SamplePlugin.d.ts.map +1 -0
  188. package/dist/plugins/SamplePlugin.js +51 -0
  189. package/dist/plugins/SamplePlugin.js.map +1 -0
  190. package/dist/plugins/index.d.ts +5 -0
  191. package/dist/plugins/index.d.ts.map +1 -0
  192. package/dist/plugins/index.js +5 -0
  193. package/dist/plugins/index.js.map +1 -0
  194. package/dist/server/MCPServer.d.ts +108 -0
  195. package/dist/server/MCPServer.d.ts.map +1 -0
  196. package/dist/server/MCPServer.js +496 -0
  197. package/dist/server/MCPServer.js.map +1 -0
  198. package/dist/src/agent/bridge/MCPBridge.d.ts +41 -0
  199. package/dist/src/agent/bridge/MCPBridge.d.ts.map +1 -0
  200. package/dist/src/agent/bridge/MCPBridge.js +127 -0
  201. package/dist/src/agent/bridge/MCPBridge.js.map +1 -0
  202. package/dist/src/agent/codegen/CodegenManager.d.ts +26 -0
  203. package/dist/src/agent/codegen/CodegenManager.d.ts.map +1 -0
  204. package/dist/src/agent/codegen/CodegenManager.js +222 -0
  205. package/dist/src/agent/codegen/CodegenManager.js.map +1 -0
  206. package/dist/src/agent/codegen/SchemaToTypeScriptMapper.d.ts +13 -0
  207. package/dist/src/agent/codegen/SchemaToTypeScriptMapper.d.ts.map +1 -0
  208. package/dist/src/agent/codegen/SchemaToTypeScriptMapper.js +54 -0
  209. package/dist/src/agent/codegen/SchemaToTypeScriptMapper.js.map +1 -0
  210. package/dist/src/agent/codegen/ToolDescriptionBuilder.d.ts +67 -0
  211. package/dist/src/agent/codegen/ToolDescriptionBuilder.d.ts.map +1 -0
  212. package/dist/src/agent/codegen/ToolDescriptionBuilder.js +201 -0
  213. package/dist/src/agent/codegen/ToolDescriptionBuilder.js.map +1 -0
  214. package/dist/src/agent/codegen/ToolSchemaIntrospector.d.ts +10 -0
  215. package/dist/src/agent/codegen/ToolSchemaIntrospector.d.ts.map +1 -0
  216. package/dist/src/agent/codegen/ToolSchemaIntrospector.js +72 -0
  217. package/dist/src/agent/codegen/ToolSchemaIntrospector.js.map +1 -0
  218. package/dist/src/agent/codegen/types.d.ts +31 -0
  219. package/dist/src/agent/codegen/types.d.ts.map +1 -0
  220. package/dist/src/agent/codegen/types.js +2 -0
  221. package/dist/src/agent/codegen/types.js.map +1 -0
  222. package/dist/src/agent/config/CodeModeConfig.d.ts +70 -0
  223. package/dist/src/agent/config/CodeModeConfig.d.ts.map +1 -0
  224. package/dist/src/agent/config/CodeModeConfig.js +34 -0
  225. package/dist/src/agent/config/CodeModeConfig.js.map +1 -0
  226. package/dist/src/agent/runtime/SandboxManager.d.ts +24 -0
  227. package/dist/src/agent/runtime/SandboxManager.d.ts.map +1 -0
  228. package/dist/src/agent/runtime/SandboxManager.js +181 -0
  229. package/dist/src/agent/runtime/SandboxManager.js.map +1 -0
  230. package/dist/src/agent/runtime/code-executor/CodeExecutor.d.ts +25 -0
  231. package/dist/src/agent/runtime/code-executor/CodeExecutor.d.ts.map +1 -0
  232. package/dist/src/agent/runtime/code-executor/CodeExecutor.js +95 -0
  233. package/dist/src/agent/runtime/code-executor/CodeExecutor.js.map +1 -0
  234. package/dist/src/agent/runtime/code-executor/NodeVmCodeExecutor.d.ts +21 -0
  235. package/dist/src/agent/runtime/code-executor/NodeVmCodeExecutor.d.ts.map +1 -0
  236. package/dist/src/agent/runtime/code-executor/NodeVmCodeExecutor.js +89 -0
  237. package/dist/src/agent/runtime/code-executor/NodeVmCodeExecutor.js.map +1 -0
  238. package/dist/src/agent/runtime/createSandboxManager.d.ts +4 -0
  239. package/dist/src/agent/runtime/createSandboxManager.d.ts.map +1 -0
  240. package/dist/src/agent/runtime/createSandboxManager.js +28 -0
  241. package/dist/src/agent/runtime/createSandboxManager.js.map +1 -0
  242. package/dist/src/agent/runtime/ivm/IVMSandboxManager.d.ts +21 -0
  243. package/dist/src/agent/runtime/ivm/IVMSandboxManager.d.ts.map +1 -0
  244. package/dist/src/agent/runtime/ivm/IVMSandboxManager.js +189 -0
  245. package/dist/src/agent/runtime/ivm/IVMSandboxManager.js.map +1 -0
  246. package/dist/src/agent/runtime/types.d.ts +12 -0
  247. package/dist/src/agent/runtime/types.d.ts.map +1 -0
  248. package/dist/src/agent/runtime/types.js +2 -0
  249. package/dist/src/agent/runtime/types.js.map +1 -0
  250. package/dist/src/agent/runtime/vm/VmSandboxManager.d.ts +23 -0
  251. package/dist/src/agent/runtime/vm/VmSandboxManager.d.ts.map +1 -0
  252. package/dist/src/agent/runtime/vm/VmSandboxManager.js +168 -0
  253. package/dist/src/agent/runtime/vm/VmSandboxManager.js.map +1 -0
  254. package/dist/src/agent/security/PIITokenizer.d.ts +15 -0
  255. package/dist/src/agent/security/PIITokenizer.d.ts.map +1 -0
  256. package/dist/src/agent/security/PIITokenizer.js +54 -0
  257. package/dist/src/agent/security/PIITokenizer.js.map +1 -0
  258. package/dist/src/cli/code-mode.d.ts +3 -0
  259. package/dist/src/cli/code-mode.d.ts.map +1 -0
  260. package/dist/src/cli/code-mode.js +225 -0
  261. package/dist/src/cli/code-mode.js.map +1 -0
  262. package/dist/src/cli/run-command.d.ts +3 -0
  263. package/dist/src/cli/run-command.d.ts.map +1 -0
  264. package/dist/src/cli/run-command.js +379 -0
  265. package/dist/src/cli/run-command.js.map +1 -0
  266. package/dist/src/index.d.ts +5 -0
  267. package/dist/src/index.d.ts.map +1 -1
  268. package/dist/src/index.js +102 -19
  269. package/dist/src/index.js.map +1 -1
  270. package/dist/src/kubernetes/resources/MetricOperations.js +3 -3
  271. package/dist/src/kubernetes/resources/MetricOperations.js.map +1 -1
  272. package/dist/src/plugins/ArgoCDToolsPlugin.d.ts +0 -1
  273. package/dist/src/plugins/ArgoCDToolsPlugin.d.ts.map +1 -1
  274. package/dist/src/plugins/ArgoCDToolsPlugin.js +6 -5
  275. package/dist/src/plugins/ArgoCDToolsPlugin.js.map +1 -1
  276. package/dist/src/plugins/ArgoToolsPlugin.d.ts +0 -1
  277. package/dist/src/plugins/ArgoToolsPlugin.d.ts.map +1 -1
  278. package/dist/src/plugins/ArgoToolsPlugin.js +5 -5
  279. package/dist/src/plugins/ArgoToolsPlugin.js.map +1 -1
  280. package/dist/src/plugins/BaseToolsPlugin.d.ts +0 -1
  281. package/dist/src/plugins/BaseToolsPlugin.d.ts.map +1 -1
  282. package/dist/src/plugins/BaseToolsPlugin.js +3 -1
  283. package/dist/src/plugins/BaseToolsPlugin.js.map +1 -1
  284. package/dist/src/plugins/HelmToolsPlugin.d.ts +0 -1
  285. package/dist/src/plugins/HelmToolsPlugin.d.ts.map +1 -1
  286. package/dist/src/plugins/HelmToolsPlugin.js +5 -5
  287. package/dist/src/plugins/HelmToolsPlugin.js.map +1 -1
  288. package/dist/src/plugins/KubernetesToolsPlugin.d.ts +0 -1
  289. package/dist/src/plugins/KubernetesToolsPlugin.d.ts.map +1 -1
  290. package/dist/src/plugins/KubernetesToolsPlugin.js +6 -7
  291. package/dist/src/plugins/KubernetesToolsPlugin.js.map +1 -1
  292. package/dist/src/plugins/SamplePlugin.d.ts +0 -1
  293. package/dist/src/plugins/SamplePlugin.d.ts.map +1 -1
  294. package/dist/src/plugins/SamplePlugin.js +1 -2
  295. package/dist/src/plugins/SamplePlugin.js.map +1 -1
  296. package/dist/src/server/MCPServer.d.ts +9 -1
  297. package/dist/src/server/MCPServer.d.ts.map +1 -1
  298. package/dist/src/server/MCPServer.js +93 -16
  299. package/dist/src/server/MCPServer.js.map +1 -1
  300. package/dist/src/tools/CodeModeTool.d.ts +18 -0
  301. package/dist/src/tools/CodeModeTool.d.ts.map +1 -0
  302. package/dist/src/tools/CodeModeTool.js +86 -0
  303. package/dist/src/tools/CodeModeTool.js.map +1 -0
  304. package/dist/src/tools/RunCodeTool.d.ts +68 -0
  305. package/dist/src/tools/RunCodeTool.d.ts.map +1 -0
  306. package/dist/src/tools/RunCodeTool.js +511 -0
  307. package/dist/src/tools/RunCodeTool.js.map +1 -0
  308. package/dist/src/tools/kubernetes/GetContainerLogsTool.d.ts.map +1 -1
  309. package/dist/src/tools/kubernetes/GetContainerLogsTool.js +11 -1
  310. package/dist/src/tools/kubernetes/GetContainerLogsTool.js.map +1 -1
  311. package/dist/src/tools/kubernetes/KubeLogTool.d.ts.map +1 -1
  312. package/dist/src/tools/kubernetes/KubeLogTool.js +142 -26
  313. package/dist/src/tools/kubernetes/KubeLogTool.js.map +1 -1
  314. package/dist/src/utils/CliUtils.js +3 -3
  315. package/dist/src/utils/CliUtils.js.map +1 -1
  316. package/dist/src/utils/CodeModeConfig.d.ts +68 -0
  317. package/dist/src/utils/CodeModeConfig.d.ts.map +1 -0
  318. package/dist/src/utils/CodeModeConfig.js +42 -0
  319. package/dist/src/utils/CodeModeConfig.js.map +1 -0
  320. package/dist/src/utils/SensitiveData.js +3 -3
  321. package/dist/src/utils/SensitiveData.js.map +1 -1
  322. package/dist/src/version.cjs +10 -0
  323. package/dist/src/version.cjs.map +1 -0
  324. package/dist/src/version.d.cts +2 -0
  325. package/dist/src/version.d.cts.map +1 -0
  326. package/dist/src/version.d.ts +2 -0
  327. package/dist/src/version.d.ts.map +1 -0
  328. package/dist/src/version.js +3 -0
  329. package/dist/src/version.js.map +1 -0
  330. package/dist/tests/agent/PIITokenizer.test.d.ts +2 -0
  331. package/dist/tests/agent/PIITokenizer.test.d.ts.map +1 -0
  332. package/dist/tests/agent/PIITokenizer.test.js +19 -0
  333. package/dist/tests/agent/PIITokenizer.test.js.map +1 -0
  334. package/dist/tests/agent/SchemaToTypeScriptMapper.test.d.ts +2 -0
  335. package/dist/tests/agent/SchemaToTypeScriptMapper.test.d.ts.map +1 -0
  336. package/dist/tests/agent/SchemaToTypeScriptMapper.test.js +27 -0
  337. package/dist/tests/agent/SchemaToTypeScriptMapper.test.js.map +1 -0
  338. package/dist/tests/agent/ToolDescriptionBuilder.test.d.ts +2 -0
  339. package/dist/tests/agent/ToolDescriptionBuilder.test.d.ts.map +1 -0
  340. package/dist/tests/agent/ToolDescriptionBuilder.test.js +142 -0
  341. package/dist/tests/agent/ToolDescriptionBuilder.test.js.map +1 -0
  342. package/dist/tests/helm/BaseTool.test.js +4 -4
  343. package/dist/tests/helm/BaseTool.test.js.map +1 -1
  344. package/dist/tests/kubernetes/KubernetesClient.test.js +10 -1
  345. package/dist/tests/kubernetes/KubernetesClient.test.js.map +1 -1
  346. package/dist/tests/server/MCPServer.integration.test.js +2 -2
  347. package/dist/tests/server/MCPServer.integration.test.js.map +1 -1
  348. package/dist/tests/server/MCPServer.test.js +1 -6
  349. package/dist/tests/server/MCPServer.test.js.map +1 -1
  350. package/dist/tests/tools/CodeModeTool.test.d.ts +2 -0
  351. package/dist/tests/tools/CodeModeTool.test.d.ts.map +1 -0
  352. package/dist/tests/tools/CodeModeTool.test.js +19 -0
  353. package/dist/tests/tools/CodeModeTool.test.js.map +1 -0
  354. package/dist/tests/tools/RunCodeTool.test.d.ts +2 -0
  355. package/dist/tests/tools/RunCodeTool.test.d.ts.map +1 -0
  356. package/dist/tests/tools/RunCodeTool.test.js +145 -0
  357. package/dist/tests/tools/RunCodeTool.test.js.map +1 -0
  358. package/dist/tools/RunCodeTool.d.ts +68 -0
  359. package/dist/tools/RunCodeTool.d.ts.map +1 -0
  360. package/dist/tools/RunCodeTool.js +511 -0
  361. package/dist/tools/RunCodeTool.js.map +1 -0
  362. package/dist/tools/argo/ArgoCronListTool.d.ts +10 -0
  363. package/dist/tools/argo/ArgoCronListTool.d.ts.map +1 -0
  364. package/dist/tools/argo/ArgoCronListTool.js +70 -0
  365. package/dist/tools/argo/ArgoCronListTool.js.map +1 -0
  366. package/dist/tools/argo/ArgoGetTool.d.ts +10 -0
  367. package/dist/tools/argo/ArgoGetTool.d.ts.map +1 -0
  368. package/dist/tools/argo/ArgoGetTool.js +80 -0
  369. package/dist/tools/argo/ArgoGetTool.js.map +1 -0
  370. package/dist/tools/argo/ArgoListTool.d.ts +10 -0
  371. package/dist/tools/argo/ArgoListTool.d.ts.map +1 -0
  372. package/dist/tools/argo/ArgoListTool.js +133 -0
  373. package/dist/tools/argo/ArgoListTool.js.map +1 -0
  374. package/dist/tools/argo/ArgoLogsTool.d.ts +10 -0
  375. package/dist/tools/argo/ArgoLogsTool.d.ts.map +1 -0
  376. package/dist/tools/argo/ArgoLogsTool.js +117 -0
  377. package/dist/tools/argo/ArgoLogsTool.js.map +1 -0
  378. package/dist/tools/argo/BaseTool.d.ts +60 -0
  379. package/dist/tools/argo/BaseTool.d.ts.map +1 -0
  380. package/dist/tools/argo/BaseTool.js +51 -0
  381. package/dist/tools/argo/BaseTool.js.map +1 -0
  382. package/dist/tools/argo/index.d.ts +6 -0
  383. package/dist/tools/argo/index.d.ts.map +1 -0
  384. package/dist/tools/argo/index.js +5 -0
  385. package/dist/tools/argo/index.js.map +1 -0
  386. package/dist/tools/argocd/ArgoCDAppGetTool.d.ts +10 -0
  387. package/dist/tools/argocd/ArgoCDAppGetTool.d.ts.map +1 -0
  388. package/dist/tools/argocd/ArgoCDAppGetTool.js +97 -0
  389. package/dist/tools/argocd/ArgoCDAppGetTool.js.map +1 -0
  390. package/dist/tools/argocd/ArgoCDAppHistoryTool.d.ts +10 -0
  391. package/dist/tools/argocd/ArgoCDAppHistoryTool.d.ts.map +1 -0
  392. package/dist/tools/argocd/ArgoCDAppHistoryTool.js +80 -0
  393. package/dist/tools/argocd/ArgoCDAppHistoryTool.js.map +1 -0
  394. package/dist/tools/argocd/ArgoCDAppListTool.d.ts +10 -0
  395. package/dist/tools/argocd/ArgoCDAppListTool.d.ts.map +1 -0
  396. package/dist/tools/argocd/ArgoCDAppListTool.js +128 -0
  397. package/dist/tools/argocd/ArgoCDAppListTool.js.map +1 -0
  398. package/dist/tools/argocd/ArgoCDAppLogsTool.d.ts +10 -0
  399. package/dist/tools/argocd/ArgoCDAppLogsTool.d.ts.map +1 -0
  400. package/dist/tools/argocd/ArgoCDAppLogsTool.js +143 -0
  401. package/dist/tools/argocd/ArgoCDAppLogsTool.js.map +1 -0
  402. package/dist/tools/argocd/ArgoCDAppResourcesTool.d.ts +10 -0
  403. package/dist/tools/argocd/ArgoCDAppResourcesTool.d.ts.map +1 -0
  404. package/dist/tools/argocd/ArgoCDAppResourcesTool.js +123 -0
  405. package/dist/tools/argocd/ArgoCDAppResourcesTool.js.map +1 -0
  406. package/dist/tools/argocd/ArgoCDAppTool.d.ts +10 -0
  407. package/dist/tools/argocd/ArgoCDAppTool.d.ts.map +1 -0
  408. package/dist/tools/argocd/ArgoCDAppTool.js +179 -0
  409. package/dist/tools/argocd/ArgoCDAppTool.js.map +1 -0
  410. package/dist/tools/argocd/BaseTool.d.ts +71 -0
  411. package/dist/tools/argocd/BaseTool.d.ts.map +1 -0
  412. package/dist/tools/argocd/BaseTool.js +62 -0
  413. package/dist/tools/argocd/BaseTool.js.map +1 -0
  414. package/dist/tools/argocd/index.d.ts +4 -0
  415. package/dist/tools/argocd/index.d.ts.map +1 -0
  416. package/dist/tools/argocd/index.js +3 -0
  417. package/dist/tools/argocd/index.js.map +1 -0
  418. package/dist/tools/helm/BaseTool.d.ts +51 -0
  419. package/dist/tools/helm/BaseTool.d.ts.map +1 -0
  420. package/dist/tools/helm/BaseTool.js +42 -0
  421. package/dist/tools/helm/BaseTool.js.map +1 -0
  422. package/dist/tools/helm/HelmGetHooksTool.d.ts +10 -0
  423. package/dist/tools/helm/HelmGetHooksTool.d.ts.map +1 -0
  424. package/dist/tools/helm/HelmGetHooksTool.js +38 -0
  425. package/dist/tools/helm/HelmGetHooksTool.js.map +1 -0
  426. package/dist/tools/helm/HelmGetManifestTool.d.ts +10 -0
  427. package/dist/tools/helm/HelmGetManifestTool.d.ts.map +1 -0
  428. package/dist/tools/helm/HelmGetManifestTool.js +38 -0
  429. package/dist/tools/helm/HelmGetManifestTool.js.map +1 -0
  430. package/dist/tools/helm/HelmGetNotesTool.d.ts +10 -0
  431. package/dist/tools/helm/HelmGetNotesTool.d.ts.map +1 -0
  432. package/dist/tools/helm/HelmGetNotesTool.js +38 -0
  433. package/dist/tools/helm/HelmGetNotesTool.js.map +1 -0
  434. package/dist/tools/helm/HelmGetResourcesTool.d.ts +13 -0
  435. package/dist/tools/helm/HelmGetResourcesTool.d.ts.map +1 -0
  436. package/dist/tools/helm/HelmGetResourcesTool.js +124 -0
  437. package/dist/tools/helm/HelmGetResourcesTool.js.map +1 -0
  438. package/dist/tools/helm/HelmGetTool.d.ts +11 -0
  439. package/dist/tools/helm/HelmGetTool.d.ts.map +1 -0
  440. package/dist/tools/helm/HelmGetTool.js +145 -0
  441. package/dist/tools/helm/HelmGetTool.js.map +1 -0
  442. package/dist/tools/helm/HelmGetValuesTool.d.ts +10 -0
  443. package/dist/tools/helm/HelmGetValuesTool.d.ts.map +1 -0
  444. package/dist/tools/helm/HelmGetValuesTool.js +62 -0
  445. package/dist/tools/helm/HelmGetValuesTool.js.map +1 -0
  446. package/dist/tools/helm/HelmHistoryTool.d.ts +10 -0
  447. package/dist/tools/helm/HelmHistoryTool.d.ts.map +1 -0
  448. package/dist/tools/helm/HelmHistoryTool.js +49 -0
  449. package/dist/tools/helm/HelmHistoryTool.js.map +1 -0
  450. package/dist/tools/helm/HelmListTool.d.ts +10 -0
  451. package/dist/tools/helm/HelmListTool.d.ts.map +1 -0
  452. package/dist/tools/helm/HelmListTool.js +107 -0
  453. package/dist/tools/helm/HelmListTool.js.map +1 -0
  454. package/dist/tools/helm/HelmListWithResourcesTool.d.ts +14 -0
  455. package/dist/tools/helm/HelmListWithResourcesTool.d.ts.map +1 -0
  456. package/dist/tools/helm/HelmListWithResourcesTool.js +175 -0
  457. package/dist/tools/helm/HelmListWithResourcesTool.js.map +1 -0
  458. package/dist/tools/helm/HelmStatusTool.d.ts +10 -0
  459. package/dist/tools/helm/HelmStatusTool.d.ts.map +1 -0
  460. package/dist/tools/helm/HelmStatusTool.js +54 -0
  461. package/dist/tools/helm/HelmStatusTool.js.map +1 -0
  462. package/dist/tools/helm/index.d.ts +5 -0
  463. package/dist/tools/helm/index.d.ts.map +1 -0
  464. package/dist/tools/helm/index.js +4 -0
  465. package/dist/tools/helm/index.js.map +1 -0
  466. package/dist/tools/kubernetes/BaseTool.d.ts +48 -0
  467. package/dist/tools/kubernetes/BaseTool.d.ts.map +1 -0
  468. package/dist/tools/kubernetes/BaseTool.js +55 -0
  469. package/dist/tools/kubernetes/BaseTool.js.map +1 -0
  470. package/dist/tools/kubernetes/ExecTool.d.ts +11 -0
  471. package/dist/tools/kubernetes/ExecTool.d.ts.map +1 -0
  472. package/dist/tools/kubernetes/ExecTool.js +275 -0
  473. package/dist/tools/kubernetes/ExecTool.js.map +1 -0
  474. package/dist/tools/kubernetes/GetConfigMapTool.d.ts +11 -0
  475. package/dist/tools/kubernetes/GetConfigMapTool.d.ts.map +1 -0
  476. package/dist/tools/kubernetes/GetConfigMapTool.js +28 -0
  477. package/dist/tools/kubernetes/GetConfigMapTool.js.map +1 -0
  478. package/dist/tools/kubernetes/GetContainerLogsTool.d.ts +15 -0
  479. package/dist/tools/kubernetes/GetContainerLogsTool.d.ts.map +1 -0
  480. package/dist/tools/kubernetes/GetContainerLogsTool.js +129 -0
  481. package/dist/tools/kubernetes/GetContainerLogsTool.js.map +1 -0
  482. package/dist/tools/kubernetes/GetCronJobsTool.d.ts +8 -0
  483. package/dist/tools/kubernetes/GetCronJobsTool.d.ts.map +1 -0
  484. package/dist/tools/kubernetes/GetCronJobsTool.js +45 -0
  485. package/dist/tools/kubernetes/GetCronJobsTool.js.map +1 -0
  486. package/dist/tools/kubernetes/GetDaemonSetsTool.d.ts +8 -0
  487. package/dist/tools/kubernetes/GetDaemonSetsTool.d.ts.map +1 -0
  488. package/dist/tools/kubernetes/GetDaemonSetsTool.js +53 -0
  489. package/dist/tools/kubernetes/GetDaemonSetsTool.js.map +1 -0
  490. package/dist/tools/kubernetes/GetDeploymentsTool.d.ts +11 -0
  491. package/dist/tools/kubernetes/GetDeploymentsTool.d.ts.map +1 -0
  492. package/dist/tools/kubernetes/GetDeploymentsTool.js +30 -0
  493. package/dist/tools/kubernetes/GetDeploymentsTool.js.map +1 -0
  494. package/dist/tools/kubernetes/GetEndpointSlicesTool.d.ts +8 -0
  495. package/dist/tools/kubernetes/GetEndpointSlicesTool.d.ts.map +1 -0
  496. package/dist/tools/kubernetes/GetEndpointSlicesTool.js +57 -0
  497. package/dist/tools/kubernetes/GetEndpointSlicesTool.js.map +1 -0
  498. package/dist/tools/kubernetes/GetEndpointsTool.d.ts +8 -0
  499. package/dist/tools/kubernetes/GetEndpointsTool.d.ts.map +1 -0
  500. package/dist/tools/kubernetes/GetEndpointsTool.js +53 -0
  501. package/dist/tools/kubernetes/GetEndpointsTool.js.map +1 -0
  502. package/dist/tools/kubernetes/GetEventsTool.d.ts +11 -0
  503. package/dist/tools/kubernetes/GetEventsTool.d.ts.map +1 -0
  504. package/dist/tools/kubernetes/GetEventsTool.js +123 -0
  505. package/dist/tools/kubernetes/GetEventsTool.js.map +1 -0
  506. package/dist/tools/kubernetes/GetHPATool.d.ts +8 -0
  507. package/dist/tools/kubernetes/GetHPATool.d.ts.map +1 -0
  508. package/dist/tools/kubernetes/GetHPATool.js +45 -0
  509. package/dist/tools/kubernetes/GetHPATool.js.map +1 -0
  510. package/dist/tools/kubernetes/GetIngressTool.d.ts +11 -0
  511. package/dist/tools/kubernetes/GetIngressTool.d.ts.map +1 -0
  512. package/dist/tools/kubernetes/GetIngressTool.js +35 -0
  513. package/dist/tools/kubernetes/GetIngressTool.js.map +1 -0
  514. package/dist/tools/kubernetes/GetJobsTool.d.ts +8 -0
  515. package/dist/tools/kubernetes/GetJobsTool.d.ts.map +1 -0
  516. package/dist/tools/kubernetes/GetJobsTool.js +52 -0
  517. package/dist/tools/kubernetes/GetJobsTool.js.map +1 -0
  518. package/dist/tools/kubernetes/GetLimitRangesTool.d.ts +8 -0
  519. package/dist/tools/kubernetes/GetLimitRangesTool.d.ts.map +1 -0
  520. package/dist/tools/kubernetes/GetLimitRangesTool.js +38 -0
  521. package/dist/tools/kubernetes/GetLimitRangesTool.js.map +1 -0
  522. package/dist/tools/kubernetes/GetMetricsTool.d.ts +11 -0
  523. package/dist/tools/kubernetes/GetMetricsTool.d.ts.map +1 -0
  524. package/dist/tools/kubernetes/GetMetricsTool.js +43 -0
  525. package/dist/tools/kubernetes/GetMetricsTool.js.map +1 -0
  526. package/dist/tools/kubernetes/GetNamespacesTool.d.ts +11 -0
  527. package/dist/tools/kubernetes/GetNamespacesTool.d.ts.map +1 -0
  528. package/dist/tools/kubernetes/GetNamespacesTool.js +33 -0
  529. package/dist/tools/kubernetes/GetNamespacesTool.js.map +1 -0
  530. package/dist/tools/kubernetes/GetNodesTool.d.ts +8 -0
  531. package/dist/tools/kubernetes/GetNodesTool.d.ts.map +1 -0
  532. package/dist/tools/kubernetes/GetNodesTool.js +53 -0
  533. package/dist/tools/kubernetes/GetNodesTool.js.map +1 -0
  534. package/dist/tools/kubernetes/GetPDBTool.d.ts +8 -0
  535. package/dist/tools/kubernetes/GetPDBTool.d.ts.map +1 -0
  536. package/dist/tools/kubernetes/GetPDBTool.js +46 -0
  537. package/dist/tools/kubernetes/GetPDBTool.js.map +1 -0
  538. package/dist/tools/kubernetes/GetPersistentVolumeClaimsTool.d.ts +11 -0
  539. package/dist/tools/kubernetes/GetPersistentVolumeClaimsTool.d.ts.map +1 -0
  540. package/dist/tools/kubernetes/GetPersistentVolumeClaimsTool.js +92 -0
  541. package/dist/tools/kubernetes/GetPersistentVolumeClaimsTool.js.map +1 -0
  542. package/dist/tools/kubernetes/GetPersistentVolumesTool.d.ts +11 -0
  543. package/dist/tools/kubernetes/GetPersistentVolumesTool.d.ts.map +1 -0
  544. package/dist/tools/kubernetes/GetPersistentVolumesTool.js +88 -0
  545. package/dist/tools/kubernetes/GetPersistentVolumesTool.js.map +1 -0
  546. package/dist/tools/kubernetes/GetPodMetricsTool.d.ts +11 -0
  547. package/dist/tools/kubernetes/GetPodMetricsTool.d.ts.map +1 -0
  548. package/dist/tools/kubernetes/GetPodMetricsTool.js +100 -0
  549. package/dist/tools/kubernetes/GetPodMetricsTool.js.map +1 -0
  550. package/dist/tools/kubernetes/GetPodsTool.d.ts +11 -0
  551. package/dist/tools/kubernetes/GetPodsTool.d.ts.map +1 -0
  552. package/dist/tools/kubernetes/GetPodsTool.js +35 -0
  553. package/dist/tools/kubernetes/GetPodsTool.js.map +1 -0
  554. package/dist/tools/kubernetes/GetReplicaSetsTool.d.ts +8 -0
  555. package/dist/tools/kubernetes/GetReplicaSetsTool.d.ts.map +1 -0
  556. package/dist/tools/kubernetes/GetReplicaSetsTool.js +49 -0
  557. package/dist/tools/kubernetes/GetReplicaSetsTool.js.map +1 -0
  558. package/dist/tools/kubernetes/GetResourceQuotaTool.d.ts +8 -0
  559. package/dist/tools/kubernetes/GetResourceQuotaTool.d.ts.map +1 -0
  560. package/dist/tools/kubernetes/GetResourceQuotaTool.js +53 -0
  561. package/dist/tools/kubernetes/GetResourceQuotaTool.js.map +1 -0
  562. package/dist/tools/kubernetes/GetResourceTool.d.ts +29 -0
  563. package/dist/tools/kubernetes/GetResourceTool.d.ts.map +1 -0
  564. package/dist/tools/kubernetes/GetResourceTool.js +1053 -0
  565. package/dist/tools/kubernetes/GetResourceTool.js.map +1 -0
  566. package/dist/tools/kubernetes/GetSecretsTool.d.ts +11 -0
  567. package/dist/tools/kubernetes/GetSecretsTool.d.ts.map +1 -0
  568. package/dist/tools/kubernetes/GetSecretsTool.js +49 -0
  569. package/dist/tools/kubernetes/GetSecretsTool.js.map +1 -0
  570. package/dist/tools/kubernetes/GetServicesTool.d.ts +11 -0
  571. package/dist/tools/kubernetes/GetServicesTool.d.ts.map +1 -0
  572. package/dist/tools/kubernetes/GetServicesTool.js +35 -0
  573. package/dist/tools/kubernetes/GetServicesTool.js.map +1 -0
  574. package/dist/tools/kubernetes/GetStatefulSetsTool.d.ts +8 -0
  575. package/dist/tools/kubernetes/GetStatefulSetsTool.d.ts.map +1 -0
  576. package/dist/tools/kubernetes/GetStatefulSetsTool.js +53 -0
  577. package/dist/tools/kubernetes/GetStatefulSetsTool.js.map +1 -0
  578. package/dist/tools/kubernetes/KubeListTool.d.ts +54 -0
  579. package/dist/tools/kubernetes/KubeListTool.d.ts.map +1 -0
  580. package/dist/tools/kubernetes/KubeListTool.js +1370 -0
  581. package/dist/tools/kubernetes/KubeListTool.js.map +1 -0
  582. package/dist/tools/kubernetes/KubeLogTool.d.ts +18 -0
  583. package/dist/tools/kubernetes/KubeLogTool.d.ts.map +1 -0
  584. package/dist/tools/kubernetes/KubeLogTool.js +920 -0
  585. package/dist/tools/kubernetes/KubeLogTool.js.map +1 -0
  586. package/dist/tools/kubernetes/KubeMetricsTool.d.ts +11 -0
  587. package/dist/tools/kubernetes/KubeMetricsTool.d.ts.map +1 -0
  588. package/dist/tools/kubernetes/KubeMetricsTool.js +174 -0
  589. package/dist/tools/kubernetes/KubeMetricsTool.js.map +1 -0
  590. package/dist/tools/kubernetes/KubeNetTool.d.ts +27 -0
  591. package/dist/tools/kubernetes/KubeNetTool.d.ts.map +1 -0
  592. package/dist/tools/kubernetes/KubeNetTool.js +420 -0
  593. package/dist/tools/kubernetes/KubeNetTool.js.map +1 -0
  594. package/dist/tools/kubernetes/PortForwardTool.d.ts +14 -0
  595. package/dist/tools/kubernetes/PortForwardTool.d.ts.map +1 -0
  596. package/dist/tools/kubernetes/PortForwardTool.js +278 -0
  597. package/dist/tools/kubernetes/PortForwardTool.js.map +1 -0
  598. package/dist/tools/kubernetes/index.d.ts +11 -0
  599. package/dist/tools/kubernetes/index.d.ts.map +1 -0
  600. package/dist/tools/kubernetes/index.js +10 -0
  601. package/dist/tools/kubernetes/index.js.map +1 -0
  602. package/dist/utils/CliUtils.d.ts +24 -0
  603. package/dist/utils/CliUtils.d.ts.map +1 -0
  604. package/dist/utils/CliUtils.js +164 -0
  605. package/dist/utils/CliUtils.js.map +1 -0
  606. package/dist/utils/CodeModeConfig.d.ts +68 -0
  607. package/dist/utils/CodeModeConfig.d.ts.map +1 -0
  608. package/dist/utils/CodeModeConfig.js +42 -0
  609. package/dist/utils/CodeModeConfig.js.map +1 -0
  610. package/dist/utils/SensitiveData.d.ts +31 -0
  611. package/dist/utils/SensitiveData.d.ts.map +1 -0
  612. package/dist/utils/SensitiveData.js +136 -0
  613. package/dist/utils/SensitiveData.js.map +1 -0
  614. package/dist/version.d.ts +2 -0
  615. package/dist/version.d.ts.map +1 -0
  616. package/dist/version.js +4 -0
  617. package/dist/version.js.map +1 -0
  618. package/kube-mcp.code-mode.example.json +17 -0
  619. package/kube-mcp.code-mode.json +17 -0
  620. package/package.json +13 -8
  621. package/src/agent/bridge/MCPBridge.ts +176 -0
  622. package/src/agent/codegen/CodegenManager.ts +334 -0
  623. package/src/agent/codegen/SchemaToTypeScriptMapper.ts +98 -0
  624. package/src/agent/codegen/ToolDescriptionBuilder.ts +257 -0
  625. package/src/agent/codegen/ToolSchemaIntrospector.ts +95 -0
  626. package/src/agent/codegen/types.ts +38 -0
  627. package/src/agent/config/CodeModeConfig.ts +41 -0
  628. package/src/agent/runtime/code-executor/CodeExecutor.ts +127 -0
  629. package/src/agent/runtime/code-executor/NodeVmCodeExecutor.ts +117 -0
  630. package/src/agent/runtime/createSandboxManager.ts +40 -0
  631. package/src/agent/runtime/ivm/IVMSandboxManager.ts +226 -0
  632. package/src/agent/runtime/types.ts +13 -0
  633. package/src/agent/runtime/vm/VmSandboxManager.ts +201 -0
  634. package/src/agent/security/PIITokenizer.ts +65 -0
  635. package/src/cli/code-mode.ts +266 -0
  636. package/src/index.ts +121 -22
  637. package/src/kubernetes/resources/MetricOperations.ts +3 -3
  638. package/src/plugins/ArgoCDToolsPlugin.ts +8 -5
  639. package/src/plugins/ArgoToolsPlugin.ts +9 -5
  640. package/src/plugins/BaseToolsPlugin.ts +3 -2
  641. package/src/plugins/HelmToolsPlugin.ts +9 -5
  642. package/src/plugins/KubernetesToolsPlugin.ts +6 -7
  643. package/src/plugins/SamplePlugin.ts +1 -2
  644. package/src/server/MCPServer.ts +105 -16
  645. package/src/tools/RunCodeTool.ts +601 -0
  646. package/src/tools/kubernetes/GetContainerLogsTool.ts +16 -1
  647. package/src/tools/kubernetes/KubeLogTool.ts +158 -30
  648. package/src/utils/CliUtils.ts +3 -3
  649. package/src/utils/CodeModeConfig.ts +48 -0
  650. package/src/utils/SensitiveData.ts +3 -3
package/CHANGELOG.md CHANGED
@@ -5,6 +5,33 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [1.3.0] - 2025-11-27
9
+
10
+ ### Added
11
+ - **Code-Mode Execution**: Added sandboxed TypeScript code execution runtime following Anthropic's code execution with MCP approach
12
+ - **RunCodeTool**: Implemented `run_code` tool for executing TypeScript code in a sandboxed Node.js VM environment
13
+ - **Code-Mode CLI**: Added `kubeview-mcp-code-mode` binary and `npm run code-mode` script for standalone code execution
14
+ - **TypeScript Transpilation**: Integrated TypeScript compiler for runtime transpilation of agent code (ES2022 target)
15
+ - **Global Type Definitions**: Added `/sys/global.d.ts` resource providing TypeScript type definitions for all available tools
16
+ - **Tool Executor**: Implemented tool executor allowing sandboxed code to call MCP tools internally
17
+ - **Helper Functions**: Added `callMCPTool()`, `searchTools()`, and `getToolHelp()` helper functions for progressive tool discovery
18
+ - **Code-Mode Configuration**: Added `CodeModeConfig` with configurable sandbox limits (memory, timeout) and workspace settings
19
+ - **Dual Mode Support**: Added `NODE_MODE=code` environment variable to run server in code-mode (exposes only `run_code` tool)
20
+
21
+ ### Changed
22
+ - **Plugin Architecture**: Removed version property from various tools plugins and MCPServer for simplified plugin management
23
+ - **Dependencies**: Added TypeScript as a runtime dependency (previously dev-only) for code-mode transpilation
24
+ - **Tool Manifest**: Enhanced tool manifest system to support dynamic tool generation for agent code execution
25
+
26
+ ### Fixed
27
+ - **Type Definitions**: Fixed TypeScript typing for generated global DTS resources and resource registration
28
+
29
+ ## [1.2.0] - 2025-08-19
30
+
31
+ ### Changed
32
+ - **Changed variable naming**
33
+ - **Diabled logging by default**
34
+
8
35
  ## [1.1.0] - 2025-08-09
9
36
 
10
37
  ### Added
@@ -80,4 +107,4 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
80
107
  - Integration guides for Cursor IDE
81
108
  - API documentation for developers
82
109
 
83
- [1.0.0]: https://github.com/mikhae1/kubeview-mcp/releases/tag/v1.0.0
110
+ [1.0.0]: https://github.com/mikhae1/kubeview-mcp/releases/tag/v1.0.0
package/README.md CHANGED
@@ -4,7 +4,7 @@
4
4
  [![Node.js Version](https://img.shields.io/badge/node-%3E%3D18.0.0-brightgreen)](https://nodejs.org/)
5
5
  [![TypeScript](https://img.shields.io/badge/TypeScript-5.8+-blue)](https://www.typescriptlang.org/)
6
6
 
7
- KubeView MCP is a read-only Model Context Protocol (MCP) server that exposes AI-friendly tools for safe Kubernetes, Helm, Argo Workflows, and Argo CD introspection. It pairs with Cursor IDE, Claude Desktop, and other MCP clients to let you inspect, diagnose, and debug clusters via natural languagewithout any write operations.
7
+ KubeView MCP is a read-only Model Context Protocol (MCP) server that exposes AI-friendly tools for safe Kubernetes, Helm, Argo Workflows, and Argo CD introspection. It pairs with Cursor IDE, Claude Code/Desktop, and other MCP clients to let you inspect, diagnose, and debug clusters via natural language and without any write operations.
8
8
 
9
9
  ---
10
10
 
@@ -22,13 +22,23 @@ KubeView MCP is a read-only Model Context Protocol (MCP) server that exposes AI-
22
22
 
23
23
  ## 🚀 Quick Start
24
24
 
25
- ### Zero-install via npx
25
+ Add to your MCP client config:
26
26
 
27
- ```bash
28
- npx -y https://github.com/mikhae1/kubeview-mcp
27
+ ```json
28
+ {
29
+ "mcpServers": {
30
+ "kubeview-mcp": {
31
+ "command": "npx",
32
+ "args": ["-y", "https://github.com/mikhae1/kubeview-mcp"],
33
+ "env": {
34
+ "KUBECONFIG": "$HOME/.kube/config"
35
+ }
36
+ }
37
+ }
38
+ }
29
39
  ```
30
40
 
31
- Add to your MCP client config (for Cursor, `~/.cursor/mcp.json`):
41
+ If you want to use code-mode only (heavy context tasks, like logs parsing, etc.):
32
42
 
33
43
  ```json
34
44
  {
@@ -37,7 +47,8 @@ Add to your MCP client config (for Cursor, `~/.cursor/mcp.json`):
37
47
  "command": "npx",
38
48
  "args": ["-y", "https://github.com/mikhae1/kubeview-mcp"],
39
49
  "env": {
40
- "KUBECONFIG": "$HOME/.kube/config"
50
+ "KUBECONFIG": "$HOME/.kube/config",
51
+ "NODE_MODE": "code"
41
52
  }
42
53
  }
43
54
  }
@@ -48,10 +59,18 @@ Add to your MCP client config (for Cursor, `~/.cursor/mcp.json`):
48
59
 
49
60
  - Node.js ≥ 18
50
61
  - Access to a Kubernetes cluster (kubeconfig)
51
- - Optional CLIs on PATH when using those plugins: `helm`, `argo`, `argocd`
62
+ - Optional CLIs on PATH if you want to use those plugins: `helm`, `argo`, `argocd`
52
63
 
53
64
  ### Local install
54
65
 
66
+ #### npx
67
+
68
+ ```bash
69
+ npx -y https://github.com/mikhae1/kubeview-mcp
70
+ ```
71
+
72
+ #### git
73
+
55
74
  ```bash
56
75
  git clone https://github.com/mikhae1/kubeview-mcp.git
57
76
  cd kubeview-mcp
@@ -70,9 +89,66 @@ npm start
70
89
 
71
90
  # Or use the bundled binary wrapper
72
91
  kubeview-mcp serve
92
+
93
+ # Launch the code-mode runtime (see section below)
94
+ npm run code-mode
73
95
  ```
74
96
 
75
- ---
97
+ ## 🧠 Code-Mode Execution
98
+
99
+ Inspired by [Code execution with MCP](https://www.anthropic.com/engineering/code-execution-with-mcp), KubeView now ships with a code-mode runtime that lets agents explore generated TypeScript API, search tools progressively, and run sandboxed workflows without piping giant schemas through the model context.
100
+
101
+ ### What it provides
102
+
103
+ - **MCP bridge layer** – connects to MCP server tools.
104
+ - **Schema→TypeScript codegen** – converts every tool schema into `generated/servers/<server>/<tool>.ts` wrappers plus runtime helpers (`generated/runtime/*`), so agents can `import` strongly-typed helpers instead of copying JSON schemas.
105
+ - **Tool search utilities** – manifests + runtime helpers (`toolSearch.ts`, `search_tools` MCP tool) let agents progressively discover servers and tools without loading everything upfront.
106
+ - **Sandboxed execution** – `isolated-vm` powers a locked-down Node.js-like environment with controlled `console`, MCP tool access, and a scoped filesystem bridge.
107
+ - **Stateful workspace & skills** – the sandbox exposes a safe filesystem rooted at `./workspace`, including a `skills/` folder with a `SKILL.md` convention for reusable snippets.
108
+
109
+ ### How to use
110
+
111
+ #### Exposing only the code-mode entry tool
112
+
113
+ To present a single `run_code` tool to your MCP client (and force all heavy work through the filesystem runtime), start the server with `NODE_MODE=code`, e.g.:
114
+
115
+ ```bash
116
+ NODE_MODE=code npx -y https://github.com/mikhae1/kubeview-mcp
117
+ ```
118
+
119
+ In this mode the server registers only the `run_code` tool, which accepts the following parameters:
120
+
121
+ ```ts
122
+ {
123
+ code: string; // required – snippet you plan to execute in the sandbox
124
+ input?: string; // optional stdin payload
125
+ }
126
+ ```
127
+
128
+ Calling `run_code` doesn’t execute anything inside the MCP process; instead it returns the generated filesystem tree (`generated/servers/...`, `generated/runtime/...`) plus instructions for launching `kubeview-mcp-code-mode` / `npm run code-mode`, keeping the MCP handshake tiny while the real work happens inside the sandbox.
129
+
130
+ ### Manually setting up the sandbox
131
+
132
+ 1. Copy the sample config and edit it for your environment:
133
+ ```bash
134
+ cp kube-mcp.code-mode.example.json kube-mcp.code-mode.json
135
+ ```
136
+ 2. Build the project so the CLI wrapper can import the compiled entrypoint:
137
+ ```bash
138
+ npm run build
139
+ ```
140
+ 3. Edit `workspace/main.ts` (auto-created on first run) to import generated helpers:
141
+
142
+ 4. Run the runtime (or use the new `kubeview-mcp-code-mode` binary):
143
+ ```bash
144
+ npm run code-mode
145
+ # or
146
+ kubeview-mcp-code-mode
147
+ ```
148
+
149
+ Generated modules call back into real MCP servers via the sandbox bridge, so large responses stay in the execution environment and only summaries hit the model context.
150
+
151
+ The runtime writes everything under `generated/` and `workspace/`. Clean them up at any time to force regeneration.
76
152
 
77
153
  ## 📟 Tool Index (CLI)
78
154
 
@@ -135,12 +211,14 @@ npm run command -- <tool_name> [--param=value ...]
135
211
  Provide env vars via your MCP client config or shell.
136
212
 
137
213
  - **KUBECONFIG**: Path to kubeconfig (default: `$HOME/.kube/config`)
138
- - **LOG_LEVEL**: `error|warn|info|debug` (server logs also write to `kubeview-mcp.log`)
139
- - **TIMEOUT**: Global per-tool timeout in ms (applies to all tools)
140
- - CLI timeouts: **HELM_TIMEOUT**, **ARGO_TIMEOUT**, **ARGOCD_TIMEOUT** (ms)
141
- - CLI executable overrides: **HELM_PATH**, **ARGO_PATH**, **ARGOCD_PATH**
142
- - Plugin toggles: **DISABLE_KUBERNETES_PLUGIN**, **DISABLE_HELM_PLUGIN**, **DISABLE_ARGO_PLUGIN**, **DISABLE_ARGOCD_PLUGIN** (`true|1` to disable)
143
- - Kubernetes options: **KUBE_CONTEXT**, **K8S_SKIP_TLS_VERIFY** (`true|1`)
214
+ - **MCP_LOG_LEVEL**: `error|warn|info|debug`
215
+ - **MCP_LOG_ENABLE**: `true|1` to enable server file logging (default: disabled)
216
+ - **MCP_LOG_FILE**: Path to server log file (default when enabled: `kubeview-mcp.log`)
217
+ - **MCP_TIMEOUT**: Global per-tool timeout in ms (applies to all tools)
218
+ - CLI timeouts: **MCP_HELM_TIMEOUT**, **MCP_ARGO_TIMEOUT**, **MCP_ARGOCD_TIMEOUT** (ms)
219
+ - CLI executable overrides: **MCP_HELM_PATH**, **MCP_ARGO_PATH**, **MCP_ARGOCD_PATH**
220
+ - Plugin toggles: **MCP_DISABLE_KUBERNETES_PLUGIN**, **MCP_DISABLE_HELM_PLUGIN**, **MCP_DISABLE_ARGO_PLUGIN**, **MCP_DISABLE_ARGOCD_PLUGIN** (`true|1` to disable)
221
+ - Kubernetes options: **MCP_KUBE_CONTEXT**, **MCP_K8S_SKIP_TLS_VERIFY** (`true|1`)
144
222
 
145
223
  Example (Cursor `mcp.json`):
146
224
 
@@ -152,9 +230,9 @@ Example (Cursor `mcp.json`):
152
230
  "args": ["-y", "https://github.com/mikhae1/kubeview-mcp"],
153
231
  "env": {
154
232
  "KUBECONFIG": "$HOME/.kube/config",
155
- "LOG_LEVEL": "info",
156
- "HELM_TIMEOUT": "45000",
157
- "DISABLE_ARGO_PLUGIN": "1"
233
+ "MCP_LOG_LEVEL": "info",
234
+ "MCP_HELM_TIMEOUT": "45000",
235
+ "MCP_DISABLE_ARGO_PLUGIN": "1"
158
236
  }
159
237
  }
160
238
  }
@@ -167,8 +245,8 @@ Example (Cursor `mcp.json`):
167
245
 
168
246
  Global masking prevents accidental disclosure of secrets (enabled when any of the flags below are set):
169
247
 
170
- - Enable: `MCP_HIDE_SENSITIVE` or `HIDE_SENSITIVE_DATA` or `MASK_SENSITIVE_DATA` → `true|1|yes|on`
171
- - Mask text override: `SENSITIVE_MASK` (default: `*** FILTERED ***`)
248
+ - Enable: `MCP_HIDE_SENSITIVE` or `MCP_HIDE_SENSITIVE_DATA` or `MCP_MASK_SENSITIVE_DATA` → `true|1|yes|on`
249
+ - Mask text override: `MCP_SENSITIVE_MASK` (default: `*** FILTERED ***`)
172
250
 
173
251
  Effects:
174
252
 
@@ -216,34 +294,10 @@ npm run command -- kube_net --sourcePod=api-0 --namespace=prod --targetService=d
216
294
 
217
295
  # Helm release values (masked)
218
296
  npm run command -- helm_get --what=values --releaseName=my-release --namespace=default --allValues=true
219
-
220
- # Argo CD app resources
221
- npm run command -- argocd_app --operation=resources --appName=my-app --outputFormat=json
222
297
  ```
223
298
 
224
299
  ---
225
300
 
226
- ## 🤝 Contributing
227
-
228
- 1. Fork the repo
229
- 2. Create a feature branch: `git checkout -b feat/my-awesome-feature`
230
- 3. Commit: `git commit -m "feat: add my awesome feature"`
231
- 4. Push: `git push origin feat/my-awesome-feature`
232
- 5. Open a Pull Request
233
-
234
- Tip: run `npm run lint` and `npm run test` locally before submitting.
235
-
236
- ---
237
-
238
301
  ## 📄 License
239
302
 
240
303
  MIT – see `LICENSE`.
241
-
242
- ---
243
-
244
- ## 🙏 Acknowledgments
245
-
246
- - Model Context Protocol SDK
247
- - Kubernetes JavaScript Client
248
- - Winston
249
- - TypeScript
@@ -0,0 +1,60 @@
1
+ #!/usr/bin/env node
2
+
3
+ import { fileURLToPath } from 'url';
4
+ import path from 'path';
5
+ import fs from 'fs';
6
+ import { spawn, execSync } from 'child_process';
7
+
8
+ const __filename = fileURLToPath(import.meta.url);
9
+ const __dirname = path.dirname(__filename);
10
+ const projectRoot = path.resolve(__dirname, '..');
11
+
12
+ function ensureBuild() {
13
+ const distDir = path.join(projectRoot, 'dist');
14
+ const cliPath = path.join(distDir, 'src', 'cli', 'code-mode.js');
15
+ if (fs.existsSync(cliPath)) {
16
+ return cliPath;
17
+ }
18
+
19
+ console.error('[kubeview-mcp] Building project for code-mode CLI...');
20
+ try {
21
+ execSync('npm run build', { cwd: projectRoot, stdio: 'inherit' });
22
+ } catch (error) {
23
+ console.error('Failed to build project for code-mode CLI.');
24
+ console.error(error);
25
+ process.exit(1);
26
+ }
27
+
28
+ if (!fs.existsSync(cliPath)) {
29
+ console.error('code-mode CLI not found after build. Expected at:', cliPath);
30
+ process.exit(1);
31
+ }
32
+
33
+ return cliPath;
34
+ }
35
+
36
+ function runCodeMode() {
37
+ const cliPath = ensureBuild();
38
+ // Pass all arguments to the CLI
39
+ const args = process.argv.slice(2);
40
+
41
+ const child = spawn('node', [cliPath, ...args], {
42
+ cwd: projectRoot,
43
+ stdio: 'inherit',
44
+ env: {
45
+ ...process.env,
46
+ KUBE_MCP_FORCE_VM_SANDBOX: '1',
47
+ },
48
+ });
49
+
50
+ child.on('close', (code) => {
51
+ process.exit(code ?? 0);
52
+ });
53
+
54
+ child.on('error', (error) => {
55
+ console.error('Failed to start code-mode CLI:', error);
56
+ process.exit(1);
57
+ });
58
+ }
59
+
60
+ runCodeMode();
package/bin/setup.js CHANGED
@@ -173,9 +173,9 @@ class SetupManager {
173
173
  env: {
174
174
  KUBECONFIG: process.env.KUBECONFIG || this.defaultKubeconfig,
175
175
  // Disable optional plugins if their CLIs are not present to prevent startup failures in hosts like Claude
176
- ...(helmAvailable ? {} : { DISABLE_HELM_PLUGIN: '1' }),
177
- ...(argoAvailable ? {} : { DISABLE_ARGO_PLUGIN: '1' }),
178
- ...(argocdAvailable ? {} : { DISABLE_ARGOCD_PLUGIN: '1' }),
176
+ ...(helmAvailable ? {} : { MCP_DISABLE_HELM_PLUGIN: '1' }),
177
+ ...(argoAvailable ? {} : { MCP_DISABLE_ARGO_PLUGIN: '1' }),
178
+ ...(argocdAvailable ? {} : { MCP_DISABLE_ARGOCD_PLUGIN: '1' }),
179
179
  }
180
180
  };
181
181
  }
@@ -227,14 +227,14 @@ class SetupManager {
227
227
  console.log(` Entry point: ${serverConfig.args[0]}`);
228
228
  console.log(` Kubeconfig: ${serverConfig.env.KUBECONFIG}`);
229
229
 
230
- if (serverConfig.env.LOG_LEVEL) {
231
- console.log(` Log level: ${serverConfig.env.LOG_LEVEL}`);
230
+ if (serverConfig.env.MCP_LOG_LEVEL) {
231
+ console.log(` Log level: ${serverConfig.env.MCP_LOG_LEVEL}`);
232
232
  }
233
233
 
234
234
  // Show optional plugin status
235
- const helmDisabled = serverConfig.env.DISABLE_HELM_PLUGIN === '1' || serverConfig.env.DISABLE_HELM_PLUGIN === 'true';
236
- const argoDisabled = serverConfig.env.DISABLE_ARGO_PLUGIN === '1' || serverConfig.env.DISABLE_ARGO_PLUGIN === 'true';
237
- const argocdDisabled = serverConfig.env.DISABLE_ARGOCD_PLUGIN === '1' || serverConfig.env.DISABLE_ARGOCD_PLUGIN === 'true';
235
+ const helmDisabled = serverConfig.env.MCP_DISABLE_HELM_PLUGIN === '1' || serverConfig.env.MCP_DISABLE_HELM_PLUGIN === 'true';
236
+ const argoDisabled = serverConfig.env.MCP_DISABLE_ARGO_PLUGIN === '1' || serverConfig.env.MCP_DISABLE_ARGO_PLUGIN === 'true';
237
+ const argocdDisabled = serverConfig.env.MCP_DISABLE_ARGOCD_PLUGIN === '1' || serverConfig.env.MCP_DISABLE_ARGOCD_PLUGIN === 'true';
238
238
  console.log(' Optional plugins:');
239
239
  console.log(` Helm: ${helmDisabled ? 'disabled (helm CLI not found)' : 'enabled'}`);
240
240
  console.log(` Argo: ${argoDisabled ? 'disabled (argo CLI not found)' : 'enabled'}`);
@@ -0,0 +1,41 @@
1
+ import type { Tool } from '@modelcontextprotocol/sdk/types.js';
2
+ import type { Logger } from 'winston';
3
+ export interface MCPServerConfig {
4
+ name: string;
5
+ command: string;
6
+ args?: string[];
7
+ env?: Record<string, string>;
8
+ timeoutMs?: number;
9
+ }
10
+ export interface ToolRegistration {
11
+ qualifiedName: string;
12
+ server: string;
13
+ toolName: string;
14
+ tool: Tool;
15
+ }
16
+ export interface MCPBridgeOptions {
17
+ enablePII?: boolean;
18
+ logger?: Logger;
19
+ defaultTimeoutMs?: number;
20
+ }
21
+ export declare class MCPBridge {
22
+ private readonly configs;
23
+ private readonly options;
24
+ private clients;
25
+ private toolRegistry;
26
+ private piiTokenizer?;
27
+ private toolDiscoveryCache;
28
+ private configByServer;
29
+ constructor(configs: MCPServerConfig[], options?: MCPBridgeOptions);
30
+ initialize(): Promise<void>;
31
+ private initializeServer;
32
+ private cacheToolMetadata;
33
+ getRegisteredTools(): ToolRegistration[];
34
+ getToolMetadata(qualifiedName: string): ToolRegistration | undefined;
35
+ listServers(): string[];
36
+ listToolsForServer(serverName: string): Tool[];
37
+ callTool<T = any>(qualifiedName: string, args: any): Promise<T>;
38
+ close(): Promise<void>;
39
+ private withTimeout;
40
+ }
41
+ //# sourceMappingURL=MCPBridge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MCPBridge.d.ts","sourceRoot":"","sources":["../../../src/agent/bridge/MCPBridge.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAmB,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAChF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAGtC,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,IAAI,CAAC;CACZ;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,qBAAa,SAAS;IAQlB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAR1B,OAAO,CAAC,OAAO,CAAkC;IACjD,OAAO,CAAC,YAAY,CAA4C;IAChE,OAAO,CAAC,YAAY,CAAC,CAAe;IACpC,OAAO,CAAC,kBAAkB,CAAkC;IAC5D,OAAO,CAAC,cAAc,CAA2C;gBAG9C,OAAO,EAAE,eAAe,EAAE,EAC1B,OAAO,GAAE,gBAAqB;IAOpC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;YAU1B,gBAAgB;IAmC9B,OAAO,CAAC,iBAAiB;IAclB,kBAAkB,IAAI,gBAAgB,EAAE;IAIxC,eAAe,CAAC,aAAa,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS;IAIpE,WAAW,IAAI,MAAM,EAAE;IAIvB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,EAAE;IAIxC,QAAQ,CAAC,CAAC,GAAG,GAAG,EAAE,aAAa,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;IA+B/D,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;YASrB,WAAW;CAiB1B"}
@@ -0,0 +1,127 @@
1
+ import { Client } from '@modelcontextprotocol/sdk/client/index.js';
2
+ import { StdioClientTransport } from '@modelcontextprotocol/sdk/client/stdio.js';
3
+ import { PIITokenizer } from '../security/PIITokenizer.js';
4
+ export class MCPBridge {
5
+ configs;
6
+ options;
7
+ clients = new Map();
8
+ toolRegistry = new Map();
9
+ piiTokenizer;
10
+ toolDiscoveryCache = new Map();
11
+ configByServer = new Map();
12
+ constructor(configs, options = {}) {
13
+ this.configs = configs;
14
+ this.options = options;
15
+ if (options.enablePII) {
16
+ this.piiTokenizer = new PIITokenizer();
17
+ }
18
+ }
19
+ async initialize() {
20
+ for (const config of this.configs) {
21
+ if (this.configByServer.has(config.name)) {
22
+ throw new Error(`Duplicate MCP server name: ${config.name}`);
23
+ }
24
+ this.configByServer.set(config.name, config);
25
+ await this.initializeServer(config);
26
+ }
27
+ }
28
+ async initializeServer(config) {
29
+ const envEntries = Object.entries({
30
+ ...process.env,
31
+ ...config.env,
32
+ }).filter((entry) => typeof entry[1] === 'string');
33
+ const mergedEnv = Object.fromEntries(envEntries);
34
+ const transport = new StdioClientTransport({
35
+ command: config.command,
36
+ args: config.args ?? [],
37
+ env: mergedEnv,
38
+ });
39
+ const client = new Client({
40
+ name: 'kube-mcp-code-mode-client',
41
+ version: '1.0.0',
42
+ }, {
43
+ capabilities: {},
44
+ });
45
+ if (this.options.logger) {
46
+ this.options.logger.info(`Connecting to MCP server '${config.name}'`);
47
+ }
48
+ await client.connect(transport);
49
+ this.clients.set(config.name, client);
50
+ const toolsResponse = await client.listTools();
51
+ this.cacheToolMetadata(config.name, toolsResponse);
52
+ }
53
+ cacheToolMetadata(serverName, toolsResponse) {
54
+ this.toolDiscoveryCache.set(serverName, toolsResponse.tools);
55
+ for (const tool of toolsResponse.tools) {
56
+ const qualifiedName = `${serverName}__${tool.name}`;
57
+ this.toolRegistry.set(qualifiedName, {
58
+ qualifiedName,
59
+ server: serverName,
60
+ toolName: tool.name,
61
+ tool,
62
+ });
63
+ }
64
+ }
65
+ getRegisteredTools() {
66
+ return Array.from(this.toolRegistry.values());
67
+ }
68
+ getToolMetadata(qualifiedName) {
69
+ return this.toolRegistry.get(qualifiedName);
70
+ }
71
+ listServers() {
72
+ return Array.from(this.clients.keys());
73
+ }
74
+ listToolsForServer(serverName) {
75
+ return this.toolDiscoveryCache.get(serverName) ?? [];
76
+ }
77
+ async callTool(qualifiedName, args) {
78
+ const registration = this.toolRegistry.get(qualifiedName);
79
+ if (!registration) {
80
+ throw new Error(`Tool ${qualifiedName} not found`);
81
+ }
82
+ const client = this.clients.get(registration.server);
83
+ if (!client) {
84
+ throw new Error(`Server ${registration.server} not connected`);
85
+ }
86
+ const sanitizedArgs = this.piiTokenizer ? this.piiTokenizer.tokenize(args) : args;
87
+ const timeoutMs = this.configByServer.get(registration.server)?.timeoutMs ?? this.options.defaultTimeoutMs;
88
+ const callPromise = client.callTool({
89
+ name: registration.toolName,
90
+ arguments: sanitizedArgs,
91
+ });
92
+ let result;
93
+ if (timeoutMs && timeoutMs > 0) {
94
+ result = await this.withTimeout(callPromise, timeoutMs, qualifiedName);
95
+ }
96
+ else {
97
+ result = await callPromise;
98
+ }
99
+ const detokenized = this.piiTokenizer ? this.piiTokenizer.detokenize(result) : result;
100
+ return detokenized;
101
+ }
102
+ async close() {
103
+ for (const client of this.clients.values()) {
104
+ await client.close();
105
+ }
106
+ this.clients.clear();
107
+ this.toolRegistry.clear();
108
+ this.toolDiscoveryCache.clear();
109
+ }
110
+ async withTimeout(promise, timeoutMs, label) {
111
+ return new Promise((resolve, reject) => {
112
+ const timer = setTimeout(() => {
113
+ reject(new Error(`${label} timed out after ${timeoutMs}ms`));
114
+ }, timeoutMs);
115
+ promise
116
+ .then((value) => {
117
+ clearTimeout(timer);
118
+ resolve(value);
119
+ })
120
+ .catch((err) => {
121
+ clearTimeout(timer);
122
+ reject(err);
123
+ });
124
+ });
125
+ }
126
+ }
127
+ //# sourceMappingURL=MCPBridge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MCPBridge.js","sourceRoot":"","sources":["../../../src/agent/bridge/MCPBridge.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import { ToolSchemaIntrospector } from './ToolSchemaIntrospector.js';
2
+ export interface CodegenManagerOptions {
3
+ outputDir: string;
4
+ runtimeImportPath?: string;
5
+ manifestPath?: string;
6
+ }
7
+ export declare class CodegenManager {
8
+ private readonly introspector;
9
+ private readonly mapper;
10
+ private readonly printer;
11
+ private readonly options;
12
+ constructor(introspector: ToolSchemaIntrospector, options?: Partial<CodegenManagerOptions>);
13
+ generate(): Promise<void>;
14
+ private groupByServer;
15
+ private writeToolFile;
16
+ private createRuntimeImport;
17
+ private createToolFunction;
18
+ private writeServerIndex;
19
+ private writeRootIndex;
20
+ private writeManifest;
21
+ private ensureRuntimeHelpers;
22
+ private printStatements;
23
+ private toPascalCase;
24
+ private toCamelCase;
25
+ }
26
+ //# sourceMappingURL=CodegenManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CodegenManager.d.ts","sourceRoot":"","sources":["../../../src/agent/codegen/CodegenManager.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAIrE,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAQD,qBAAa,cAAc;IAMvB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAL/B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkC;IACzD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA0D;IAClF,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAwB;gBAG7B,YAAY,EAAE,sBAAsB,EACrD,OAAO,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAK7B,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAsBtC,OAAO,CAAC,aAAa;YAWP,aAAa;IAsB3B,OAAO,CAAC,mBAAmB;IAoB3B,OAAO,CAAC,kBAAkB;YAwDZ,gBAAgB;YAqBhB,cAAc;YAcd,aAAa;YAeb,oBAAoB;IAiGlC,OAAO,CAAC,eAAe;IAavB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,WAAW;CAIpB"}