@confluentinc/mcp-confluent 1.2.2 → 1.4.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 (508) hide show
  1. package/README.md +299 -240
  2. package/assets/oauth-templates/callback-failure.html +22 -0
  3. package/assets/oauth-templates/callback-success.html +99 -0
  4. package/assets/oauth-templates/logo.html +91 -0
  5. package/assets/oauth-templates/styles.html +110 -0
  6. package/config.example.yaml +149 -0
  7. package/config.oauth.example.yaml +45 -0
  8. package/dist/cli.d.ts +59 -12
  9. package/dist/cli.d.ts.map +1 -1
  10. package/dist/cli.js +131 -61
  11. package/dist/cli.js.map +1 -1
  12. package/dist/config/env-config.d.ts +33 -0
  13. package/dist/config/env-config.d.ts.map +1 -0
  14. package/dist/config/env-config.js +478 -0
  15. package/dist/config/env-config.js.map +1 -0
  16. package/dist/config/index.d.ts +31 -0
  17. package/dist/config/index.d.ts.map +1 -0
  18. package/dist/config/index.js +76 -0
  19. package/dist/config/index.js.map +1 -0
  20. package/dist/config/interpolation.d.ts +9 -0
  21. package/dist/config/interpolation.d.ts.map +1 -0
  22. package/dist/config/interpolation.js +51 -0
  23. package/dist/config/interpolation.js.map +1 -0
  24. package/dist/config/models.d.ts +399 -0
  25. package/dist/config/models.d.ts.map +1 -0
  26. package/dist/config/models.js +406 -0
  27. package/dist/config/models.js.map +1 -0
  28. package/dist/config/validation.d.ts +9 -0
  29. package/dist/config/validation.d.ts.map +1 -0
  30. package/dist/config/validation.js +46 -0
  31. package/dist/config/validation.js.map +1 -0
  32. package/dist/confluent/base-client-manager.d.ts +133 -0
  33. package/dist/confluent/base-client-manager.d.ts.map +1 -0
  34. package/dist/confluent/base-client-manager.js +188 -0
  35. package/dist/confluent/base-client-manager.js.map +1 -0
  36. package/dist/confluent/client-manager.d.ts +42 -77
  37. package/dist/confluent/client-manager.d.ts.map +1 -1
  38. package/dist/confluent/client-manager.js +5 -213
  39. package/dist/confluent/client-manager.js.map +1 -1
  40. package/dist/confluent/config-telemetry.d.ts +41 -0
  41. package/dist/confluent/config-telemetry.d.ts.map +1 -0
  42. package/dist/confluent/config-telemetry.js +17 -0
  43. package/dist/confluent/config-telemetry.js.map +1 -0
  44. package/dist/confluent/direct-client-manager.d.ts +43 -0
  45. package/dist/confluent/direct-client-manager.d.ts.map +1 -0
  46. package/dist/confluent/direct-client-manager.js +154 -0
  47. package/dist/confluent/direct-client-manager.js.map +1 -0
  48. package/dist/confluent/middleware.d.ts +32 -4
  49. package/dist/confluent/middleware.d.ts.map +1 -1
  50. package/dist/confluent/middleware.js +46 -2
  51. package/dist/confluent/middleware.js.map +1 -1
  52. package/dist/confluent/node-deps.d.ts +33 -39
  53. package/dist/confluent/node-deps.d.ts.map +1 -1
  54. package/dist/confluent/node-deps.js +48 -7
  55. package/dist/confluent/node-deps.js.map +1 -1
  56. package/dist/confluent/oauth/auth-context.d.ts +94 -0
  57. package/dist/confluent/oauth/auth-context.d.ts.map +1 -0
  58. package/dist/confluent/oauth/auth-context.js +323 -0
  59. package/dist/confluent/oauth/auth-context.js.map +1 -0
  60. package/dist/confluent/oauth/auth0-config.d.ts +12 -0
  61. package/dist/confluent/oauth/auth0-config.d.ts.map +1 -0
  62. package/dist/confluent/oauth/auth0-config.js +43 -0
  63. package/dist/confluent/oauth/auth0-config.js.map +1 -0
  64. package/dist/confluent/oauth/callback-pages.d.ts +13 -0
  65. package/dist/confluent/oauth/callback-pages.d.ts.map +1 -0
  66. package/dist/confluent/oauth/callback-pages.js +47 -0
  67. package/dist/confluent/oauth/callback-pages.js.map +1 -0
  68. package/dist/confluent/oauth/crypto-utils.d.ts +16 -0
  69. package/dist/confluent/oauth/crypto-utils.d.ts.map +1 -0
  70. package/dist/confluent/oauth/crypto-utils.js +23 -0
  71. package/dist/confluent/oauth/crypto-utils.js.map +1 -0
  72. package/dist/confluent/oauth/errors.d.ts +27 -0
  73. package/dist/confluent/oauth/errors.d.ts.map +1 -0
  74. package/dist/confluent/oauth/errors.js +6 -0
  75. package/dist/confluent/oauth/errors.js.map +1 -0
  76. package/dist/confluent/oauth/oauth-holder.d.ts +34 -0
  77. package/dist/confluent/oauth/oauth-holder.d.ts.map +1 -0
  78. package/dist/confluent/oauth/oauth-holder.js +155 -0
  79. package/dist/confluent/oauth/oauth-holder.js.map +1 -0
  80. package/dist/confluent/oauth/pkce-login.d.ts +45 -0
  81. package/dist/confluent/oauth/pkce-login.d.ts.map +1 -0
  82. package/dist/confluent/oauth/pkce-login.js +270 -0
  83. package/dist/confluent/oauth/pkce-login.js.map +1 -0
  84. package/dist/confluent/oauth/token-chain.d.ts +53 -0
  85. package/dist/confluent/oauth/token-chain.d.ts.map +1 -0
  86. package/dist/confluent/oauth/token-chain.js +141 -0
  87. package/dist/confluent/oauth/token-chain.js.map +1 -0
  88. package/dist/confluent/oauth/token-lifetimes.d.ts +13 -0
  89. package/dist/confluent/oauth/token-lifetimes.d.ts.map +1 -0
  90. package/dist/confluent/oauth/token-lifetimes.js +13 -0
  91. package/dist/confluent/oauth/token-lifetimes.js.map +1 -0
  92. package/dist/confluent/oauth/types.d.ts +68 -0
  93. package/dist/confluent/oauth/types.d.ts.map +1 -0
  94. package/dist/confluent/oauth/types.js +2 -0
  95. package/dist/confluent/oauth/types.js.map +1 -0
  96. package/dist/confluent/oauth-client-manager.d.ts +78 -0
  97. package/dist/confluent/oauth-client-manager.d.ts.map +1 -0
  98. package/dist/confluent/oauth-client-manager.js +265 -0
  99. package/dist/confluent/oauth-client-manager.js.map +1 -0
  100. package/dist/confluent/oauth-resource-resolvers.d.ts +6 -0
  101. package/dist/confluent/oauth-resource-resolvers.d.ts.map +1 -0
  102. package/dist/confluent/oauth-resource-resolvers.js +65 -0
  103. package/dist/confluent/oauth-resource-resolvers.js.map +1 -0
  104. package/dist/confluent/schema-registry-helper.d.ts +5 -9
  105. package/dist/confluent/schema-registry-helper.d.ts.map +1 -1
  106. package/dist/confluent/schema-registry-helper.js +1 -9
  107. package/dist/confluent/schema-registry-helper.js.map +1 -1
  108. package/dist/confluent/telemetry.d.ts +38 -1
  109. package/dist/confluent/telemetry.d.ts.map +1 -1
  110. package/dist/confluent/telemetry.js +37 -8
  111. package/dist/confluent/telemetry.js.map +1 -1
  112. package/dist/confluent/tools/base-tools.d.ts +140 -23
  113. package/dist/confluent/tools/base-tools.d.ts.map +1 -1
  114. package/dist/confluent/tools/base-tools.js +98 -4
  115. package/dist/confluent/tools/base-tools.js.map +1 -1
  116. package/dist/confluent/tools/cluster-arg-resolvers.d.ts +75 -0
  117. package/dist/confluent/tools/cluster-arg-resolvers.d.ts.map +1 -0
  118. package/dist/confluent/tools/cluster-arg-resolvers.js +127 -0
  119. package/dist/confluent/tools/cluster-arg-resolvers.js.map +1 -0
  120. package/dist/confluent/tools/connection-predicates.d.ts +176 -0
  121. package/dist/confluent/tools/connection-predicates.d.ts.map +1 -0
  122. package/dist/confluent/tools/connection-predicates.js +284 -0
  123. package/dist/confluent/tools/connection-predicates.js.map +1 -0
  124. package/dist/confluent/tools/handlers/billing/list-billing-costs-handler.d.ts +5 -6
  125. package/dist/confluent/tools/handlers/billing/list-billing-costs-handler.d.ts.map +1 -1
  126. package/dist/confluent/tools/handlers/billing/list-billing-costs-handler.js +40 -11
  127. package/dist/confluent/tools/handlers/billing/list-billing-costs-handler.js.map +1 -1
  128. package/dist/confluent/tools/handlers/catalog/add-tags-to-topic.d.ts +6 -6
  129. package/dist/confluent/tools/handlers/catalog/add-tags-to-topic.d.ts.map +1 -1
  130. package/dist/confluent/tools/handlers/catalog/add-tags-to-topic.js +6 -9
  131. package/dist/confluent/tools/handlers/catalog/add-tags-to-topic.js.map +1 -1
  132. package/dist/confluent/tools/handlers/catalog/create-topic-tags.d.ts +6 -6
  133. package/dist/confluent/tools/handlers/catalog/create-topic-tags.d.ts.map +1 -1
  134. package/dist/confluent/tools/handlers/catalog/create-topic-tags.js +6 -9
  135. package/dist/confluent/tools/handlers/catalog/create-topic-tags.js.map +1 -1
  136. package/dist/confluent/tools/handlers/catalog/delete-tag.d.ts +6 -6
  137. package/dist/confluent/tools/handlers/catalog/delete-tag.d.ts.map +1 -1
  138. package/dist/confluent/tools/handlers/catalog/delete-tag.js +6 -9
  139. package/dist/confluent/tools/handlers/catalog/delete-tag.js.map +1 -1
  140. package/dist/confluent/tools/handlers/catalog/list-tags.d.ts +6 -6
  141. package/dist/confluent/tools/handlers/catalog/list-tags.d.ts.map +1 -1
  142. package/dist/confluent/tools/handlers/catalog/list-tags.js +6 -9
  143. package/dist/confluent/tools/handlers/catalog/list-tags.js.map +1 -1
  144. package/dist/confluent/tools/handlers/catalog/remove-tag-from-entity.d.ts +6 -6
  145. package/dist/confluent/tools/handlers/catalog/remove-tag-from-entity.d.ts.map +1 -1
  146. package/dist/confluent/tools/handlers/catalog/remove-tag-from-entity.js +6 -9
  147. package/dist/confluent/tools/handlers/catalog/remove-tag-from-entity.js.map +1 -1
  148. package/dist/confluent/tools/handlers/clusters/list-clusters-handler.d.ts +5 -6
  149. package/dist/confluent/tools/handlers/clusters/list-clusters-handler.d.ts.map +1 -1
  150. package/dist/confluent/tools/handlers/clusters/list-clusters-handler.js +11 -13
  151. package/dist/confluent/tools/handlers/clusters/list-clusters-handler.js.map +1 -1
  152. package/dist/confluent/tools/handlers/connect/connect-tool-handler.d.ts +34 -0
  153. package/dist/confluent/tools/handlers/connect/connect-tool-handler.d.ts.map +1 -0
  154. package/dist/confluent/tools/handlers/connect/connect-tool-handler.js +47 -0
  155. package/dist/confluent/tools/handlers/connect/connect-tool-handler.js.map +1 -0
  156. package/dist/confluent/tools/handlers/connect/create-connector-handler.d.ts +11 -7
  157. package/dist/confluent/tools/handlers/connect/create-connector-handler.d.ts.map +1 -1
  158. package/dist/confluent/tools/handlers/connect/create-connector-handler.js +21 -21
  159. package/dist/confluent/tools/handlers/connect/create-connector-handler.js.map +1 -1
  160. package/dist/confluent/tools/handlers/connect/delete-connector-handler.d.ts +6 -7
  161. package/dist/confluent/tools/handlers/connect/delete-connector-handler.d.ts.map +1 -1
  162. package/dist/confluent/tools/handlers/connect/delete-connector-handler.js +10 -15
  163. package/dist/confluent/tools/handlers/connect/delete-connector-handler.js.map +1 -1
  164. package/dist/confluent/tools/handlers/connect/get-connector-config-handler.d.ts +9 -0
  165. package/dist/confluent/tools/handlers/connect/get-connector-config-handler.d.ts.map +1 -0
  166. package/dist/confluent/tools/handlers/connect/get-connector-config-handler.js +35 -0
  167. package/dist/confluent/tools/handlers/connect/get-connector-config-handler.js.map +1 -0
  168. package/dist/confluent/tools/handlers/connect/get-connector-error-recommendations-handler.d.ts +9 -0
  169. package/dist/confluent/tools/handlers/connect/get-connector-error-recommendations-handler.d.ts.map +1 -0
  170. package/dist/confluent/tools/handlers/connect/get-connector-error-recommendations-handler.js +66 -0
  171. package/dist/confluent/tools/handlers/connect/get-connector-error-recommendations-handler.js.map +1 -0
  172. package/dist/confluent/tools/handlers/connect/get-connector-error-summary-handler.d.ts +9 -0
  173. package/dist/confluent/tools/handlers/connect/get-connector-error-summary-handler.d.ts.map +1 -0
  174. package/dist/confluent/tools/handlers/connect/get-connector-error-summary-handler.js +131 -0
  175. package/dist/confluent/tools/handlers/connect/get-connector-error-summary-handler.js.map +1 -0
  176. package/dist/confluent/tools/handlers/connect/get-connector-logs-handler.d.ts +9 -0
  177. package/dist/confluent/tools/handlers/connect/get-connector-logs-handler.d.ts.map +1 -0
  178. package/dist/confluent/tools/handlers/connect/get-connector-logs-handler.js +244 -0
  179. package/dist/confluent/tools/handlers/connect/get-connector-logs-handler.js.map +1 -0
  180. package/dist/confluent/tools/handlers/connect/get-connector-offsets-handler.d.ts +9 -0
  181. package/dist/confluent/tools/handlers/connect/get-connector-offsets-handler.d.ts.map +1 -0
  182. package/dist/confluent/tools/handlers/connect/get-connector-offsets-handler.js +35 -0
  183. package/dist/confluent/tools/handlers/connect/get-connector-offsets-handler.js.map +1 -0
  184. package/dist/confluent/tools/handlers/connect/get-connector-status-handler.d.ts +9 -0
  185. package/dist/confluent/tools/handlers/connect/get-connector-status-handler.d.ts.map +1 -0
  186. package/dist/confluent/tools/handlers/connect/get-connector-status-handler.js +44 -0
  187. package/dist/confluent/tools/handlers/connect/get-connector-status-handler.js.map +1 -0
  188. package/dist/confluent/tools/handlers/connect/get-connector-tasks-handler.d.ts +9 -0
  189. package/dist/confluent/tools/handlers/connect/get-connector-tasks-handler.d.ts.map +1 -0
  190. package/dist/confluent/tools/handlers/connect/get-connector-tasks-handler.js +35 -0
  191. package/dist/confluent/tools/handlers/connect/get-connector-tasks-handler.js.map +1 -0
  192. package/dist/confluent/tools/handlers/connect/list-connectors-handler.d.ts +6 -7
  193. package/dist/confluent/tools/handlers/connect/list-connectors-handler.d.ts.map +1 -1
  194. package/dist/confluent/tools/handlers/connect/list-connectors-handler.js +15 -17
  195. package/dist/confluent/tools/handlers/connect/list-connectors-handler.js.map +1 -1
  196. package/dist/confluent/tools/handlers/connect/pause-connector-handler.d.ts +9 -0
  197. package/dist/confluent/tools/handlers/connect/pause-connector-handler.d.ts.map +1 -0
  198. package/dist/confluent/tools/handlers/connect/pause-connector-handler.js +35 -0
  199. package/dist/confluent/tools/handlers/connect/pause-connector-handler.js.map +1 -0
  200. package/dist/confluent/tools/handlers/connect/restart-connector-handler.d.ts +9 -0
  201. package/dist/confluent/tools/handlers/connect/restart-connector-handler.d.ts.map +1 -0
  202. package/dist/confluent/tools/handlers/connect/restart-connector-handler.js +35 -0
  203. package/dist/confluent/tools/handlers/connect/restart-connector-handler.js.map +1 -0
  204. package/dist/confluent/tools/handlers/connect/resume-connector-handler.d.ts +9 -0
  205. package/dist/confluent/tools/handlers/connect/resume-connector-handler.d.ts.map +1 -0
  206. package/dist/confluent/tools/handlers/connect/resume-connector-handler.js +35 -0
  207. package/dist/confluent/tools/handlers/connect/resume-connector-handler.js.map +1 -0
  208. package/dist/confluent/tools/handlers/connect/update-connector-config-handler.d.ts +9 -0
  209. package/dist/confluent/tools/handlers/connect/update-connector-config-handler.d.ts.map +1 -0
  210. package/dist/confluent/tools/handlers/connect/update-connector-config-handler.js +44 -0
  211. package/dist/confluent/tools/handlers/connect/update-connector-config-handler.js.map +1 -0
  212. package/dist/confluent/tools/handlers/diagnostics/explain-disabled-tools-handler.d.ts +58 -0
  213. package/dist/confluent/tools/handlers/diagnostics/explain-disabled-tools-handler.d.ts.map +1 -0
  214. package/dist/confluent/tools/handlers/diagnostics/explain-disabled-tools-handler.js +135 -0
  215. package/dist/confluent/tools/handlers/diagnostics/explain-disabled-tools-handler.js.map +1 -0
  216. package/dist/confluent/tools/handlers/docs/get-product-doc-page-handler.d.ts +18 -0
  217. package/dist/confluent/tools/handlers/docs/get-product-doc-page-handler.d.ts.map +1 -0
  218. package/dist/confluent/tools/handlers/docs/get-product-doc-page-handler.js +235 -0
  219. package/dist/confluent/tools/handlers/docs/get-product-doc-page-handler.js.map +1 -0
  220. package/dist/confluent/tools/handlers/docs/search-product-docs-handler.d.ts +14 -0
  221. package/dist/confluent/tools/handlers/docs/search-product-docs-handler.d.ts.map +1 -0
  222. package/dist/confluent/tools/handlers/docs/search-product-docs-handler.js +286 -0
  223. package/dist/confluent/tools/handlers/docs/search-product-docs-handler.js.map +1 -0
  224. package/dist/confluent/tools/handlers/environments/list-environments-handler.d.ts +11 -12
  225. package/dist/confluent/tools/handlers/environments/list-environments-handler.d.ts.map +1 -1
  226. package/dist/confluent/tools/handlers/environments/list-environments-handler.js +11 -14
  227. package/dist/confluent/tools/handlers/environments/list-environments-handler.js.map +1 -1
  228. package/dist/confluent/tools/handlers/environments/read-environment-handler.d.ts +5 -6
  229. package/dist/confluent/tools/handlers/environments/read-environment-handler.d.ts.map +1 -1
  230. package/dist/confluent/tools/handlers/environments/read-environment-handler.js +6 -9
  231. package/dist/confluent/tools/handlers/environments/read-environment-handler.js.map +1 -1
  232. package/dist/confluent/tools/handlers/flink/catalog/catalog-resolver.d.ts +32 -11
  233. package/dist/confluent/tools/handlers/flink/catalog/catalog-resolver.d.ts.map +1 -1
  234. package/dist/confluent/tools/handlers/flink/catalog/catalog-resolver.js +22 -16
  235. package/dist/confluent/tools/handlers/flink/catalog/catalog-resolver.js.map +1 -1
  236. package/dist/confluent/tools/handlers/flink/catalog/describe-table-handler.d.ts +5 -7
  237. package/dist/confluent/tools/handlers/flink/catalog/describe-table-handler.d.ts.map +1 -1
  238. package/dist/confluent/tools/handlers/flink/catalog/describe-table-handler.js +34 -30
  239. package/dist/confluent/tools/handlers/flink/catalog/describe-table-handler.js.map +1 -1
  240. package/dist/confluent/tools/handlers/flink/catalog/flink-catalog-tool-handler.d.ts +14 -0
  241. package/dist/confluent/tools/handlers/flink/catalog/flink-catalog-tool-handler.d.ts.map +1 -0
  242. package/dist/confluent/tools/handlers/flink/catalog/flink-catalog-tool-handler.js +15 -0
  243. package/dist/confluent/tools/handlers/flink/catalog/flink-catalog-tool-handler.js.map +1 -0
  244. package/dist/confluent/tools/handlers/flink/catalog/get-table-info-handler.d.ts +5 -7
  245. package/dist/confluent/tools/handlers/flink/catalog/get-table-info-handler.d.ts.map +1 -1
  246. package/dist/confluent/tools/handlers/flink/catalog/get-table-info-handler.js +34 -30
  247. package/dist/confluent/tools/handlers/flink/catalog/get-table-info-handler.js.map +1 -1
  248. package/dist/confluent/tools/handlers/flink/catalog/list-catalogs-handler.d.ts +5 -7
  249. package/dist/confluent/tools/handlers/flink/catalog/list-catalogs-handler.d.ts.map +1 -1
  250. package/dist/confluent/tools/handlers/flink/catalog/list-catalogs-handler.js +21 -24
  251. package/dist/confluent/tools/handlers/flink/catalog/list-catalogs-handler.js.map +1 -1
  252. package/dist/confluent/tools/handlers/flink/catalog/list-databases-handler.d.ts +5 -7
  253. package/dist/confluent/tools/handlers/flink/catalog/list-databases-handler.d.ts.map +1 -1
  254. package/dist/confluent/tools/handlers/flink/catalog/list-databases-handler.js +21 -24
  255. package/dist/confluent/tools/handlers/flink/catalog/list-databases-handler.js.map +1 -1
  256. package/dist/confluent/tools/handlers/flink/catalog/list-tables-handler.d.ts +5 -7
  257. package/dist/confluent/tools/handlers/flink/catalog/list-tables-handler.d.ts.map +1 -1
  258. package/dist/confluent/tools/handlers/flink/catalog/list-tables-handler.js +22 -33
  259. package/dist/confluent/tools/handlers/flink/catalog/list-tables-handler.js.map +1 -1
  260. package/dist/confluent/tools/handlers/flink/create-flink-statement-handler.d.ts +5 -7
  261. package/dist/confluent/tools/handlers/flink/create-flink-statement-handler.d.ts.map +1 -1
  262. package/dist/confluent/tools/handlers/flink/create-flink-statement-handler.js +18 -23
  263. package/dist/confluent/tools/handlers/flink/create-flink-statement-handler.js.map +1 -1
  264. package/dist/confluent/tools/handlers/flink/delete-flink-statement-handler.d.ts +5 -7
  265. package/dist/confluent/tools/handlers/flink/delete-flink-statement-handler.d.ts.map +1 -1
  266. package/dist/confluent/tools/handlers/flink/delete-flink-statement-handler.js +7 -13
  267. package/dist/confluent/tools/handlers/flink/delete-flink-statement-handler.js.map +1 -1
  268. package/dist/confluent/tools/handlers/flink/diagnostics/check-health-handler.d.ts +5 -7
  269. package/dist/confluent/tools/handlers/flink/diagnostics/check-health-handler.d.ts.map +1 -1
  270. package/dist/confluent/tools/handlers/flink/diagnostics/check-health-handler.js +7 -13
  271. package/dist/confluent/tools/handlers/flink/diagnostics/check-health-handler.js.map +1 -1
  272. package/dist/confluent/tools/handlers/flink/diagnostics/detect-issues-handler.d.ts +5 -7
  273. package/dist/confluent/tools/handlers/flink/diagnostics/detect-issues-handler.d.ts.map +1 -1
  274. package/dist/confluent/tools/handlers/flink/diagnostics/detect-issues-handler.js +8 -15
  275. package/dist/confluent/tools/handlers/flink/diagnostics/detect-issues-handler.js.map +1 -1
  276. package/dist/confluent/tools/handlers/flink/diagnostics/metrics-helper.d.ts +2 -2
  277. package/dist/confluent/tools/handlers/flink/diagnostics/metrics-helper.d.ts.map +1 -1
  278. package/dist/confluent/tools/handlers/flink/diagnostics/metrics-helper.js.map +1 -1
  279. package/dist/confluent/tools/handlers/flink/diagnostics/query-profiler-handler.d.ts +7 -7
  280. package/dist/confluent/tools/handlers/flink/diagnostics/query-profiler-handler.d.ts.map +1 -1
  281. package/dist/confluent/tools/handlers/flink/diagnostics/query-profiler-handler.js +11 -17
  282. package/dist/confluent/tools/handlers/flink/diagnostics/query-profiler-handler.js.map +1 -1
  283. package/dist/confluent/tools/handlers/flink/flink-sql-helper.d.ts +15 -2
  284. package/dist/confluent/tools/handlers/flink/flink-sql-helper.d.ts.map +1 -1
  285. package/dist/confluent/tools/handlers/flink/flink-sql-helper.js.map +1 -1
  286. package/dist/confluent/tools/handlers/flink/flink-tool-handler.d.ts +22 -0
  287. package/dist/confluent/tools/handlers/flink/flink-tool-handler.d.ts.map +1 -0
  288. package/dist/confluent/tools/handlers/flink/flink-tool-handler.js +32 -0
  289. package/dist/confluent/tools/handlers/flink/flink-tool-handler.js.map +1 -0
  290. package/dist/confluent/tools/handlers/flink/get-flink-exceptions-handler.d.ts +5 -7
  291. package/dist/confluent/tools/handlers/flink/get-flink-exceptions-handler.d.ts.map +1 -1
  292. package/dist/confluent/tools/handlers/flink/get-flink-exceptions-handler.js +7 -13
  293. package/dist/confluent/tools/handlers/flink/get-flink-exceptions-handler.js.map +1 -1
  294. package/dist/confluent/tools/handlers/flink/list-flink-statements-handler.d.ts +5 -7
  295. package/dist/confluent/tools/handlers/flink/list-flink-statements-handler.d.ts.map +1 -1
  296. package/dist/confluent/tools/handlers/flink/list-flink-statements-handler.js +9 -17
  297. package/dist/confluent/tools/handlers/flink/list-flink-statements-handler.js.map +1 -1
  298. package/dist/confluent/tools/handlers/flink/read-flink-statement-handler.d.ts +5 -7
  299. package/dist/confluent/tools/handlers/flink/read-flink-statement-handler.d.ts.map +1 -1
  300. package/dist/confluent/tools/handlers/flink/read-flink-statement-handler.js +7 -13
  301. package/dist/confluent/tools/handlers/flink/read-flink-statement-handler.js.map +1 -1
  302. package/dist/confluent/tools/handlers/kafka/alter-topic-config.d.ts +5 -6
  303. package/dist/confluent/tools/handlers/kafka/alter-topic-config.d.ts.map +1 -1
  304. package/dist/confluent/tools/handlers/kafka/alter-topic-config.js +22 -20
  305. package/dist/confluent/tools/handlers/kafka/alter-topic-config.js.map +1 -1
  306. package/dist/confluent/tools/handlers/kafka/consume-kafka-messages-handler.d.ts +216 -30
  307. package/dist/confluent/tools/handlers/kafka/consume-kafka-messages-handler.d.ts.map +1 -1
  308. package/dist/confluent/tools/handlers/kafka/consume-kafka-messages-handler.js +797 -70
  309. package/dist/confluent/tools/handlers/kafka/consume-kafka-messages-handler.js.map +1 -1
  310. package/dist/confluent/tools/handlers/kafka/consumer-group-enums.d.ts +48 -0
  311. package/dist/confluent/tools/handlers/kafka/consumer-group-enums.d.ts.map +1 -0
  312. package/dist/confluent/tools/handlers/kafka/consumer-group-enums.js +84 -0
  313. package/dist/confluent/tools/handlers/kafka/consumer-group-enums.js.map +1 -0
  314. package/dist/confluent/tools/handlers/kafka/consumer-group-helpers.d.ts +54 -0
  315. package/dist/confluent/tools/handlers/kafka/consumer-group-helpers.d.ts.map +1 -0
  316. package/dist/confluent/tools/handlers/kafka/consumer-group-helpers.js +89 -0
  317. package/dist/confluent/tools/handlers/kafka/consumer-group-helpers.js.map +1 -0
  318. package/dist/confluent/tools/handlers/kafka/create-topics-handler.d.ts +5 -5
  319. package/dist/confluent/tools/handlers/kafka/create-topics-handler.d.ts.map +1 -1
  320. package/dist/confluent/tools/handlers/kafka/create-topics-handler.js +52 -15
  321. package/dist/confluent/tools/handlers/kafka/create-topics-handler.js.map +1 -1
  322. package/dist/confluent/tools/handlers/kafka/delete-topics-handler.d.ts +5 -5
  323. package/dist/confluent/tools/handlers/kafka/delete-topics-handler.d.ts.map +1 -1
  324. package/dist/confluent/tools/handlers/kafka/delete-topics-handler.js +26 -8
  325. package/dist/confluent/tools/handlers/kafka/delete-topics-handler.js.map +1 -1
  326. package/dist/confluent/tools/handlers/kafka/describe-consumer-group-handler.d.ts +64 -0
  327. package/dist/confluent/tools/handlers/kafka/describe-consumer-group-handler.d.ts.map +1 -0
  328. package/dist/confluent/tools/handlers/kafka/describe-consumer-group-handler.js +140 -0
  329. package/dist/confluent/tools/handlers/kafka/describe-consumer-group-handler.js.map +1 -0
  330. package/dist/confluent/tools/handlers/kafka/get-consumer-group-lag-handler.d.ts +73 -0
  331. package/dist/confluent/tools/handlers/kafka/get-consumer-group-lag-handler.d.ts.map +1 -0
  332. package/dist/confluent/tools/handlers/kafka/get-consumer-group-lag-handler.js +337 -0
  333. package/dist/confluent/tools/handlers/kafka/get-consumer-group-lag-handler.js.map +1 -0
  334. package/dist/confluent/tools/handlers/kafka/get-partition-offsets-handler.d.ts +43 -0
  335. package/dist/confluent/tools/handlers/kafka/get-partition-offsets-handler.d.ts.map +1 -0
  336. package/dist/confluent/tools/handlers/kafka/get-partition-offsets-handler.js +123 -0
  337. package/dist/confluent/tools/handlers/kafka/get-partition-offsets-handler.js.map +1 -0
  338. package/dist/confluent/tools/handlers/kafka/get-topic-config.d.ts +5 -6
  339. package/dist/confluent/tools/handlers/kafka/get-topic-config.d.ts.map +1 -1
  340. package/dist/confluent/tools/handlers/kafka/get-topic-config.js +22 -20
  341. package/dist/confluent/tools/handlers/kafka/get-topic-config.js.map +1 -1
  342. package/dist/confluent/tools/handlers/kafka/list-consumer-groups-handler.d.ts +45 -0
  343. package/dist/confluent/tools/handlers/kafka/list-consumer-groups-handler.d.ts.map +1 -0
  344. package/dist/confluent/tools/handlers/kafka/list-consumer-groups-handler.js +86 -0
  345. package/dist/confluent/tools/handlers/kafka/list-consumer-groups-handler.js.map +1 -0
  346. package/dist/confluent/tools/handlers/kafka/list-topics-handler.d.ts +5 -5
  347. package/dist/confluent/tools/handlers/kafka/list-topics-handler.d.ts.map +1 -1
  348. package/dist/confluent/tools/handlers/kafka/list-topics-handler.js +25 -10
  349. package/dist/confluent/tools/handlers/kafka/list-topics-handler.js.map +1 -1
  350. package/dist/confluent/tools/handlers/kafka/partition-watermarks.d.ts +54 -0
  351. package/dist/confluent/tools/handlers/kafka/partition-watermarks.d.ts.map +1 -0
  352. package/dist/confluent/tools/handlers/kafka/partition-watermarks.js +56 -0
  353. package/dist/confluent/tools/handlers/kafka/partition-watermarks.js.map +1 -0
  354. package/dist/confluent/tools/handlers/kafka/produce-kafka-message-handler.d.ts +8 -8
  355. package/dist/confluent/tools/handlers/kafka/produce-kafka-message-handler.d.ts.map +1 -1
  356. package/dist/confluent/tools/handlers/kafka/produce-kafka-message-handler.js +57 -46
  357. package/dist/confluent/tools/handlers/kafka/produce-kafka-message-handler.js.map +1 -1
  358. package/dist/confluent/tools/handlers/kafka/topic-metadata.d.ts +18 -0
  359. package/dist/confluent/tools/handlers/kafka/topic-metadata.d.ts.map +1 -0
  360. package/dist/confluent/tools/handlers/kafka/topic-metadata.js +18 -0
  361. package/dist/confluent/tools/handlers/kafka/topic-metadata.js.map +1 -0
  362. package/dist/confluent/tools/handlers/metrics/list-metrics-handler.d.ts +6 -6
  363. package/dist/confluent/tools/handlers/metrics/list-metrics-handler.d.ts.map +1 -1
  364. package/dist/confluent/tools/handlers/metrics/list-metrics-handler.js +6 -9
  365. package/dist/confluent/tools/handlers/metrics/list-metrics-handler.js.map +1 -1
  366. package/dist/confluent/tools/handlers/metrics/query-metrics-handler.d.ts +24 -6
  367. package/dist/confluent/tools/handlers/metrics/query-metrics-handler.d.ts.map +1 -1
  368. package/dist/confluent/tools/handlers/metrics/query-metrics-handler.js +88 -53
  369. package/dist/confluent/tools/handlers/metrics/query-metrics-handler.js.map +1 -1
  370. package/dist/confluent/tools/handlers/organizations/list-organizations-handler.d.ts +50 -0
  371. package/dist/confluent/tools/handlers/organizations/list-organizations-handler.d.ts.map +1 -0
  372. package/dist/confluent/tools/handlers/organizations/list-organizations-handler.js +116 -0
  373. package/dist/confluent/tools/handlers/organizations/list-organizations-handler.js.map +1 -0
  374. package/dist/confluent/tools/handlers/schema/delete-schema-handler.d.ts +5 -5
  375. package/dist/confluent/tools/handlers/schema/delete-schema-handler.d.ts.map +1 -1
  376. package/dist/confluent/tools/handlers/schema/delete-schema-handler.js +13 -8
  377. package/dist/confluent/tools/handlers/schema/delete-schema-handler.js.map +1 -1
  378. package/dist/confluent/tools/handlers/schema/list-schemas-handler.d.ts +5 -5
  379. package/dist/confluent/tools/handlers/schema/list-schemas-handler.d.ts.map +1 -1
  380. package/dist/confluent/tools/handlers/schema/list-schemas-handler.js +13 -7
  381. package/dist/confluent/tools/handlers/schema/list-schemas-handler.js.map +1 -1
  382. package/dist/confluent/tools/handlers/search/search-topic-by-tag-handler.d.ts +6 -6
  383. package/dist/confluent/tools/handlers/search/search-topic-by-tag-handler.d.ts.map +1 -1
  384. package/dist/confluent/tools/handlers/search/search-topic-by-tag-handler.js +6 -9
  385. package/dist/confluent/tools/handlers/search/search-topic-by-tag-handler.js.map +1 -1
  386. package/dist/confluent/tools/handlers/search/search-topics-by-name-handler.d.ts +6 -6
  387. package/dist/confluent/tools/handlers/search/search-topics-by-name-handler.d.ts.map +1 -1
  388. package/dist/confluent/tools/handlers/search/search-topics-by-name-handler.js +6 -9
  389. package/dist/confluent/tools/handlers/search/search-topics-by-name-handler.js.map +1 -1
  390. package/dist/confluent/tools/handlers/tableflow/catalog/create-tableflow-catalog-integration-handler.d.ts +5 -7
  391. package/dist/confluent/tools/handlers/tableflow/catalog/create-tableflow-catalog-integration-handler.d.ts.map +1 -1
  392. package/dist/confluent/tools/handlers/tableflow/catalog/create-tableflow-catalog-integration-handler.js +17 -13
  393. package/dist/confluent/tools/handlers/tableflow/catalog/create-tableflow-catalog-integration-handler.js.map +1 -1
  394. package/dist/confluent/tools/handlers/tableflow/catalog/delete-tableflow-catalog-integration-handler.d.ts +5 -7
  395. package/dist/confluent/tools/handlers/tableflow/catalog/delete-tableflow-catalog-integration-handler.d.ts.map +1 -1
  396. package/dist/confluent/tools/handlers/tableflow/catalog/delete-tableflow-catalog-integration-handler.js +6 -12
  397. package/dist/confluent/tools/handlers/tableflow/catalog/delete-tableflow-catalog-integration-handler.js.map +1 -1
  398. package/dist/confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-handler.d.ts +5 -7
  399. package/dist/confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-handler.d.ts.map +1 -1
  400. package/dist/confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-handler.js +7 -13
  401. package/dist/confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-handler.js.map +1 -1
  402. package/dist/confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-handler.d.ts +5 -7
  403. package/dist/confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-handler.d.ts.map +1 -1
  404. package/dist/confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-handler.js +6 -12
  405. package/dist/confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-handler.js.map +1 -1
  406. package/dist/confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-handler.d.ts +5 -7
  407. package/dist/confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-handler.d.ts.map +1 -1
  408. package/dist/confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-handler.js +5 -9
  409. package/dist/confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-handler.js.map +1 -1
  410. package/dist/confluent/tools/handlers/tableflow/list-tableflow-regions-handler.d.ts +5 -7
  411. package/dist/confluent/tools/handlers/tableflow/list-tableflow-regions-handler.d.ts.map +1 -1
  412. package/dist/confluent/tools/handlers/tableflow/list-tableflow-regions-handler.js +18 -21
  413. package/dist/confluent/tools/handlers/tableflow/list-tableflow-regions-handler.js.map +1 -1
  414. package/dist/confluent/tools/handlers/tableflow/tableflow-tool-handler.d.ts +26 -0
  415. package/dist/confluent/tools/handlers/tableflow/tableflow-tool-handler.d.ts.map +1 -0
  416. package/dist/confluent/tools/handlers/tableflow/tableflow-tool-handler.js +28 -0
  417. package/dist/confluent/tools/handlers/tableflow/tableflow-tool-handler.js.map +1 -0
  418. package/dist/confluent/tools/handlers/tableflow/topic/create-tableflow-topic-handler.d.ts +5 -7
  419. package/dist/confluent/tools/handlers/tableflow/topic/create-tableflow-topic-handler.d.ts.map +1 -1
  420. package/dist/confluent/tools/handlers/tableflow/topic/create-tableflow-topic-handler.js +17 -13
  421. package/dist/confluent/tools/handlers/tableflow/topic/create-tableflow-topic-handler.js.map +1 -1
  422. package/dist/confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.d.ts +5 -7
  423. package/dist/confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.d.ts.map +1 -1
  424. package/dist/confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.js +6 -12
  425. package/dist/confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.js.map +1 -1
  426. package/dist/confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.d.ts +5 -7
  427. package/dist/confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.d.ts.map +1 -1
  428. package/dist/confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.js +7 -13
  429. package/dist/confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.js.map +1 -1
  430. package/dist/confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.d.ts +5 -7
  431. package/dist/confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.d.ts.map +1 -1
  432. package/dist/confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.js +6 -12
  433. package/dist/confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.js.map +1 -1
  434. package/dist/confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.d.ts +5 -7
  435. package/dist/confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.d.ts.map +1 -1
  436. package/dist/confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.js +5 -9
  437. package/dist/confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.js.map +1 -1
  438. package/dist/confluent/tools/tool-availability.d.ts +91 -0
  439. package/dist/confluent/tools/tool-availability.d.ts.map +1 -0
  440. package/dist/confluent/tools/tool-availability.js +130 -0
  441. package/dist/confluent/tools/tool-availability.js.map +1 -0
  442. package/dist/confluent/tools/tool-name.d.ts +20 -2
  443. package/dist/confluent/tools/tool-name.d.ts.map +1 -1
  444. package/dist/confluent/tools/tool-name.js +19 -1
  445. package/dist/confluent/tools/tool-name.js.map +1 -1
  446. package/dist/confluent/tools/tool-registry.d.ts +17 -0
  447. package/dist/confluent/tools/tool-registry.d.ts.map +1 -0
  448. package/dist/confluent/tools/{tool-factory.js → tool-registry.js} +66 -22
  449. package/dist/confluent/tools/tool-registry.js.map +1 -0
  450. package/dist/env-schema.d.ts +6 -7
  451. package/dist/env-schema.d.ts.map +1 -1
  452. package/dist/env-schema.js +30 -44
  453. package/dist/env-schema.js.map +1 -1
  454. package/dist/env.d.ts +17 -7
  455. package/dist/env.d.ts.map +1 -1
  456. package/dist/env.js +16 -6
  457. package/dist/env.js.map +1 -1
  458. package/dist/index.d.ts +74 -1
  459. package/dist/index.d.ts.map +1 -1
  460. package/dist/index.js +302 -166
  461. package/dist/index.js.map +1 -1
  462. package/dist/logger.d.ts.map +1 -1
  463. package/dist/logger.js +21 -20
  464. package/dist/logger.js.map +1 -1
  465. package/dist/mcp/server.d.ts +29 -0
  466. package/dist/mcp/server.d.ts.map +1 -0
  467. package/dist/mcp/server.js +53 -0
  468. package/dist/mcp/server.js.map +1 -0
  469. package/dist/mcp/transports/auth.d.ts +20 -4
  470. package/dist/mcp/transports/auth.d.ts.map +1 -1
  471. package/dist/mcp/transports/auth.js +27 -7
  472. package/dist/mcp/transports/auth.js.map +1 -1
  473. package/dist/mcp/transports/http.d.ts +8 -2
  474. package/dist/mcp/transports/http.d.ts.map +1 -1
  475. package/dist/mcp/transports/http.js +57 -42
  476. package/dist/mcp/transports/http.js.map +1 -1
  477. package/dist/mcp/transports/manager.d.ts +23 -9
  478. package/dist/mcp/transports/manager.d.ts.map +1 -1
  479. package/dist/mcp/transports/manager.js +27 -24
  480. package/dist/mcp/transports/manager.js.map +1 -1
  481. package/dist/mcp/transports/server.d.ts +1 -1
  482. package/dist/mcp/transports/server.d.ts.map +1 -1
  483. package/dist/mcp/transports/server.js +17 -5
  484. package/dist/mcp/transports/server.js.map +1 -1
  485. package/dist/mcp/transports/session-registry.d.ts +33 -0
  486. package/dist/mcp/transports/session-registry.d.ts.map +1 -0
  487. package/dist/mcp/transports/session-registry.js +65 -0
  488. package/dist/mcp/transports/session-registry.js.map +1 -0
  489. package/dist/mcp/transports/sse.d.ts +13 -2
  490. package/dist/mcp/transports/sse.d.ts.map +1 -1
  491. package/dist/mcp/transports/sse.js +58 -46
  492. package/dist/mcp/transports/sse.js.map +1 -1
  493. package/dist/server-runtime.d.ts +28 -0
  494. package/dist/server-runtime.d.ts.map +1 -0
  495. package/dist/server-runtime.js +73 -0
  496. package/dist/server-runtime.js.map +1 -0
  497. package/package.json +26 -9
  498. package/dist/confluent/helpers.d.ts +0 -11
  499. package/dist/confluent/helpers.d.ts.map +0 -1
  500. package/dist/confluent/helpers.js +0 -17
  501. package/dist/confluent/helpers.js.map +0 -1
  502. package/dist/confluent/tools/handlers/connect/read-connectors-handler.d.ts +0 -11
  503. package/dist/confluent/tools/handlers/connect/read-connectors-handler.d.ts.map +0 -1
  504. package/dist/confluent/tools/handlers/connect/read-connectors-handler.js +0 -59
  505. package/dist/confluent/tools/handlers/connect/read-connectors-handler.js.map +0 -1
  506. package/dist/confluent/tools/tool-factory.d.ts +0 -9
  507. package/dist/confluent/tools/tool-factory.d.ts.map +0 -1
  508. package/dist/confluent/tools/tool-factory.js.map +0 -1
@@ -0,0 +1,284 @@
1
+ // Connection predicates: pure per-connection verdicts on whether a tool
2
+ // should be enabled for a given `ConnectionConfig`. Each predicate returns
3
+ // a `PredicateResult`; on failure the verdict carries a `ToolDisabledReason`
4
+ // so callers can explain why a tool is absent rather than silently dropping
5
+ // it from the catalogue.
6
+ //
7
+ // Tool handlers consume predicates indirectly: each handler declares a
8
+ // `predicate` property referencing one of this file's named exports, and
9
+ // `BaseToolHandler` derives both `enabledConnectionIds()` and
10
+ // `connectionVerdicts()` from it. Handlers must not call `allOf(...)` or
11
+ // `widenForOAuth(...)` at the use site — those combinators are construction
12
+ // tools used here to define new named exports. When adding a new named
13
+ // predicate here: also pin its consumer(s) in the `EXPECTED_PREDICATES`
14
+ // record inside `tool-registry.test.ts`'s `predicate property` block
15
+ // (typed `Readonly<Record<ToolName, ConnectionPredicate>>`, so missing
16
+ // rows fail `tsc` and combinators can't slip in as values) and add
17
+ // per-predicate coverage in `connection-predicates.test.ts`. The handler
18
+ // then sails through the per-tool identity assertion.
19
+ //
20
+ // OAuth note: most predicates short-circuit on `conn.type === "oauth"`
21
+ // and answer disabled — OAuth connections carry no service blocks for these
22
+ // predicates to inspect. Two mechanisms admit OAuth where it's supported:
23
+ // `hasConfluentCloudOrOAuth` answers enabled for OAuth directly (the CCloud
24
+ // REST URL is reachable via the Auth0 environment without a block), and the
25
+ // `widenForOAuth(predicate)` combinator wraps any block-checking predicate
26
+ // so OAuth connections bypass the block check and answer enabled. Use
27
+ // `widenForOAuth` here, when defining a new named composite export, for
28
+ // gates that should admit OAuth.
29
+ export const ENABLED = { enabled: true };
30
+ function disabled(reason) {
31
+ return { enabled: false, reason };
32
+ }
33
+ /**
34
+ * Block-level — required by any tool that needs Kafka access regardless of
35
+ * transport (native client or REST proxy).
36
+ */
37
+ export function hasKafka(conn) {
38
+ if (conn.type === "oauth")
39
+ return disabled(ToolDisabledReason.OAuthNoServiceBlocks);
40
+ if (conn.kafka === undefined)
41
+ return disabled(ToolDisabledReason.MissingKafkaBlock);
42
+ return ENABLED;
43
+ }
44
+ /**
45
+ * Field-level — required by tools that drive the native Kafka
46
+ * admin/producer/consumer client (the broker address lives on
47
+ * `bootstrap_servers`).
48
+ */
49
+ export function hasKafkaBootstrap(conn) {
50
+ if (conn.type === "oauth")
51
+ return disabled(ToolDisabledReason.OAuthNoServiceBlocks);
52
+ if (conn.kafka === undefined)
53
+ return disabled(ToolDisabledReason.MissingKafkaBlock);
54
+ if (conn.kafka.bootstrap_servers === undefined) {
55
+ return disabled(ToolDisabledReason.MissingKafkaBootstrap);
56
+ }
57
+ return ENABLED;
58
+ }
59
+ /**
60
+ * Field-level — required by tools that perform authenticated Kafka calls.
61
+ */
62
+ export function hasKafkaAuth(conn) {
63
+ if (conn.type === "oauth")
64
+ return disabled(ToolDisabledReason.OAuthNoServiceBlocks);
65
+ if (conn.kafka === undefined)
66
+ return disabled(ToolDisabledReason.MissingKafkaBlock);
67
+ if (conn.kafka.auth === undefined)
68
+ return disabled(ToolDisabledReason.MissingKafkaAuth);
69
+ return ENABLED;
70
+ }
71
+ /**
72
+ * Field-level — required by tools that talk to the Kafka REST proxy
73
+ * (`/kafka/v3` endpoints); needs both `rest_endpoint` and `auth` on the
74
+ * `kafka` block.
75
+ */
76
+ export function hasKafkaRestWithAuth(conn) {
77
+ if (conn.type === "oauth")
78
+ return disabled(ToolDisabledReason.OAuthNoServiceBlocks);
79
+ if (conn.kafka === undefined)
80
+ return disabled(ToolDisabledReason.MissingKafkaBlock);
81
+ if (conn.kafka.rest_endpoint === undefined) {
82
+ return disabled(ToolDisabledReason.MissingKafkaRestEndpoint);
83
+ }
84
+ if (conn.kafka.auth === undefined)
85
+ return disabled(ToolDisabledReason.MissingKafkaAuth);
86
+ return ENABLED;
87
+ }
88
+ /**
89
+ * Block-level — required by tools that read or write through the Schema
90
+ * Registry.
91
+ */
92
+ export function hasSchemaRegistry(conn) {
93
+ if (conn.type === "oauth")
94
+ return disabled(ToolDisabledReason.OAuthNoServiceBlocks);
95
+ if (conn.schema_registry === undefined) {
96
+ return disabled(ToolDisabledReason.MissingSchemaRegistryBlock);
97
+ }
98
+ return ENABLED;
99
+ }
100
+ /**
101
+ * Block-level — verdict on whether the connection can reach the Confluent
102
+ * Cloud control-plane REST surface, accepting either flavor. Direct
103
+ * connections satisfy this when they carry a `confluent_cloud` block; OAuth
104
+ * connections satisfy it unconditionally (the cloud REST URL is derived from
105
+ * the Auth0 environment).
106
+ *
107
+ * Pair: {@linkcode hasConfluentCloud} for the direct-only verdict.
108
+ */
109
+ export const hasConfluentCloudOrOAuth = widenForOAuth(hasConfluentCloud);
110
+ /**
111
+ * Block-level — verdict that holds only for direct connections carrying a
112
+ * `confluent_cloud` block. Use this on handlers that are not yet OAuth-capable
113
+ * and call `getSoleDirectConnection()` inside `handle()`. Once a handler
114
+ * widens to OAuth, switch its predicate to
115
+ * {@linkcode hasConfluentCloudOrOAuth}.
116
+ */
117
+ export function hasConfluentCloud(conn) {
118
+ if (conn.type === "oauth")
119
+ return disabled(ToolDisabledReason.OAuthNotDirectCapable);
120
+ if (conn.confluent_cloud === undefined) {
121
+ return disabled(ToolDisabledReason.MissingConfluentCloudBlock);
122
+ }
123
+ return ENABLED;
124
+ }
125
+ /**
126
+ * Block-level — required by tools that drive Flink SQL or its catalog.
127
+ */
128
+ export function hasFlink(conn) {
129
+ if (conn.type === "oauth")
130
+ return disabled(ToolDisabledReason.OAuthNoServiceBlocks);
131
+ if (conn.flink === undefined)
132
+ return disabled(ToolDisabledReason.MissingFlinkBlock);
133
+ return ENABLED;
134
+ }
135
+ /**
136
+ * Block-level — required by tools that read metrics from the Telemetry API.
137
+ */
138
+ export function hasTelemetry(conn) {
139
+ if (conn.type === "oauth")
140
+ return disabled(ToolDisabledReason.OAuthNoServiceBlocks);
141
+ if (conn.telemetry === undefined)
142
+ return disabled(ToolDisabledReason.MissingTelemetryBlock);
143
+ return ENABLED;
144
+ }
145
+ /**
146
+ * Block-level — required by tools that manage Tableflow topics or catalog
147
+ * entries.
148
+ */
149
+ export function hasTableflow(conn) {
150
+ if (conn.type === "oauth")
151
+ return disabled(ToolDisabledReason.OAuthNoServiceBlocks);
152
+ if (conn.tableflow === undefined)
153
+ return disabled(ToolDisabledReason.MissingTableflowBlock);
154
+ return ENABLED;
155
+ }
156
+ /**
157
+ * Field-level — verdict that holds when the connection points at a Confluent
158
+ * Cloud-hosted Schema Registry that exposes the `/catalog/v1/` Stream Catalog
159
+ * endpoints. Requires three signals together:
160
+ * - a `schema_registry` block, AND
161
+ * - `auth.type === "api_key"` on that block, AND
162
+ * - a `confluent_cloud` block (Cloud control-plane creds).
163
+ *
164
+ * The `confluent_cloud` block is required because `auth.type === "api_key"` is
165
+ * ambiguous on its own: a self-managed Confluent Platform deployment with HTTP
166
+ * Basic Auth in front of its SR also models as `auth.type === "api_key"` in
167
+ * the YAML schema, even though that SR does not serve `/catalog/v1/`. Without
168
+ * the `confluent_cloud` requirement, this predicate would over-enable Stream
169
+ * Catalog tools on CP deployments and they would 404 at runtime.
170
+ */
171
+ export function hasCCloudCatalogSupport(conn) {
172
+ if (conn.type === "oauth")
173
+ return disabled(ToolDisabledReason.OAuthNoServiceBlocks);
174
+ if (conn.schema_registry === undefined) {
175
+ return disabled(ToolDisabledReason.MissingSchemaRegistryBlock);
176
+ }
177
+ if (conn.schema_registry.auth?.type !== "api_key") {
178
+ return disabled(ToolDisabledReason.MissingSchemaRegistryApiKeyAuth);
179
+ }
180
+ if (conn.confluent_cloud === undefined) {
181
+ return disabled(ToolDisabledReason.MissingConfluentCloudBlock);
182
+ }
183
+ return ENABLED;
184
+ }
185
+ /**
186
+ * Predicate that returns {@linkcode ENABLED} for every connection. Use as
187
+ * the {@linkcode BaseToolHandler.predicate} for tools with no service-block
188
+ * requirement (e.g., generic docs search).
189
+ */
190
+ export const alwaysEnabled = () => ENABLED;
191
+ /**
192
+ * Combine predicates with logical AND, short-circuiting on the first
193
+ * failure. Returns {@linkcode ENABLED} only when every predicate passes for
194
+ * the given connection; otherwise returns the first failing verdict so the
195
+ * specific reason propagates downstream to startup logging and the
196
+ * diagnostic-tool surface.
197
+ *
198
+ * Use this — never raw `predA(conn) && predB(conn)`. JavaScript boolean
199
+ * composition silently drops the first operand because every
200
+ * `PredicateResult` is a truthy object.
201
+ */
202
+ export function allOf(...predicates) {
203
+ return (conn) => {
204
+ for (const predicate of predicates) {
205
+ const verdict = predicate(conn);
206
+ if (!verdict.enabled)
207
+ return verdict;
208
+ }
209
+ return ENABLED;
210
+ };
211
+ }
212
+ /**
213
+ * Wrap a predicate so OAuth connections always answer enabled. Use this on
214
+ * tool handlers that have been adapted to operate against an OAuth-typed
215
+ * connection at call time — the wrapped predicate's block-based verdict
216
+ * still governs direct connections, while OAuth's "no service blocks"
217
+ * early-exit is overridden.
218
+ */
219
+ export function widenForOAuth(predicate) {
220
+ return (conn) => (conn.type === "oauth" ? ENABLED : predicate(conn));
221
+ }
222
+ /**
223
+ * The native-Kafka client gate, widened to admit OAuth. Direct connections
224
+ * still need `kafka.bootstrap_servers`; OAuth connections satisfy it
225
+ * unconditionally (the broker URL is synthesized from the Auth0 environment).
226
+ * Use on handlers that have been brought into the OAuth fold.
227
+ */
228
+ export const kafkaBootstrapOrOAuth = widenForOAuth(hasKafkaBootstrap);
229
+ /**
230
+ * The Kafka REST client gate, widened to admit OAuth. Direct connections still
231
+ * need both `kafka.rest_endpoint` and `kafka.auth`; OAuth connections satisfy
232
+ * it unconditionally (the per-cluster REST URL is resolved at call time via
233
+ * the cmk REST API and the bearer middleware handles auth). Use on REST-tool
234
+ * handlers (`get-topic-config`, `alter-topic-config`).
235
+ */
236
+ export const kafkaRestWithAuthOrOAuth = widenForOAuth(hasKafkaRestWithAuth);
237
+ /**
238
+ * The Schema Registry gate, widened to admit OAuth. Direct connections still
239
+ * need a `schema_registry` block; OAuth connections satisfy it unconditionally
240
+ * (the SR cluster + endpoint are auto-resolved at call time from
241
+ * `environment_id`).
242
+ */
243
+ export const hasSchemaRegistryOrOAuth = widenForOAuth(hasSchemaRegistry);
244
+ /**
245
+ * Gate for tools that create connectors against the direct Confluent Cloud
246
+ * REST surface: requires both a `confluent_cloud` block (the `/connect/v1`
247
+ * endpoint) and `kafka.auth` (the connector spec carries kafka API
248
+ * credentials). Strict-direct — OAuth connections answer `OAuthNotDirectCapable`
249
+ * because the handler calls `getSoleDirectConnection()`.
250
+ */
251
+ export const canCreateDirectConnector = allOf(hasConfluentCloud, hasKafkaAuth);
252
+ /**
253
+ * Gate for tools that read telemetry metrics about Flink statements:
254
+ * requires both the `flink` block (to address a statement) and the
255
+ * `telemetry` block (to query the metrics API).
256
+ */
257
+ export const flinkWithTelemetry = allOf(hasFlink, hasTelemetry);
258
+ /**
259
+ * Every reason a {@linkcode ConnectionPredicate} can return `enabled: false`.
260
+ * The symbol is the wire-stable identifier (referenced from predicate bodies
261
+ * and tests); the value is the human-readable phrasing surfaced to end users
262
+ * through startup logs and diagnostic tooling.
263
+ *
264
+ * Adding a reason: name the symbol after what's missing from the connection
265
+ * config (not which predicate emitted it — multiple predicates may share a
266
+ * reason), and write the value as a declarative phrase a misconfigured user
267
+ * could act on.
268
+ */
269
+ export var ToolDisabledReason;
270
+ (function (ToolDisabledReason) {
271
+ ToolDisabledReason["MissingKafkaBlock"] = "no 'kafka' block in connection config";
272
+ ToolDisabledReason["MissingKafkaBootstrap"] = "'kafka' block does not have 'bootstrap_servers' field";
273
+ ToolDisabledReason["MissingKafkaAuth"] = "'kafka' block does not have 'auth' field";
274
+ ToolDisabledReason["MissingKafkaRestEndpoint"] = "'kafka' block does not have 'rest_endpoint' field";
275
+ ToolDisabledReason["MissingSchemaRegistryBlock"] = "no 'schema_registry' block in connection config";
276
+ ToolDisabledReason["MissingSchemaRegistryApiKeyAuth"] = "'schema_registry' block does not have 'auth' field of type 'api_key'";
277
+ ToolDisabledReason["MissingConfluentCloudBlock"] = "no 'confluent_cloud' block in connection config";
278
+ ToolDisabledReason["MissingFlinkBlock"] = "no 'flink' block in connection config";
279
+ ToolDisabledReason["MissingTelemetryBlock"] = "no 'telemetry' block in connection config";
280
+ ToolDisabledReason["MissingTableflowBlock"] = "no 'tableflow' block in connection config";
281
+ ToolDisabledReason["OAuthNoServiceBlocks"] = "OAuth connections carry no service blocks";
282
+ ToolDisabledReason["OAuthNotDirectCapable"] = "OAuth connection cannot satisfy a direct-only requirement";
283
+ })(ToolDisabledReason || (ToolDisabledReason = {}));
284
+ //# sourceMappingURL=connection-predicates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connection-predicates.js","sourceRoot":"","sources":["../../../src/confluent/tools/connection-predicates.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,10 @@
1
- import { ClientManager } from "../../../../confluent/client-manager.js";
2
1
  import { CallToolResult } from "../../../../confluent/schema.js";
3
- import { BaseToolHandler, ToolConfig } from "../../../../confluent/tools/base-tools.js";
4
- import { EnvVar } from "../../../../env-schema.js";
2
+ import { BaseToolHandler, ToolCategory, ToolConfig } from "../../../../confluent/tools/base-tools.js";
3
+ import { ServerRuntime } from "../../../../server-runtime.js";
5
4
  export declare class ListBillingCostsHandler extends BaseToolHandler {
6
- handle(clientManager: ClientManager, toolArguments: Record<string, unknown>): Promise<CallToolResult>;
5
+ handle(runtime: ServerRuntime, toolArguments: Record<string, unknown>): Promise<CallToolResult>;
7
6
  getToolConfig(): ToolConfig;
8
- getRequiredEnvVars(): readonly EnvVar[];
9
- isConfluentCloudOnly(): boolean;
7
+ readonly category = ToolCategory.Billing;
8
+ readonly predicate: import("../../../../confluent/tools/connection-predicates.js").ConnectionPredicate;
10
9
  }
11
10
  //# sourceMappingURL=list-billing-costs-handler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"list-billing-costs-handler.d.ts","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/billing/list-billing-costs-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EACL,eAAe,EAEf,UAAU,EACX,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAEL,MAAM,EACP,MAAM,oBAAoB,CAAC;AAgE5B,qBAAa,uBAAwB,SAAQ,eAAe;IACpD,MAAM,CACV,aAAa,EAAE,aAAa,EAC5B,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACrC,OAAO,CAAC,cAAc,CAAC;IA8H1B,aAAa,IAAI,UAAU;IAU3B,kBAAkB,IAAI,SAAS,MAAM,EAAE;IAIvC,oBAAoB,IAAI,OAAO;CAGhC"}
1
+ {"version":3,"file":"list-billing-costs-handler.d.ts","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/billing/list-billing-costs-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EACL,eAAe,EAEf,YAAY,EACZ,UAAU,EACX,MAAM,oCAAoC,CAAC;AAI5C,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAsHvD,qBAAa,uBAAwB,SAAQ,eAAe;IACpD,MAAM,CACV,OAAO,EAAE,aAAa,EACtB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACrC,OAAO,CAAC,cAAc,CAAC;IA+H1B,aAAa,IAAI,UAAU;IAS3B,QAAQ,CAAC,QAAQ,wBAAwB;IACzC,QAAQ,CAAC,SAAS,8EAA4B;CAC/C"}
@@ -1,10 +1,12 @@
1
- import { BaseToolHandler, READ_ONLY, } from "../../../../confluent/tools/base-tools.js";
1
+ import { BaseToolHandler, READ_ONLY, ToolCategory, } from "../../../../confluent/tools/base-tools.js";
2
+ import { hasConfluentCloudOrOAuth } from "../../../../confluent/tools/connection-predicates.js";
2
3
  import { ToolName } from "../../../../confluent/tools/tool-name.js";
3
- import { CCLOUD_CONTROL_PLANE_REQUIRED_ENV_VARS, } from "../../../../env-schema.js";
4
4
  import { logger } from "../../../../logger.js";
5
5
  import { wrapAsPathBasedClient } from "openapi-fetch";
6
6
  import { z } from "zod";
7
- const listBillingCostsArguments = z.object({
7
+ const BILLING_RANGE_MAX_DAYS = 31;
8
+ const MS_PER_DAY = 86_400_000;
9
+ const listBillingCostsObject = z.object({
8
10
  startDate: z
9
11
  .string()
10
12
  .regex(/^\d{4}-\d{2}-\d{2}$/, "Date must be in YYYY-MM-DD format")
@@ -25,6 +27,36 @@ const listBillingCostsArguments = z.object({
25
27
  .optional()
26
28
  .describe("Token for the next page of results"),
27
29
  });
30
+ const listBillingCostsArguments = listBillingCostsObject
31
+ .refine(({ startDate, endDate }) => Number.isFinite(Date.parse(startDate)) &&
32
+ Number.isFinite(Date.parse(endDate)), {
33
+ error: (issue) => {
34
+ const { startDate, endDate } = issue.input;
35
+ const invalid = Number.isFinite(Date.parse(startDate))
36
+ ? `endDate=${endDate}`
37
+ : `startDate=${startDate}`;
38
+ return `Date must be a valid calendar date (got ${invalid}).`;
39
+ },
40
+ path: ["endDate"],
41
+ })
42
+ .refine(({ startDate, endDate }) => Date.parse(endDate) >= Date.parse(startDate), {
43
+ error: (issue) => {
44
+ const { startDate, endDate } = issue.input;
45
+ return `endDate (${endDate}) must be on or after startDate (${startDate}).`;
46
+ },
47
+ path: ["endDate"],
48
+ })
49
+ .refine(({ startDate, endDate }) => {
50
+ const diffDays = (Date.parse(endDate) - Date.parse(startDate)) / MS_PER_DAY;
51
+ return diffDays <= BILLING_RANGE_MAX_DAYS;
52
+ }, {
53
+ error: (issue) => {
54
+ const { startDate, endDate } = issue.input;
55
+ const diffDays = (Date.parse(endDate) - Date.parse(startDate)) / MS_PER_DAY;
56
+ return `Date range must be ${BILLING_RANGE_MAX_DAYS} days or fewer (got ${diffDays} days). The CCloud billing API caps queries at ${BILLING_RANGE_MAX_DAYS} days.`;
57
+ },
58
+ path: ["endDate"],
59
+ });
28
60
  /**
29
61
  * Schema for validating billing cost line items
30
62
  */
@@ -59,7 +91,8 @@ const billingCostsSchema = z.object({
59
91
  data: z.array(costLineItemSchema),
60
92
  });
61
93
  export class ListBillingCostsHandler extends BaseToolHandler {
62
- async handle(clientManager, toolArguments) {
94
+ async handle(runtime, toolArguments) {
95
+ const clientManager = runtime.clientManager;
63
96
  const { startDate, endDate, pageSize, pageToken } = listBillingCostsArguments.parse(toolArguments);
64
97
  try {
65
98
  const pathBasedClient = wrapAsPathBasedClient(clientManager.getConfluentCloudRestClient());
@@ -152,15 +185,11 @@ Pagination:${metadata.total_size ? `\n Total Items: ${metadata.total_size}` : "
152
185
  return {
153
186
  name: ToolName.LIST_BILLING_COSTS,
154
187
  description: "Retrieve billing cost data for a Confluent Cloud organization within a specified date range with pagination support",
155
- inputSchema: listBillingCostsArguments.shape,
188
+ inputSchema: listBillingCostsObject.shape,
156
189
  annotations: READ_ONLY,
157
190
  };
158
191
  }
159
- getRequiredEnvVars() {
160
- return CCLOUD_CONTROL_PLANE_REQUIRED_ENV_VARS;
161
- }
162
- isConfluentCloudOnly() {
163
- return true;
164
- }
192
+ category = ToolCategory.Billing;
193
+ predicate = hasConfluentCloudOrOAuth;
165
194
  }
166
195
  //# sourceMappingURL=list-billing-costs-handler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"list-billing-costs-handler.js","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/billing/list-billing-costs-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"list-billing-costs-handler.js","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/billing/list-billing-costs-handler.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
- import { ClientManager } from "../../../../confluent/client-manager.js";
2
1
  import { CallToolResult } from "../../../../confluent/schema.js";
3
- import { BaseToolHandler, ToolConfig } from "../../../../confluent/tools/base-tools.js";
4
- import { EnvVar } from "../../../../env-schema.js";
2
+ import { BaseToolHandler, ToolCategory, ToolConfig } from "../../../../confluent/tools/base-tools.js";
3
+ import { hasCCloudCatalogSupport } from "../../../../confluent/tools/connection-predicates.js";
4
+ import { ServerRuntime } from "../../../../server-runtime.js";
5
5
  export declare class AddTagToTopicHandler extends BaseToolHandler {
6
- handle(clientManager: ClientManager, toolArguments: Record<string, unknown>): Promise<CallToolResult>;
6
+ handle(runtime: ServerRuntime, toolArguments: Record<string, unknown>): Promise<CallToolResult>;
7
7
  getToolConfig(): ToolConfig;
8
- getRequiredEnvVars(): readonly EnvVar[];
9
- isConfluentCloudOnly(): boolean;
8
+ readonly category = ToolCategory.Catalog;
9
+ readonly predicate: typeof hasCCloudCatalogSupport;
10
10
  }
11
11
  //# sourceMappingURL=add-tags-to-topic.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"add-tags-to-topic.d.ts","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/catalog/add-tags-to-topic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EACL,eAAe,EAEf,UAAU,EACX,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAEL,MAAM,EACP,MAAM,oBAAoB,CAAC;AAqB5B,qBAAa,oBAAqB,SAAQ,eAAe;IACjD,MAAM,CACV,aAAa,EAAE,aAAa,EAC5B,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACrC,OAAO,CAAC,cAAc,CAAC;IAwB1B,aAAa,IAAI,UAAU;IAS3B,kBAAkB,IAAI,SAAS,MAAM,EAAE;IAIvC,oBAAoB,IAAI,OAAO;CAGhC"}
1
+ {"version":3,"file":"add-tags-to-topic.d.ts","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/catalog/add-tags-to-topic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EACL,eAAe,EAEf,YAAY,EACZ,UAAU,EACX,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,uBAAuB,EAAE,MAAM,+CAA+C,CAAC;AAExF,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAqBvD,qBAAa,oBAAqB,SAAQ,eAAe;IACjD,MAAM,CACV,OAAO,EAAE,aAAa,EACtB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACrC,OAAO,CAAC,cAAc,CAAC;IAyB1B,aAAa,IAAI,UAAU;IAQ3B,QAAQ,CAAC,QAAQ,wBAAwB;IACzC,QAAQ,CAAC,SAAS,iCAA2B;CAC9C"}
@@ -1,6 +1,6 @@
1
- import { BaseToolHandler, CREATE_UPDATE, } from "../../../../confluent/tools/base-tools.js";
1
+ import { BaseToolHandler, CREATE_UPDATE, ToolCategory, } from "../../../../confluent/tools/base-tools.js";
2
+ import { hasCCloudCatalogSupport } from "../../../../confluent/tools/connection-predicates.js";
2
3
  import { ToolName } from "../../../../confluent/tools/tool-name.js";
3
- import { CCLOUD_SCHEMA_REGISTRY_REQUIRED_ENV_VARS, } from "../../../../env-schema.js";
4
4
  import { wrapAsPathBasedClient } from "openapi-fetch";
5
5
  import { z } from "zod";
6
6
  const addTagToTopicArguments = z.object({
@@ -16,7 +16,8 @@ const addTagToTopicArguments = z.object({
16
16
  .describe("Array of tag assignments to create"),
17
17
  });
18
18
  export class AddTagToTopicHandler extends BaseToolHandler {
19
- async handle(clientManager, toolArguments) {
19
+ async handle(runtime, toolArguments) {
20
+ const clientManager = runtime.clientManager;
20
21
  const { tagAssignments } = addTagToTopicArguments.parse(toolArguments);
21
22
  const pathBasedClient = wrapAsPathBasedClient(clientManager.getConfluentCloudSchemaRegistryRestClient());
22
23
  const { data: response, error } = await pathBasedClient["/catalog/v1/entity/tags"].POST({
@@ -35,11 +36,7 @@ export class AddTagToTopicHandler extends BaseToolHandler {
35
36
  annotations: CREATE_UPDATE,
36
37
  };
37
38
  }
38
- getRequiredEnvVars() {
39
- return CCLOUD_SCHEMA_REGISTRY_REQUIRED_ENV_VARS;
40
- }
41
- isConfluentCloudOnly() {
42
- return true;
43
- }
39
+ category = ToolCategory.Catalog;
40
+ predicate = hasCCloudCatalogSupport;
44
41
  }
45
42
  //# sourceMappingURL=add-tags-to-topic.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"add-tags-to-topic.js","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/catalog/add-tags-to-topic.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,eAAe,EACf,aAAa,GAEd,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAC7D,OAAO,EACL,wCAAwC,GAEzC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,cAAc,EAAE,CAAC;SACd,KAAK,CACJ,CAAC,CAAC,MAAM,CAAC;QACP,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC;QAC7C,UAAU,EAAE,CAAC;aACV,MAAM,EAAE;aACR,QAAQ,CACP,mFAAmF,QAAQ,CAAC,qBAAqB,oDAAoD,CACtK;QACH,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;KAC3D,CAAC,CACH;SACA,QAAQ,EAAE;SACV,QAAQ,CAAC,oCAAoC,CAAC;CAClD,CAAC,CAAC;AAEH,MAAM,OAAO,oBAAqB,SAAQ,eAAe;IACvD,KAAK,CAAC,MAAM,CACV,aAA4B,EAC5B,aAAsC;QAEtC,MAAM,EAAE,cAAc,EAAE,GAAG,sBAAsB,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAEvE,MAAM,eAAe,GAAG,qBAAqB,CAC3C,aAAa,CAAC,yCAAyC,EAAE,CAC1D,CAAC;QAEF,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,MAAM,eAAe,CACrD,yBAAyB,CAC1B,CAAC,IAAI,CAAC;YACL,IAAI,EAAE,cAAc;SACrB,CAAC,CAAC;QAEH,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,IAAI,CAAC,cAAc,CACxB,yBAAyB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAChD,IAAI,CACL,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CACxB,8BAA8B,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CACzD,CAAC;IACJ,CAAC;IAED,aAAa;QACX,OAAO;YACL,IAAI,EAAE,QAAQ,CAAC,iBAAiB;YAChC,WAAW,EAAE,0DAA0D;YACvE,WAAW,EAAE,sBAAsB,CAAC,KAAK;YACzC,WAAW,EAAE,aAAa;SAC3B,CAAC;IACJ,CAAC;IAED,kBAAkB;QAChB,OAAO,wCAAwC,CAAC;IAClD,CAAC;IAED,oBAAoB;QAClB,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
1
+ {"version":3,"file":"add-tags-to-topic.js","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/catalog/add-tags-to-topic.ts"],"names":[],"mappings":"AACA,OAAO,EACL,eAAe,EACf,aAAa,EACb,YAAY,GAEb,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,uBAAuB,EAAE,MAAM,+CAA+C,CAAC;AACxF,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAE7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,cAAc,EAAE,CAAC;SACd,KAAK,CACJ,CAAC,CAAC,MAAM,CAAC;QACP,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC;QAC7C,UAAU,EAAE,CAAC;aACV,MAAM,EAAE;aACR,QAAQ,CACP,mFAAmF,QAAQ,CAAC,qBAAqB,oDAAoD,CACtK;QACH,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;KAC3D,CAAC,CACH;SACA,QAAQ,EAAE;SACV,QAAQ,CAAC,oCAAoC,CAAC;CAClD,CAAC,CAAC;AAEH,MAAM,OAAO,oBAAqB,SAAQ,eAAe;IACvD,KAAK,CAAC,MAAM,CACV,OAAsB,EACtB,aAAsC;QAEtC,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;QAC5C,MAAM,EAAE,cAAc,EAAE,GAAG,sBAAsB,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAEvE,MAAM,eAAe,GAAG,qBAAqB,CAC3C,aAAa,CAAC,yCAAyC,EAAE,CAC1D,CAAC;QAEF,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,MAAM,eAAe,CACrD,yBAAyB,CAC1B,CAAC,IAAI,CAAC;YACL,IAAI,EAAE,cAAc;SACrB,CAAC,CAAC;QAEH,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,IAAI,CAAC,cAAc,CACxB,yBAAyB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAChD,IAAI,CACL,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CACxB,8BAA8B,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CACzD,CAAC;IACJ,CAAC;IAED,aAAa;QACX,OAAO;YACL,IAAI,EAAE,QAAQ,CAAC,iBAAiB;YAChC,WAAW,EAAE,0DAA0D;YACvE,WAAW,EAAE,sBAAsB,CAAC,KAAK;YACzC,WAAW,EAAE,aAAa;SAC3B,CAAC;IACJ,CAAC;IACQ,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC;IAChC,SAAS,GAAG,uBAAuB,CAAC;CAC9C"}
@@ -1,11 +1,11 @@
1
- import { ClientManager } from "../../../../confluent/client-manager.js";
2
1
  import { CallToolResult } from "../../../../confluent/schema.js";
3
- import { BaseToolHandler, ToolConfig } from "../../../../confluent/tools/base-tools.js";
4
- import { EnvVar } from "../../../../env-schema.js";
2
+ import { BaseToolHandler, ToolCategory, ToolConfig } from "../../../../confluent/tools/base-tools.js";
3
+ import { hasCCloudCatalogSupport } from "../../../../confluent/tools/connection-predicates.js";
4
+ import { ServerRuntime } from "../../../../server-runtime.js";
5
5
  export declare class CreateTopicTagsHandler extends BaseToolHandler {
6
- handle(clientManager: ClientManager, toolArguments: Record<string, unknown>): Promise<CallToolResult>;
6
+ handle(runtime: ServerRuntime, toolArguments: Record<string, unknown>): Promise<CallToolResult>;
7
7
  getToolConfig(): ToolConfig;
8
- getRequiredEnvVars(): readonly EnvVar[];
9
- isConfluentCloudOnly(): boolean;
8
+ readonly category = ToolCategory.Catalog;
9
+ readonly predicate: typeof hasCCloudCatalogSupport;
10
10
  }
11
11
  //# sourceMappingURL=create-topic-tags.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"create-topic-tags.d.ts","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/catalog/create-topic-tags.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EACL,eAAe,EAEf,UAAU,EACX,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAEL,MAAM,EACP,MAAM,oBAAoB,CAAC;AAmB5B,qBAAa,sBAAuB,SAAQ,eAAe;IACnD,MAAM,CACV,aAAa,EAAE,aAAa,EAC5B,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACrC,OAAO,CAAC,cAAc,CAAC;IA8B1B,aAAa,IAAI,UAAU;IAS3B,kBAAkB,IAAI,SAAS,MAAM,EAAE;IAIvC,oBAAoB,IAAI,OAAO;CAGhC"}
1
+ {"version":3,"file":"create-topic-tags.d.ts","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/catalog/create-topic-tags.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EACL,eAAe,EAEf,YAAY,EACZ,UAAU,EACX,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,uBAAuB,EAAE,MAAM,+CAA+C,CAAC;AAExF,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAmBvD,qBAAa,sBAAuB,SAAQ,eAAe;IACnD,MAAM,CACV,OAAO,EAAE,aAAa,EACtB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACrC,OAAO,CAAC,cAAc,CAAC;IA+B1B,aAAa,IAAI,UAAU;IAQ3B,QAAQ,CAAC,QAAQ,wBAAwB;IACzC,QAAQ,CAAC,SAAS,iCAA2B;CAC9C"}
@@ -1,6 +1,6 @@
1
- import { BaseToolHandler, CREATE_UPDATE, } from "../../../../confluent/tools/base-tools.js";
1
+ import { BaseToolHandler, CREATE_UPDATE, ToolCategory, } from "../../../../confluent/tools/base-tools.js";
2
+ import { hasCCloudCatalogSupport } from "../../../../confluent/tools/connection-predicates.js";
2
3
  import { ToolName } from "../../../../confluent/tools/tool-name.js";
3
- import { CCLOUD_SCHEMA_REGISTRY_REQUIRED_ENV_VARS, } from "../../../../env-schema.js";
4
4
  import { wrapAsPathBasedClient } from "openapi-fetch";
5
5
  import { z } from "zod";
6
6
  const createTagsArguments = z.object({
@@ -16,7 +16,8 @@ const createTagsArguments = z.object({
16
16
  .describe("Array of tag definitions to create"),
17
17
  });
18
18
  export class CreateTopicTagsHandler extends BaseToolHandler {
19
- async handle(clientManager, toolArguments) {
19
+ async handle(runtime, toolArguments) {
20
+ const clientManager = runtime.clientManager;
20
21
  const { tags } = createTagsArguments.parse(toolArguments);
21
22
  const pathBasedClient = wrapAsPathBasedClient(clientManager.getConfluentCloudSchemaRegistryRestClient());
22
23
  const tagDefinitions = tags.map((tag) => ({
@@ -40,11 +41,7 @@ export class CreateTopicTagsHandler extends BaseToolHandler {
40
41
  annotations: CREATE_UPDATE,
41
42
  };
42
43
  }
43
- getRequiredEnvVars() {
44
- return CCLOUD_SCHEMA_REGISTRY_REQUIRED_ENV_VARS;
45
- }
46
- isConfluentCloudOnly() {
47
- return true;
48
- }
44
+ category = ToolCategory.Catalog;
45
+ predicate = hasCCloudCatalogSupport;
49
46
  }
50
47
  //# sourceMappingURL=create-topic-tags.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"create-topic-tags.js","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/catalog/create-topic-tags.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,eAAe,EACf,aAAa,GAEd,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAC7D,OAAO,EACL,wCAAwC,GAEzC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,IAAI,EAAE,CAAC;SACJ,KAAK,CACJ,CAAC,CAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAAC,QAAQ,EAAE;QACpE,WAAW,EAAE,CAAC;aACX,MAAM,EAAE;aACR,QAAQ,CAAC,yBAAyB,CAAC;aACnC,OAAO,CAAC,qBAAqB,CAAC;KAClC,CAAC,CACH;SACA,QAAQ,EAAE;SACV,QAAQ,CAAC,oCAAoC,CAAC;CAClD,CAAC,CAAC;AAEH,MAAM,OAAO,sBAAuB,SAAQ,eAAe;IACzD,KAAK,CAAC,MAAM,CACV,aAA4B,EAC5B,aAAsC;QAEtC,MAAM,EAAE,IAAI,EAAE,GAAG,mBAAmB,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAE1D,MAAM,eAAe,GAAG,qBAAqB,CAC3C,aAAa,CAAC,yCAAyC,EAAE,CAC1D,CAAC;QAEF,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACxC,WAAW,EAAE,CAAC,aAAa,CAAC;YAC5B,IAAI,EAAE,GAAG,CAAC,OAAO;YACjB,WAAW,EAAE,GAAG,CAAC,WAAW;SAC7B,CAAC,CAAC,CAAC;QAEJ,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,MAAM,eAAe,CACrD,2BAA2B,CAC5B,CAAC,IAAI,CAAC;YACL,IAAI,EAAE,cAAc;SACrB,CAAC,CAAC;QAEH,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,IAAI,CAAC,cAAc,CACxB,yBAAyB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAChD,IAAI,CACL,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CACxB,6BAA6B,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CACxD,CAAC;IACJ,CAAC;IAED,aAAa;QACX,OAAO;YACL,IAAI,EAAE,QAAQ,CAAC,iBAAiB;YAChC,WAAW,EAAE,gDAAgD;YAC7D,WAAW,EAAE,mBAAmB,CAAC,KAAK;YACtC,WAAW,EAAE,aAAa;SAC3B,CAAC;IACJ,CAAC;IAED,kBAAkB;QAChB,OAAO,wCAAwC,CAAC;IAClD,CAAC;IAED,oBAAoB;QAClB,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
1
+ {"version":3,"file":"create-topic-tags.js","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/catalog/create-topic-tags.ts"],"names":[],"mappings":"AACA,OAAO,EACL,eAAe,EACf,aAAa,EACb,YAAY,GAEb,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,uBAAuB,EAAE,MAAM,+CAA+C,CAAC;AACxF,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAE7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,IAAI,EAAE,CAAC;SACJ,KAAK,CACJ,CAAC,CAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAAC,QAAQ,EAAE;QACpE,WAAW,EAAE,CAAC;aACX,MAAM,EAAE;aACR,QAAQ,CAAC,yBAAyB,CAAC;aACnC,OAAO,CAAC,qBAAqB,CAAC;KAClC,CAAC,CACH;SACA,QAAQ,EAAE;SACV,QAAQ,CAAC,oCAAoC,CAAC;CAClD,CAAC,CAAC;AAEH,MAAM,OAAO,sBAAuB,SAAQ,eAAe;IACzD,KAAK,CAAC,MAAM,CACV,OAAsB,EACtB,aAAsC;QAEtC,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;QAC5C,MAAM,EAAE,IAAI,EAAE,GAAG,mBAAmB,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAE1D,MAAM,eAAe,GAAG,qBAAqB,CAC3C,aAAa,CAAC,yCAAyC,EAAE,CAC1D,CAAC;QAEF,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACxC,WAAW,EAAE,CAAC,aAAa,CAAC;YAC5B,IAAI,EAAE,GAAG,CAAC,OAAO;YACjB,WAAW,EAAE,GAAG,CAAC,WAAW;SAC7B,CAAC,CAAC,CAAC;QAEJ,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,MAAM,eAAe,CACrD,2BAA2B,CAC5B,CAAC,IAAI,CAAC;YACL,IAAI,EAAE,cAAc;SACrB,CAAC,CAAC;QAEH,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,IAAI,CAAC,cAAc,CACxB,yBAAyB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAChD,IAAI,CACL,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CACxB,6BAA6B,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CACxD,CAAC;IACJ,CAAC;IAED,aAAa;QACX,OAAO;YACL,IAAI,EAAE,QAAQ,CAAC,iBAAiB;YAChC,WAAW,EAAE,gDAAgD;YAC7D,WAAW,EAAE,mBAAmB,CAAC,KAAK;YACtC,WAAW,EAAE,aAAa;SAC3B,CAAC;IACJ,CAAC;IACQ,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC;IAChC,SAAS,GAAG,uBAAuB,CAAC;CAC9C"}
@@ -1,11 +1,11 @@
1
- import { ClientManager } from "../../../../confluent/client-manager.js";
2
1
  import { CallToolResult } from "../../../../confluent/schema.js";
3
- import { BaseToolHandler, ToolConfig } from "../../../../confluent/tools/base-tools.js";
4
- import { EnvVar } from "../../../../env-schema.js";
2
+ import { BaseToolHandler, ToolCategory, ToolConfig } from "../../../../confluent/tools/base-tools.js";
3
+ import { hasCCloudCatalogSupport } from "../../../../confluent/tools/connection-predicates.js";
4
+ import { ServerRuntime } from "../../../../server-runtime.js";
5
5
  export declare class DeleteTagHandler extends BaseToolHandler {
6
- handle(clientManager: ClientManager, toolArguments: Record<string, unknown>): Promise<CallToolResult>;
6
+ handle(runtime: ServerRuntime, toolArguments: Record<string, unknown>): Promise<CallToolResult>;
7
7
  getToolConfig(): ToolConfig;
8
- getRequiredEnvVars(): readonly EnvVar[];
9
- isConfluentCloudOnly(): boolean;
8
+ readonly category = ToolCategory.Catalog;
9
+ readonly predicate: typeof hasCCloudCatalogSupport;
10
10
  }
11
11
  //# sourceMappingURL=delete-tag.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"delete-tag.d.ts","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/catalog/delete-tag.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EACL,eAAe,EAEf,UAAU,EACX,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAEL,MAAM,EACP,MAAM,oBAAoB,CAAC;AAQ5B,qBAAa,gBAAiB,SAAQ,eAAe;IAC7C,MAAM,CACV,aAAa,EAAE,aAAa,EAC5B,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACrC,OAAO,CAAC,cAAc,CAAC;IA4B1B,aAAa,IAAI,UAAU;IAS3B,kBAAkB,IAAI,SAAS,MAAM,EAAE;IAIvC,oBAAoB,IAAI,OAAO;CAGhC"}
1
+ {"version":3,"file":"delete-tag.d.ts","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/catalog/delete-tag.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EACL,eAAe,EAEf,YAAY,EACZ,UAAU,EACX,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,uBAAuB,EAAE,MAAM,+CAA+C,CAAC;AAExF,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAQvD,qBAAa,gBAAiB,SAAQ,eAAe;IAC7C,MAAM,CACV,OAAO,EAAE,aAAa,EACtB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACrC,OAAO,CAAC,cAAc,CAAC;IA6B1B,aAAa,IAAI,UAAU;IAQ3B,QAAQ,CAAC,QAAQ,wBAAwB;IACzC,QAAQ,CAAC,SAAS,iCAA2B;CAC9C"}