@confluentinc/mcp-confluent 1.3.0 → 1.5.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 (429) hide show
  1. package/README.md +180 -78
  2. package/assets/oauth-templates/callback-success.html +80 -0
  3. package/assets/oauth-templates/styles.html +101 -40
  4. package/config.example.yaml +36 -7
  5. package/config.oauth.example.yaml +14 -1
  6. package/dist/config/env-config.d.ts +9 -3
  7. package/dist/config/env-config.d.ts.map +1 -1
  8. package/dist/config/env-config.js +20 -34
  9. package/dist/config/env-config.js.map +1 -1
  10. package/dist/config/models.d.ts +108 -13
  11. package/dist/config/models.d.ts.map +1 -1
  12. package/dist/config/models.js +54 -37
  13. package/dist/config/models.js.map +1 -1
  14. package/dist/confluent/base-client-manager.d.ts +36 -1
  15. package/dist/confluent/base-client-manager.d.ts.map +1 -1
  16. package/dist/confluent/base-client-manager.js +4 -0
  17. package/dist/confluent/base-client-manager.js.map +1 -1
  18. package/dist/confluent/client-manager.d.ts +14 -0
  19. package/dist/confluent/client-manager.d.ts.map +1 -1
  20. package/dist/confluent/direct-client-manager.d.ts +2 -2
  21. package/dist/confluent/direct-client-manager.d.ts.map +1 -1
  22. package/dist/confluent/direct-client-manager.js +25 -17
  23. package/dist/confluent/direct-client-manager.js.map +1 -1
  24. package/dist/confluent/node-deps.d.ts +1 -0
  25. package/dist/confluent/node-deps.d.ts.map +1 -1
  26. package/dist/confluent/node-deps.js +7 -1
  27. package/dist/confluent/node-deps.js.map +1 -1
  28. package/dist/confluent/oauth/auth0-config.d.ts +26 -4
  29. package/dist/confluent/oauth/auth0-config.d.ts.map +1 -1
  30. package/dist/confluent/oauth/auth0-config.js +59 -19
  31. package/dist/confluent/oauth/auth0-config.js.map +1 -1
  32. package/dist/confluent/oauth/callback-pages.d.ts +9 -1
  33. package/dist/confluent/oauth/callback-pages.d.ts.map +1 -1
  34. package/dist/confluent/oauth/callback-pages.js +14 -5
  35. package/dist/confluent/oauth/callback-pages.js.map +1 -1
  36. package/dist/confluent/oauth/pkce-login.d.ts +20 -1
  37. package/dist/confluent/oauth/pkce-login.d.ts.map +1 -1
  38. package/dist/confluent/oauth/pkce-login.js +118 -9
  39. package/dist/confluent/oauth/pkce-login.js.map +1 -1
  40. package/dist/confluent/oauth/types.d.ts +1 -2
  41. package/dist/confluent/oauth/types.d.ts.map +1 -1
  42. package/dist/confluent/oauth-client-manager.d.ts +7 -4
  43. package/dist/confluent/oauth-client-manager.d.ts.map +1 -1
  44. package/dist/confluent/oauth-client-manager.js +34 -12
  45. package/dist/confluent/oauth-client-manager.js.map +1 -1
  46. package/dist/confluent/oauth-resource-resolvers.d.ts +11 -0
  47. package/dist/confluent/oauth-resource-resolvers.d.ts.map +1 -1
  48. package/dist/confluent/oauth-resource-resolvers.js +24 -0
  49. package/dist/confluent/oauth-resource-resolvers.js.map +1 -1
  50. package/dist/confluent/schema-registry-helper.d.ts +119 -16
  51. package/dist/confluent/schema-registry-helper.d.ts.map +1 -1
  52. package/dist/confluent/schema-registry-helper.js +303 -49
  53. package/dist/confluent/schema-registry-helper.js.map +1 -1
  54. package/dist/confluent/telemetry.d.ts +7 -1
  55. package/dist/confluent/telemetry.d.ts.map +1 -1
  56. package/dist/confluent/telemetry.js +6 -0
  57. package/dist/confluent/telemetry.js.map +1 -1
  58. package/dist/confluent/tools/base-tools.d.ts +207 -21
  59. package/dist/confluent/tools/base-tools.d.ts.map +1 -1
  60. package/dist/confluent/tools/base-tools.js +259 -20
  61. package/dist/confluent/tools/base-tools.js.map +1 -1
  62. package/dist/confluent/tools/cluster-arg-resolvers.d.ts +21 -0
  63. package/dist/confluent/tools/cluster-arg-resolvers.d.ts.map +1 -1
  64. package/dist/confluent/tools/cluster-arg-resolvers.js +45 -0
  65. package/dist/confluent/tools/cluster-arg-resolvers.js.map +1 -1
  66. package/dist/confluent/tools/connection-predicates.d.ts +83 -12
  67. package/dist/confluent/tools/connection-predicates.d.ts.map +1 -1
  68. package/dist/confluent/tools/connection-predicates.js +85 -11
  69. package/dist/confluent/tools/connection-predicates.js.map +1 -1
  70. package/dist/confluent/tools/handlers/billing/list-billing-costs-handler.d.ts +2 -1
  71. package/dist/confluent/tools/handlers/billing/list-billing-costs-handler.d.ts.map +1 -1
  72. package/dist/confluent/tools/handlers/billing/list-billing-costs-handler.js +37 -4
  73. package/dist/confluent/tools/handlers/billing/list-billing-costs-handler.js.map +1 -1
  74. package/dist/confluent/tools/handlers/catalog/add-tags-to-topic.d.ts +3 -3
  75. package/dist/confluent/tools/handlers/catalog/add-tags-to-topic.d.ts.map +1 -1
  76. package/dist/confluent/tools/handlers/catalog/add-tags-to-topic.js +11 -6
  77. package/dist/confluent/tools/handlers/catalog/add-tags-to-topic.js.map +1 -1
  78. package/dist/confluent/tools/handlers/catalog/create-topic-tags.d.ts +3 -3
  79. package/dist/confluent/tools/handlers/catalog/create-topic-tags.d.ts.map +1 -1
  80. package/dist/confluent/tools/handlers/catalog/create-topic-tags.js +11 -6
  81. package/dist/confluent/tools/handlers/catalog/create-topic-tags.js.map +1 -1
  82. package/dist/confluent/tools/handlers/catalog/delete-tag.d.ts +3 -3
  83. package/dist/confluent/tools/handlers/catalog/delete-tag.d.ts.map +1 -1
  84. package/dist/confluent/tools/handlers/catalog/delete-tag.js +11 -6
  85. package/dist/confluent/tools/handlers/catalog/delete-tag.js.map +1 -1
  86. package/dist/confluent/tools/handlers/catalog/list-tags.d.ts +4 -4
  87. package/dist/confluent/tools/handlers/catalog/list-tags.d.ts.map +1 -1
  88. package/dist/confluent/tools/handlers/catalog/list-tags.js +16 -7
  89. package/dist/confluent/tools/handlers/catalog/list-tags.js.map +1 -1
  90. package/dist/confluent/tools/handlers/catalog/remove-tag-from-entity.d.ts +3 -3
  91. package/dist/confluent/tools/handlers/catalog/remove-tag-from-entity.d.ts.map +1 -1
  92. package/dist/confluent/tools/handlers/catalog/remove-tag-from-entity.js +11 -6
  93. package/dist/confluent/tools/handlers/catalog/remove-tag-from-entity.js.map +1 -1
  94. package/dist/confluent/tools/handlers/clusters/list-clusters-handler.d.ts +2 -1
  95. package/dist/confluent/tools/handlers/clusters/list-clusters-handler.d.ts.map +1 -1
  96. package/dist/confluent/tools/handlers/clusters/list-clusters-handler.js +3 -2
  97. package/dist/confluent/tools/handlers/clusters/list-clusters-handler.js.map +1 -1
  98. package/dist/confluent/tools/handlers/connect/connect-tool-handler.d.ts +22 -9
  99. package/dist/confluent/tools/handlers/connect/connect-tool-handler.d.ts.map +1 -1
  100. package/dist/confluent/tools/handlers/connect/connect-tool-handler.js +35 -11
  101. package/dist/confluent/tools/handlers/connect/connect-tool-handler.js.map +1 -1
  102. package/dist/confluent/tools/handlers/connect/create-connector-handler.d.ts.map +1 -1
  103. package/dist/confluent/tools/handlers/connect/create-connector-handler.js +1 -2
  104. package/dist/confluent/tools/handlers/connect/create-connector-handler.js.map +1 -1
  105. package/dist/confluent/tools/handlers/connect/delete-connector-handler.d.ts.map +1 -1
  106. package/dist/confluent/tools/handlers/connect/delete-connector-handler.js +1 -2
  107. package/dist/confluent/tools/handlers/connect/delete-connector-handler.js.map +1 -1
  108. package/dist/confluent/tools/handlers/connect/{read-connectors-handler.d.ts → get-connector-config-handler.d.ts} +2 -3
  109. package/dist/confluent/tools/handlers/connect/get-connector-config-handler.d.ts.map +1 -0
  110. package/dist/confluent/tools/handlers/connect/get-connector-config-handler.js +34 -0
  111. package/dist/confluent/tools/handlers/connect/get-connector-config-handler.js.map +1 -0
  112. package/dist/confluent/tools/handlers/connect/get-connector-error-recommendations-handler.d.ts +9 -0
  113. package/dist/confluent/tools/handlers/connect/get-connector-error-recommendations-handler.d.ts.map +1 -0
  114. package/dist/confluent/tools/handlers/connect/get-connector-error-recommendations-handler.js +65 -0
  115. package/dist/confluent/tools/handlers/connect/get-connector-error-recommendations-handler.js.map +1 -0
  116. package/dist/confluent/tools/handlers/connect/get-connector-error-summary-handler.d.ts +9 -0
  117. package/dist/confluent/tools/handlers/connect/get-connector-error-summary-handler.d.ts.map +1 -0
  118. package/dist/confluent/tools/handlers/connect/get-connector-error-summary-handler.js +130 -0
  119. package/dist/confluent/tools/handlers/connect/get-connector-error-summary-handler.js.map +1 -0
  120. package/dist/confluent/tools/handlers/connect/get-connector-logs-handler.d.ts +9 -0
  121. package/dist/confluent/tools/handlers/connect/get-connector-logs-handler.d.ts.map +1 -0
  122. package/dist/confluent/tools/handlers/connect/get-connector-logs-handler.js +269 -0
  123. package/dist/confluent/tools/handlers/connect/get-connector-logs-handler.js.map +1 -0
  124. package/dist/confluent/tools/handlers/connect/get-connector-offsets-handler.d.ts +9 -0
  125. package/dist/confluent/tools/handlers/connect/get-connector-offsets-handler.d.ts.map +1 -0
  126. package/dist/confluent/tools/handlers/connect/get-connector-offsets-handler.js +34 -0
  127. package/dist/confluent/tools/handlers/connect/get-connector-offsets-handler.js.map +1 -0
  128. package/dist/confluent/tools/handlers/connect/get-connector-status-handler.d.ts +9 -0
  129. package/dist/confluent/tools/handlers/connect/get-connector-status-handler.d.ts.map +1 -0
  130. package/dist/confluent/tools/handlers/connect/get-connector-status-handler.js +43 -0
  131. package/dist/confluent/tools/handlers/connect/get-connector-status-handler.js.map +1 -0
  132. package/dist/confluent/tools/handlers/connect/get-connector-tasks-handler.d.ts +9 -0
  133. package/dist/confluent/tools/handlers/connect/get-connector-tasks-handler.d.ts.map +1 -0
  134. package/dist/confluent/tools/handlers/connect/get-connector-tasks-handler.js +34 -0
  135. package/dist/confluent/tools/handlers/connect/get-connector-tasks-handler.js.map +1 -0
  136. package/dist/confluent/tools/handlers/connect/list-connectors-handler.d.ts.map +1 -1
  137. package/dist/confluent/tools/handlers/connect/list-connectors-handler.js +1 -2
  138. package/dist/confluent/tools/handlers/connect/list-connectors-handler.js.map +1 -1
  139. package/dist/confluent/tools/handlers/connect/pause-connector-handler.d.ts +9 -0
  140. package/dist/confluent/tools/handlers/connect/pause-connector-handler.d.ts.map +1 -0
  141. package/dist/confluent/tools/handlers/connect/pause-connector-handler.js +34 -0
  142. package/dist/confluent/tools/handlers/connect/pause-connector-handler.js.map +1 -0
  143. package/dist/confluent/tools/handlers/connect/restart-connector-handler.d.ts +9 -0
  144. package/dist/confluent/tools/handlers/connect/restart-connector-handler.d.ts.map +1 -0
  145. package/dist/confluent/tools/handlers/connect/restart-connector-handler.js +34 -0
  146. package/dist/confluent/tools/handlers/connect/restart-connector-handler.js.map +1 -0
  147. package/dist/confluent/tools/handlers/connect/resume-connector-handler.d.ts +9 -0
  148. package/dist/confluent/tools/handlers/connect/resume-connector-handler.d.ts.map +1 -0
  149. package/dist/confluent/tools/handlers/connect/resume-connector-handler.js +34 -0
  150. package/dist/confluent/tools/handlers/connect/resume-connector-handler.js.map +1 -0
  151. package/dist/confluent/tools/handlers/connect/update-connector-config-handler.d.ts +9 -0
  152. package/dist/confluent/tools/handlers/connect/update-connector-config-handler.d.ts.map +1 -0
  153. package/dist/confluent/tools/handlers/connect/update-connector-config-handler.js +43 -0
  154. package/dist/confluent/tools/handlers/connect/update-connector-config-handler.js.map +1 -0
  155. package/dist/confluent/tools/handlers/diagnostics/config-help-handler.d.ts +42 -0
  156. package/dist/confluent/tools/handlers/diagnostics/config-help-handler.d.ts.map +1 -0
  157. package/dist/confluent/tools/handlers/diagnostics/config-help-handler.js +297 -0
  158. package/dist/confluent/tools/handlers/diagnostics/config-help-handler.js.map +1 -0
  159. package/dist/confluent/tools/handlers/diagnostics/describe-configured-connection-handler.d.ts +31 -0
  160. package/dist/confluent/tools/handlers/diagnostics/describe-configured-connection-handler.d.ts.map +1 -0
  161. package/dist/confluent/tools/handlers/diagnostics/describe-configured-connection-handler.js +116 -0
  162. package/dist/confluent/tools/handlers/diagnostics/describe-configured-connection-handler.js.map +1 -0
  163. package/dist/confluent/tools/handlers/diagnostics/describe-fields.d.ts +52 -0
  164. package/dist/confluent/tools/handlers/diagnostics/describe-fields.d.ts.map +1 -0
  165. package/dist/confluent/tools/handlers/diagnostics/describe-fields.js +114 -0
  166. package/dist/confluent/tools/handlers/diagnostics/describe-fields.js.map +1 -0
  167. package/dist/confluent/tools/handlers/diagnostics/explain-disabled-tools-handler.d.ts +21 -43
  168. package/dist/confluent/tools/handlers/diagnostics/explain-disabled-tools-handler.d.ts.map +1 -1
  169. package/dist/confluent/tools/handlers/diagnostics/explain-disabled-tools-handler.js +105 -78
  170. package/dist/confluent/tools/handlers/diagnostics/explain-disabled-tools-handler.js.map +1 -1
  171. package/dist/confluent/tools/handlers/diagnostics/list-configured-connections-handler.d.ts +27 -0
  172. package/dist/confluent/tools/handlers/diagnostics/list-configured-connections-handler.d.ts.map +1 -0
  173. package/dist/confluent/tools/handlers/diagnostics/list-configured-connections-handler.js +93 -0
  174. package/dist/confluent/tools/handlers/diagnostics/list-configured-connections-handler.js.map +1 -0
  175. package/dist/confluent/tools/handlers/docs/get-product-doc-page-handler.d.ts +2 -1
  176. package/dist/confluent/tools/handlers/docs/get-product-doc-page-handler.d.ts.map +1 -1
  177. package/dist/confluent/tools/handlers/docs/get-product-doc-page-handler.js +2 -1
  178. package/dist/confluent/tools/handlers/docs/get-product-doc-page-handler.js.map +1 -1
  179. package/dist/confluent/tools/handlers/docs/search-product-docs-handler.d.ts +2 -1
  180. package/dist/confluent/tools/handlers/docs/search-product-docs-handler.d.ts.map +1 -1
  181. package/dist/confluent/tools/handlers/docs/search-product-docs-handler.js +2 -1
  182. package/dist/confluent/tools/handlers/docs/search-product-docs-handler.js.map +1 -1
  183. package/dist/confluent/tools/handlers/environments/list-environments-handler.d.ts +8 -7
  184. package/dist/confluent/tools/handlers/environments/list-environments-handler.d.ts.map +1 -1
  185. package/dist/confluent/tools/handlers/environments/list-environments-handler.js +8 -7
  186. package/dist/confluent/tools/handlers/environments/list-environments-handler.js.map +1 -1
  187. package/dist/confluent/tools/handlers/environments/read-environment-handler.d.ts +2 -1
  188. package/dist/confluent/tools/handlers/environments/read-environment-handler.d.ts.map +1 -1
  189. package/dist/confluent/tools/handlers/environments/read-environment-handler.js +3 -2
  190. package/dist/confluent/tools/handlers/environments/read-environment-handler.js.map +1 -1
  191. package/dist/confluent/tools/handlers/flink/catalog/catalog-resolver.d.ts +16 -2
  192. package/dist/confluent/tools/handlers/flink/catalog/catalog-resolver.d.ts.map +1 -1
  193. package/dist/confluent/tools/handlers/flink/catalog/catalog-resolver.js +4 -4
  194. package/dist/confluent/tools/handlers/flink/catalog/catalog-resolver.js.map +1 -1
  195. package/dist/confluent/tools/handlers/flink/catalog/describe-table-handler.d.ts.map +1 -1
  196. package/dist/confluent/tools/handlers/flink/catalog/describe-table-handler.js +43 -30
  197. package/dist/confluent/tools/handlers/flink/catalog/describe-table-handler.js.map +1 -1
  198. package/dist/confluent/tools/handlers/flink/catalog/get-table-info-handler.d.ts.map +1 -1
  199. package/dist/confluent/tools/handlers/flink/catalog/get-table-info-handler.js +43 -30
  200. package/dist/confluent/tools/handlers/flink/catalog/get-table-info-handler.js.map +1 -1
  201. package/dist/confluent/tools/handlers/flink/catalog/list-catalogs-handler.d.ts.map +1 -1
  202. package/dist/confluent/tools/handlers/flink/catalog/list-catalogs-handler.js +18 -11
  203. package/dist/confluent/tools/handlers/flink/catalog/list-catalogs-handler.js.map +1 -1
  204. package/dist/confluent/tools/handlers/flink/catalog/list-databases-handler.d.ts.map +1 -1
  205. package/dist/confluent/tools/handlers/flink/catalog/list-databases-handler.js +23 -16
  206. package/dist/confluent/tools/handlers/flink/catalog/list-databases-handler.js.map +1 -1
  207. package/dist/confluent/tools/handlers/flink/catalog/list-tables-handler.d.ts.map +1 -1
  208. package/dist/confluent/tools/handlers/flink/catalog/list-tables-handler.js +23 -16
  209. package/dist/confluent/tools/handlers/flink/catalog/list-tables-handler.js.map +1 -1
  210. package/dist/confluent/tools/handlers/flink/create-flink-statement-handler.d.ts.map +1 -1
  211. package/dist/confluent/tools/handlers/flink/create-flink-statement-handler.js +27 -22
  212. package/dist/confluent/tools/handlers/flink/create-flink-statement-handler.js.map +1 -1
  213. package/dist/confluent/tools/handlers/flink/delete-flink-statement-handler.d.ts.map +1 -1
  214. package/dist/confluent/tools/handlers/flink/delete-flink-statement-handler.js +20 -12
  215. package/dist/confluent/tools/handlers/flink/delete-flink-statement-handler.js.map +1 -1
  216. package/dist/confluent/tools/handlers/flink/diagnostics/check-health-handler.d.ts.map +1 -1
  217. package/dist/confluent/tools/handlers/flink/diagnostics/check-health-handler.js +20 -12
  218. package/dist/confluent/tools/handlers/flink/diagnostics/check-health-handler.js.map +1 -1
  219. package/dist/confluent/tools/handlers/flink/diagnostics/detect-issues-handler.d.ts.map +1 -1
  220. package/dist/confluent/tools/handlers/flink/diagnostics/detect-issues-handler.js +20 -18
  221. package/dist/confluent/tools/handlers/flink/diagnostics/detect-issues-handler.js.map +1 -1
  222. package/dist/confluent/tools/handlers/flink/diagnostics/query-profiler-handler.d.ts.map +1 -1
  223. package/dist/confluent/tools/handlers/flink/diagnostics/query-profiler-handler.js +24 -22
  224. package/dist/confluent/tools/handlers/flink/diagnostics/query-profiler-handler.js.map +1 -1
  225. package/dist/confluent/tools/handlers/flink/flink-sql-helper.d.ts +15 -1
  226. package/dist/confluent/tools/handlers/flink/flink-sql-helper.d.ts.map +1 -1
  227. package/dist/confluent/tools/handlers/flink/flink-sql-helper.js +133 -57
  228. package/dist/confluent/tools/handlers/flink/flink-sql-helper.js.map +1 -1
  229. package/dist/confluent/tools/handlers/flink/flink-tool-handler.d.ts +29 -7
  230. package/dist/confluent/tools/handlers/flink/flink-tool-handler.d.ts.map +1 -1
  231. package/dist/confluent/tools/handlers/flink/flink-tool-handler.js +38 -8
  232. package/dist/confluent/tools/handlers/flink/flink-tool-handler.js.map +1 -1
  233. package/dist/confluent/tools/handlers/flink/get-flink-exceptions-handler.d.ts.map +1 -1
  234. package/dist/confluent/tools/handlers/flink/get-flink-exceptions-handler.js +20 -12
  235. package/dist/confluent/tools/handlers/flink/get-flink-exceptions-handler.js.map +1 -1
  236. package/dist/confluent/tools/handlers/flink/{read-flink-statement-handler.d.ts → get-flink-statement-results-handler.d.ts} +2 -2
  237. package/dist/confluent/tools/handlers/flink/get-flink-statement-results-handler.d.ts.map +1 -0
  238. package/dist/confluent/tools/handlers/flink/{read-flink-statement-handler.js → get-flink-statement-results-handler.js} +30 -22
  239. package/dist/confluent/tools/handlers/flink/get-flink-statement-results-handler.js.map +1 -0
  240. package/dist/confluent/tools/handlers/flink/list-compute-pools-handler.d.ts +10 -0
  241. package/dist/confluent/tools/handlers/flink/list-compute-pools-handler.d.ts.map +1 -0
  242. package/dist/confluent/tools/handlers/flink/list-compute-pools-handler.js +118 -0
  243. package/dist/confluent/tools/handlers/flink/list-compute-pools-handler.js.map +1 -0
  244. package/dist/confluent/tools/handlers/flink/list-flink-statements-handler.d.ts.map +1 -1
  245. package/dist/confluent/tools/handlers/flink/list-flink-statements-handler.js +19 -18
  246. package/dist/confluent/tools/handlers/flink/list-flink-statements-handler.js.map +1 -1
  247. package/dist/confluent/tools/handlers/kafka/alter-topic-config.d.ts +2 -1
  248. package/dist/confluent/tools/handlers/kafka/alter-topic-config.d.ts.map +1 -1
  249. package/dist/confluent/tools/handlers/kafka/alter-topic-config.js +3 -2
  250. package/dist/confluent/tools/handlers/kafka/alter-topic-config.js.map +1 -1
  251. package/dist/confluent/tools/handlers/kafka/consume-kafka-messages-handler.d.ts +223 -28
  252. package/dist/confluent/tools/handlers/kafka/consume-kafka-messages-handler.d.ts.map +1 -1
  253. package/dist/confluent/tools/handlers/kafka/consume-kafka-messages-handler.js +832 -68
  254. package/dist/confluent/tools/handlers/kafka/consume-kafka-messages-handler.js.map +1 -1
  255. package/dist/confluent/tools/handlers/kafka/consumer-group-enums.d.ts +48 -0
  256. package/dist/confluent/tools/handlers/kafka/consumer-group-enums.d.ts.map +1 -0
  257. package/dist/confluent/tools/handlers/kafka/consumer-group-enums.js +84 -0
  258. package/dist/confluent/tools/handlers/kafka/consumer-group-enums.js.map +1 -0
  259. package/dist/confluent/tools/handlers/kafka/consumer-group-helpers.d.ts +54 -0
  260. package/dist/confluent/tools/handlers/kafka/consumer-group-helpers.d.ts.map +1 -0
  261. package/dist/confluent/tools/handlers/kafka/consumer-group-helpers.js +89 -0
  262. package/dist/confluent/tools/handlers/kafka/consumer-group-helpers.js.map +1 -0
  263. package/dist/confluent/tools/handlers/kafka/create-topics-handler.d.ts +2 -1
  264. package/dist/confluent/tools/handlers/kafka/create-topics-handler.d.ts.map +1 -1
  265. package/dist/confluent/tools/handlers/kafka/create-topics-handler.js +14 -4
  266. package/dist/confluent/tools/handlers/kafka/create-topics-handler.js.map +1 -1
  267. package/dist/confluent/tools/handlers/kafka/delete-topics-handler.d.ts +2 -1
  268. package/dist/confluent/tools/handlers/kafka/delete-topics-handler.d.ts.map +1 -1
  269. package/dist/confluent/tools/handlers/kafka/delete-topics-handler.js +3 -2
  270. package/dist/confluent/tools/handlers/kafka/delete-topics-handler.js.map +1 -1
  271. package/dist/confluent/tools/handlers/kafka/describe-consumer-group-handler.d.ts +64 -0
  272. package/dist/confluent/tools/handlers/kafka/describe-consumer-group-handler.d.ts.map +1 -0
  273. package/dist/confluent/tools/handlers/kafka/describe-consumer-group-handler.js +140 -0
  274. package/dist/confluent/tools/handlers/kafka/describe-consumer-group-handler.js.map +1 -0
  275. package/dist/confluent/tools/handlers/kafka/get-consumer-group-lag-handler.d.ts +73 -0
  276. package/dist/confluent/tools/handlers/kafka/get-consumer-group-lag-handler.d.ts.map +1 -0
  277. package/dist/confluent/tools/handlers/kafka/get-consumer-group-lag-handler.js +337 -0
  278. package/dist/confluent/tools/handlers/kafka/get-consumer-group-lag-handler.js.map +1 -0
  279. package/dist/confluent/tools/handlers/kafka/get-partition-offsets-handler.d.ts +43 -0
  280. package/dist/confluent/tools/handlers/kafka/get-partition-offsets-handler.d.ts.map +1 -0
  281. package/dist/confluent/tools/handlers/kafka/get-partition-offsets-handler.js +123 -0
  282. package/dist/confluent/tools/handlers/kafka/get-partition-offsets-handler.js.map +1 -0
  283. package/dist/confluent/tools/handlers/kafka/get-topic-config.d.ts +2 -1
  284. package/dist/confluent/tools/handlers/kafka/get-topic-config.d.ts.map +1 -1
  285. package/dist/confluent/tools/handlers/kafka/get-topic-config.js +3 -2
  286. package/dist/confluent/tools/handlers/kafka/get-topic-config.js.map +1 -1
  287. package/dist/confluent/tools/handlers/kafka/list-consumer-groups-handler.d.ts +45 -0
  288. package/dist/confluent/tools/handlers/kafka/list-consumer-groups-handler.d.ts.map +1 -0
  289. package/dist/confluent/tools/handlers/kafka/list-consumer-groups-handler.js +86 -0
  290. package/dist/confluent/tools/handlers/kafka/list-consumer-groups-handler.js.map +1 -0
  291. package/dist/confluent/tools/handlers/kafka/list-topics-handler.d.ts +2 -1
  292. package/dist/confluent/tools/handlers/kafka/list-topics-handler.d.ts.map +1 -1
  293. package/dist/confluent/tools/handlers/kafka/list-topics-handler.js +3 -2
  294. package/dist/confluent/tools/handlers/kafka/list-topics-handler.js.map +1 -1
  295. package/dist/confluent/tools/handlers/kafka/partition-watermarks.d.ts +54 -0
  296. package/dist/confluent/tools/handlers/kafka/partition-watermarks.d.ts.map +1 -0
  297. package/dist/confluent/tools/handlers/kafka/partition-watermarks.js +56 -0
  298. package/dist/confluent/tools/handlers/kafka/partition-watermarks.js.map +1 -0
  299. package/dist/confluent/tools/handlers/kafka/produce-kafka-message-handler.d.ts +13 -5
  300. package/dist/confluent/tools/handlers/kafka/produce-kafka-message-handler.d.ts.map +1 -1
  301. package/dist/confluent/tools/handlers/kafka/produce-kafka-message-handler.js +145 -47
  302. package/dist/confluent/tools/handlers/kafka/produce-kafka-message-handler.js.map +1 -1
  303. package/dist/confluent/tools/handlers/kafka/topic-metadata.d.ts +18 -0
  304. package/dist/confluent/tools/handlers/kafka/topic-metadata.d.ts.map +1 -0
  305. package/dist/confluent/tools/handlers/kafka/topic-metadata.js +18 -0
  306. package/dist/confluent/tools/handlers/kafka/topic-metadata.js.map +1 -0
  307. package/dist/confluent/tools/handlers/metrics/list-metrics-handler.d.ts +3 -3
  308. package/dist/confluent/tools/handlers/metrics/list-metrics-handler.d.ts.map +1 -1
  309. package/dist/confluent/tools/handlers/metrics/list-metrics-handler.js +5 -4
  310. package/dist/confluent/tools/handlers/metrics/list-metrics-handler.js.map +1 -1
  311. package/dist/confluent/tools/handlers/metrics/query-metrics-handler.d.ts +3 -3
  312. package/dist/confluent/tools/handlers/metrics/query-metrics-handler.d.ts.map +1 -1
  313. package/dist/confluent/tools/handlers/metrics/query-metrics-handler.js +8 -5
  314. package/dist/confluent/tools/handlers/metrics/query-metrics-handler.js.map +1 -1
  315. package/dist/confluent/tools/handlers/organizations/list-organizations-handler.d.ts +2 -1
  316. package/dist/confluent/tools/handlers/organizations/list-organizations-handler.d.ts.map +1 -1
  317. package/dist/confluent/tools/handlers/organizations/list-organizations-handler.js +4 -2
  318. package/dist/confluent/tools/handlers/organizations/list-organizations-handler.js.map +1 -1
  319. package/dist/confluent/tools/handlers/schema/create-schema-handler.d.ts +10 -0
  320. package/dist/confluent/tools/handlers/schema/create-schema-handler.d.ts.map +1 -0
  321. package/dist/confluent/tools/handlers/schema/create-schema-handler.js +76 -0
  322. package/dist/confluent/tools/handlers/schema/create-schema-handler.js.map +1 -0
  323. package/dist/confluent/tools/handlers/schema/delete-schema-handler.d.ts +2 -1
  324. package/dist/confluent/tools/handlers/schema/delete-schema-handler.d.ts.map +1 -1
  325. package/dist/confluent/tools/handlers/schema/delete-schema-handler.js +3 -2
  326. package/dist/confluent/tools/handlers/schema/delete-schema-handler.js.map +1 -1
  327. package/dist/confluent/tools/handlers/schema/list-schemas-handler.d.ts +2 -1
  328. package/dist/confluent/tools/handlers/schema/list-schemas-handler.d.ts.map +1 -1
  329. package/dist/confluent/tools/handlers/schema/list-schemas-handler.js +3 -2
  330. package/dist/confluent/tools/handlers/schema/list-schemas-handler.js.map +1 -1
  331. package/dist/confluent/tools/handlers/search/search-topic-by-tag-handler.d.ts +3 -3
  332. package/dist/confluent/tools/handlers/search/search-topic-by-tag-handler.d.ts.map +1 -1
  333. package/dist/confluent/tools/handlers/search/search-topic-by-tag-handler.js +11 -6
  334. package/dist/confluent/tools/handlers/search/search-topic-by-tag-handler.js.map +1 -1
  335. package/dist/confluent/tools/handlers/search/search-topics-by-name-handler.d.ts +3 -3
  336. package/dist/confluent/tools/handlers/search/search-topics-by-name-handler.d.ts.map +1 -1
  337. package/dist/confluent/tools/handlers/search/search-topics-by-name-handler.js +11 -6
  338. package/dist/confluent/tools/handlers/search/search-topics-by-name-handler.js.map +1 -1
  339. package/dist/confluent/tools/handlers/tableflow/catalog/create-tableflow-catalog-integration-handler.d.ts.map +1 -1
  340. package/dist/confluent/tools/handlers/tableflow/catalog/create-tableflow-catalog-integration-handler.js +2 -2
  341. package/dist/confluent/tools/handlers/tableflow/catalog/create-tableflow-catalog-integration-handler.js.map +1 -1
  342. package/dist/confluent/tools/handlers/tableflow/catalog/delete-tableflow-catalog-integration-handler.d.ts.map +1 -1
  343. package/dist/confluent/tools/handlers/tableflow/catalog/delete-tableflow-catalog-integration-handler.js +2 -2
  344. package/dist/confluent/tools/handlers/tableflow/catalog/delete-tableflow-catalog-integration-handler.js.map +1 -1
  345. package/dist/confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-handler.d.ts.map +1 -1
  346. package/dist/confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-handler.js +2 -2
  347. package/dist/confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-handler.js.map +1 -1
  348. package/dist/confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-handler.d.ts.map +1 -1
  349. package/dist/confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-handler.js +2 -2
  350. package/dist/confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-handler.js.map +1 -1
  351. package/dist/confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-handler.d.ts.map +1 -1
  352. package/dist/confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-handler.js +1 -1
  353. package/dist/confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-handler.js.map +1 -1
  354. package/dist/confluent/tools/handlers/tableflow/list-tableflow-regions-handler.d.ts.map +1 -1
  355. package/dist/confluent/tools/handlers/tableflow/list-tableflow-regions-handler.js +2 -3
  356. package/dist/confluent/tools/handlers/tableflow/list-tableflow-regions-handler.js.map +1 -1
  357. package/dist/confluent/tools/handlers/tableflow/tableflow-tool-handler.d.ts +17 -11
  358. package/dist/confluent/tools/handlers/tableflow/tableflow-tool-handler.d.ts.map +1 -1
  359. package/dist/confluent/tools/handlers/tableflow/tableflow-tool-handler.js +19 -15
  360. package/dist/confluent/tools/handlers/tableflow/tableflow-tool-handler.js.map +1 -1
  361. package/dist/confluent/tools/handlers/tableflow/topic/create-tableflow-topic-handler.d.ts.map +1 -1
  362. package/dist/confluent/tools/handlers/tableflow/topic/create-tableflow-topic-handler.js +2 -2
  363. package/dist/confluent/tools/handlers/tableflow/topic/create-tableflow-topic-handler.js.map +1 -1
  364. package/dist/confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.d.ts.map +1 -1
  365. package/dist/confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.js +2 -2
  366. package/dist/confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.js.map +1 -1
  367. package/dist/confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.d.ts.map +1 -1
  368. package/dist/confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.js +2 -2
  369. package/dist/confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.js.map +1 -1
  370. package/dist/confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.d.ts.map +1 -1
  371. package/dist/confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.js +2 -2
  372. package/dist/confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.js.map +1 -1
  373. package/dist/confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.d.ts.map +1 -1
  374. package/dist/confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.js +1 -1
  375. package/dist/confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.js.map +1 -1
  376. package/dist/confluent/tools/tool-availability.d.ts +84 -36
  377. package/dist/confluent/tools/tool-availability.d.ts.map +1 -1
  378. package/dist/confluent/tools/tool-availability.js +106 -65
  379. package/dist/confluent/tools/tool-availability.js.map +1 -1
  380. package/dist/confluent/tools/tool-metadata-handler.d.ts +51 -0
  381. package/dist/confluent/tools/tool-metadata-handler.d.ts.map +1 -0
  382. package/dist/confluent/tools/tool-metadata-handler.js +61 -0
  383. package/dist/confluent/tools/tool-metadata-handler.js.map +1 -0
  384. package/dist/confluent/tools/tool-name.d.ts +22 -3
  385. package/dist/confluent/tools/tool-name.d.ts.map +1 -1
  386. package/dist/confluent/tools/tool-name.js +21 -2
  387. package/dist/confluent/tools/tool-name.js.map +1 -1
  388. package/dist/confluent/tools/tool-registry.d.ts +1 -2
  389. package/dist/confluent/tools/tool-registry.d.ts.map +1 -1
  390. package/dist/confluent/tools/tool-registry.js +60 -7
  391. package/dist/confluent/tools/tool-registry.js.map +1 -1
  392. package/dist/env-schema.d.ts +1 -1
  393. package/dist/env-schema.d.ts.map +1 -1
  394. package/dist/env-schema.js +10 -12
  395. package/dist/env-schema.js.map +1 -1
  396. package/dist/env.d.ts +1 -1
  397. package/dist/index.d.ts +54 -64
  398. package/dist/index.d.ts.map +1 -1
  399. package/dist/index.js +78 -301
  400. package/dist/index.js.map +1 -1
  401. package/dist/lazy.d.ts +4 -2
  402. package/dist/lazy.d.ts.map +1 -1
  403. package/dist/lazy.js +27 -12
  404. package/dist/lazy.js.map +1 -1
  405. package/dist/mcp/server.d.ts.map +1 -1
  406. package/dist/mcp/server.js +9 -5
  407. package/dist/mcp/server.js.map +1 -1
  408. package/dist/preflight.d.ts +33 -0
  409. package/dist/preflight.d.ts.map +1 -0
  410. package/dist/preflight.js +68 -0
  411. package/dist/preflight.js.map +1 -0
  412. package/dist/server-main.d.ts +98 -0
  413. package/dist/server-main.d.ts.map +1 -0
  414. package/dist/server-main.js +383 -0
  415. package/dist/server-main.js.map +1 -0
  416. package/dist/server-runtime.d.ts +20 -5
  417. package/dist/server-runtime.d.ts.map +1 -1
  418. package/dist/server-runtime.js +45 -28
  419. package/dist/server-runtime.js.map +1 -1
  420. package/dist/utils/quote-join-ids.d.ts +9 -0
  421. package/dist/utils/quote-join-ids.d.ts.map +1 -0
  422. package/dist/utils/quote-join-ids.js +11 -0
  423. package/dist/utils/quote-join-ids.js.map +1 -0
  424. package/package.json +33 -34
  425. package/dist/confluent/tools/handlers/connect/read-connectors-handler.d.ts.map +0 -1
  426. package/dist/confluent/tools/handlers/connect/read-connectors-handler.js +0 -54
  427. package/dist/confluent/tools/handlers/connect/read-connectors-handler.js.map +0 -1
  428. package/dist/confluent/tools/handlers/flink/read-flink-statement-handler.d.ts.map +0 -1
  429. package/dist/confluent/tools/handlers/flink/read-flink-statement-handler.js.map +0 -1
@@ -17,57 +17,74 @@ export class ServerRuntime {
17
17
  * before any handler that needs Confluent access.
18
18
  */
19
19
  oauthHolder;
20
- constructor(config, clientManagers, oauthHolder = undefined) {
20
+ /**
21
+ * Tool names the operator's allow/block-list left enabled, or `undefined`
22
+ * when no list was configured (all tools allowed — cli.ts's default-on
23
+ * behavior). The `undefined`-means-unfiltered sentinel is this class's own
24
+ * business: callers ask {@link isToolAllowed} rather than branching on it.
25
+ */
26
+ allowedToolNames;
27
+ constructor(config, clientManagers, oauthHolder = undefined, allowedToolNames = undefined) {
21
28
  this.config = config;
22
29
  this.clientManagers = clientManagers;
23
30
  this.oauthHolder = oauthHolder;
31
+ this.allowedToolNames = allowedToolNames;
24
32
  }
25
33
  /**
26
- * Convenience accessor for the single-connection period.
27
- * Remove (or make multi-connection-aware) when issue #151 lands.
34
+ * Whether the operator's allow/block-list leaves `name` invokable. Always
35
+ * `true` when no list was configured. The single source of truth for the
36
+ * operator filter, shared by tool registration and the `list-configured-connections`
37
+ * tool so the advertised set and the reported set can never diverge.
28
38
  */
29
- get clientManager() {
30
- const managers = Object.values(this.clientManagers);
31
- if (managers.length === 0) {
32
- throw new Error("ServerRuntime has no client managers");
33
- }
34
- if (managers.length > 1) {
35
- // enforceSingleConnectionOnly() in config/models.ts should prevent this at parse time;
36
- // this guard is the runtime mirror of that constraint.
37
- throw new Error("ServerRuntime has multiple client managers; use clientManagers[id] directly");
39
+ isToolAllowed(name) {
40
+ return (this.allowedToolNames === undefined || this.allowedToolNames.has(name));
41
+ }
42
+ /**
43
+ * Disconnect every per-connection client manager — the teardown counterpart
44
+ * to the per-connection construction in {@link fromConfig}.
45
+ */
46
+ async disconnectAll() {
47
+ // allSettled, not all: a single manager's disconnect() rejection must not
48
+ // abandon its siblings mid-shutdown. Wait for every disconnect, then raise
49
+ // an AggregateError carrying all failures so no error is silently dropped.
50
+ const results = await Promise.allSettled(Object.values(this.clientManagers).map((manager) => manager.disconnect()));
51
+ const failures = results
52
+ .filter((r) => r.status === "rejected")
53
+ .map((r) => r.reason);
54
+ if (failures.length > 0) {
55
+ throw new AggregateError(failures, `Failed to disconnect ${failures.length} of ${results.length} client manager(s)`);
38
56
  }
39
- return managers[0];
40
57
  }
41
- static fromConfig(config) {
58
+ static fromConfig(config, allowedToolNames = undefined) {
42
59
  const oauthConns = Object.values(config.connections).filter((c) => c.type === "oauth");
43
60
  if (oauthConns.length > 1) {
44
- // `enforceSingleConnectionOnly()` already prevents this today; keep the
45
- // defensive check so that when multi-connection support lands (#151),
46
- // multi-OAuth is rejected explicitly rather than silently picking one.
61
+ // Only one OAuth connection is supported (the shared OAuthHolder owns a
62
+ // single CCloud identity). Reject multi-OAuth explicitly rather than
63
+ // silently picking one.
47
64
  throw new Error(`Multiple OAuth connections defined in configuration; only one is supported`);
48
65
  }
49
66
  const oauthConn = oauthConns[0];
50
67
  const oauthHolder = oauthConn
51
68
  ? new OAuthHolder(oauthConn.ccloud_env)
52
69
  : undefined;
53
- // Construct a client manager for each connection in the config.
54
- // (although currently there will only be one, see `enforceSingleConnectionOnly()`)
55
- // When OAuth is in play, every connection's manager is bearer-auth-backed by
56
- // the shared holder; otherwise, fall back to the per-connection direct factory.
70
+ // Construct a client manager per connection, keyed on the connection's own
71
+ // type — a direct connection always gets a DirectClientManager even when a
72
+ // sibling OAuth connection exists, so the epic's "OAuth Confluent Cloud +
73
+ // local Apache Kafka broker side by side" config wires each connection to a
74
+ // manager that can actually reach it.
57
75
  const clientManagers = Object.fromEntries(Object.entries(config.connections).map(([id, conn]) => {
58
- if (oauthHolder && oauthConn) {
76
+ if (conn.type === "oauth") {
77
+ if (!oauthHolder) {
78
+ throw new Error(`Wacky -- connection ${id} is oauth but no OAuthHolder was constructed`);
79
+ }
59
80
  return [
60
81
  id,
61
- new OAuthClientManager(oauthHolder, oauthConn.ccloud_env, oauthConn.kafka_debug),
82
+ new OAuthClientManager(oauthHolder, conn.ccloud_env, conn.kafka_debug),
62
83
  ];
63
84
  }
64
- // No OAuth connection found, so every connection is direct.
65
- if (conn.type !== "direct") {
66
- throw new Error(`Internal error: connection ${id} is not direct but no OAuth holder was constructed`);
67
- }
68
85
  return [id, constructDirectClientManager(conn)];
69
86
  }));
70
- return new ServerRuntime(config, clientManagers, oauthHolder);
87
+ return new ServerRuntime(config, clientManagers, oauthHolder, allowedToolNames);
71
88
  }
72
89
  }
73
90
  //# sourceMappingURL=server-runtime.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"server-runtime.js","sourceRoot":"","sources":["../src/server-runtime.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,4BAA4B,EAAE,MAAM,yCAAyC,CAAC;AACvF,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AAEnE;;;;GAIG;AACH,MAAM,OAAO,aAAa;IACf,MAAM,CAAyB;IAC/B,cAAc,CAAoC;IAC3D;;;;;;OAMG;IACM,WAAW,CAA0B;IAE9C,YACE,MAA8B,EAC9B,cAAiD,EACjD,cAAuC,SAAS;QAEhD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAED;;;OAGG;IACH,IAAI,aAAa;QACf,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACpD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC1D,CAAC;QACD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,uFAAuF;YACvF,uDAAuD;YACvD,MAAM,IAAI,KAAK,CACb,6EAA6E,CAC9E,CAAC;QACJ,CAAC;QACD,OAAO,QAAQ,CAAC,CAAC,CAAE,CAAC;IACtB,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,MAA8B;QAC9C,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,MAAM,CACzD,CAAC,CAAC,EAA8B,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CACtD,CAAC;QACF,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,wEAAwE;YACxE,sEAAsE;YACtE,uEAAuE;YACvE,MAAM,IAAI,KAAK,CACb,4EAA4E,CAC7E,CAAC;QACJ,CAAC;QACD,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAChC,MAAM,WAAW,GAAG,SAAS;YAC3B,CAAC,CAAC,IAAI,WAAW,CAAC,SAAS,CAAC,UAAU,CAAC;YACvC,CAAC,CAAC,SAAS,CAAC;QAEd,gEAAgE;QAChE,mFAAmF;QACnF,6EAA6E;QAC7E,gFAAgF;QAChF,MAAM,cAAc,GAAG,MAAM,CAAC,WAAW,CACvC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE;YACpD,IAAI,WAAW,IAAI,SAAS,EAAE,CAAC;gBAC7B,OAAO;oBACL,EAAE;oBACF,IAAI,kBAAkB,CACpB,WAAW,EACX,SAAS,CAAC,UAAU,EACpB,SAAS,CAAC,WAAW,CACtB;iBACO,CAAC;YACb,CAAC;YACD,4DAA4D;YAC5D,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CACb,8BAA8B,EAAE,oDAAoD,CACrF,CAAC;YACJ,CAAC;YACD,OAAO,CAAC,EAAE,EAAE,4BAA4B,CAAC,IAAI,CAAC,CAAU,CAAC;QAC3D,CAAC,CAAC,CACH,CAAC;QACF,OAAO,IAAI,aAAa,CAAC,MAAM,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC;IAChE,CAAC;CACF"}
1
+ {"version":3,"file":"server-runtime.js","sourceRoot":"","sources":["../src/server-runtime.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Render a list of ids as a double-quoted, comma-separated string for prose
3
+ * (tool descriptions, error messages). The quoting keeps the list unambiguous
4
+ * when an id contains a comma; contained double quotes are backslash-escaped so
5
+ * the wrapping itself stays unambiguous. Returns "" for an empty list, so a
6
+ * caller wanting a placeholder can write `quoteJoinIds(ids) || "none"`.
7
+ */
8
+ export declare function quoteJoinIds(ids: readonly string[]): string;
9
+ //# sourceMappingURL=quote-join-ids.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quote-join-ids.d.ts","sourceRoot":"","sources":["../../src/utils/quote-join-ids.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAE3D"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Render a list of ids as a double-quoted, comma-separated string for prose
3
+ * (tool descriptions, error messages). The quoting keeps the list unambiguous
4
+ * when an id contains a comma; contained double quotes are backslash-escaped so
5
+ * the wrapping itself stays unambiguous. Returns "" for an empty list, so a
6
+ * caller wanting a placeholder can write `quoteJoinIds(ids) || "none"`.
7
+ */
8
+ export function quoteJoinIds(ids) {
9
+ return ids.map((id) => `"${id.replaceAll('"', '\\"')}"`).join(", ");
10
+ }
11
+ //# sourceMappingURL=quote-join-ids.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quote-join-ids.js","sourceRoot":"","sources":["../../src/utils/quote-join-ids.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAAC,GAAsB;IACjD,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACtE,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@confluentinc/mcp-confluent",
3
3
  "description": "Confluent MCP Server",
4
- "version": "1.3.0",
4
+ "version": "1.5.0",
5
5
  "author": "Confluent Inc.",
6
6
  "license": "MIT",
7
7
  "repository": {
@@ -23,33 +23,6 @@
23
23
  "url": "https://github.com/confluentinc/mcp-confluent/issues"
24
24
  },
25
25
  "homepage": "https://www.confluent.io/blog/ai-agents-using-anthropic-mcp/",
26
- "scripts": {
27
- "dev": "concurrently \"tsc -p tsconfig.build.json --watch\" \"tsc-alias -p tsconfig.build.json --watch\"",
28
- "test": "npm run build && vitest run",
29
- "test:coverage": "npm run test -- --coverage",
30
- "test:unit": "vitest run --project unit --outputFile.junit=TEST-unit.xml",
31
- "test:unit:coverage": "npm run test:unit -- --coverage",
32
- "test:unit:watch": "vitest --project unit",
33
- "test:integration": "npm run build && vitest run --project integration --outputFile.junit=TEST-integration.xml",
34
- "test:integration:coverage": "npm run test:integration -- --coverage",
35
- "test:harness": "vitest run --project harness --reporter=verbose",
36
- "typecheck": "tsc --noEmit",
37
- "start": "node dist/index.js --env-file .env",
38
- "start:http": "node dist/index.js --env-file .env --transport http",
39
- "start:sse": "node dist/index.js --env-file .env --transport sse",
40
- "start:all": "node dist/index.js --env-file .env --transport http,sse,stdio",
41
- "help": "node dist/index.js -h",
42
- "lint": "eslint .",
43
- "lint:fix": "eslint . --fix",
44
- "format": "prettier --write \"**/*.+(js|ts|json)\"",
45
- "build": "tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json",
46
- "generate:openapi-types": "openapi-typescript ./openapi.json -o ./src/confluent/openapi-schema.d.ts --empty-objects-unknown",
47
- "print:schema": "node dist/print-md-schema.js",
48
- "inspector": "npx @modelcontextprotocol/inspector node dist/index.js --env-file .env",
49
- "inspector:yaml": "node scripts/inspector-yaml.mjs",
50
- "prepare": "husky",
51
- "prepack": "npm run build && node scripts/inject-build-config.mjs"
52
- },
53
26
  "devDependencies": {
54
27
  "@eslint/js": "^9.29.0",
55
28
  "@types/content-type": "^1.1.9",
@@ -68,6 +41,7 @@
68
41
  "globals": "^16.2.0",
69
42
  "husky": "^9.1.7",
70
43
  "openapi-typescript": "^7.8.0",
44
+ "playwright-core": "^1.60.0",
71
45
  "prettier": "3.6.1",
72
46
  "prettier-plugin-organize-imports": "^4.3.0",
73
47
  "tsc-alias": "^1.8.16",
@@ -76,9 +50,10 @@
76
50
  "vitest": "^4.1.0"
77
51
  },
78
52
  "dependencies": {
53
+ "@bufbuild/protobuf": "^2.12.0",
79
54
  "@commander-js/extra-typings": "^14.0.0",
80
55
  "@confluentinc/kafka-javascript": "^1.3.2",
81
- "@confluentinc/schemaregistry": "^1.3.1",
56
+ "@confluentinc/schemaregistry": "^1.9.1",
82
57
  "@fastify/swagger": "^9.5.1",
83
58
  "@fastify/swagger-ui": "^5.2.3",
84
59
  "@modelcontextprotocol/sdk": "^1.27.1",
@@ -92,10 +67,9 @@
92
67
  "pino": "^10.1.0",
93
68
  "pino-pretty": "^13.1.3",
94
69
  "properties-file": "^3.5.12",
70
+ "protobufjs": "^8.6.3",
95
71
  "turndown": "^7.2.4",
96
- "yaml": "^2.8.3"
97
- },
98
- "overrides": {
72
+ "yaml": "^2.8.3",
99
73
  "zod": "^4.0"
100
74
  },
101
75
  "files": [
@@ -105,6 +79,31 @@
105
79
  "assets/oauth-templates"
106
80
  ],
107
81
  "engines": {
108
- "node": ">=22"
82
+ "node": ">=22.19.0"
83
+ },
84
+ "scripts": {
85
+ "dev": "concurrently \"tsc -p tsconfig.build.json --watch\" \"tsc-alias -p tsconfig.build.json --watch\"",
86
+ "test": "pnpm run build && vitest run",
87
+ "test:coverage": "pnpm run test --coverage",
88
+ "test:unit": "vitest run --project unit --outputFile.junit=TEST-unit.xml",
89
+ "test:unit:coverage": "pnpm run test:unit --coverage",
90
+ "test:unit:watch": "vitest --project unit",
91
+ "test:integration": "pnpm run build && vitest run --project integration --outputFile.junit=TEST-integration.xml",
92
+ "test:integration:coverage": "pnpm run test:integration --coverage",
93
+ "test:harness": "vitest run --project harness --reporter=verbose",
94
+ "typecheck": "tsc --noEmit",
95
+ "start": "node dist/index.js --env-file .env",
96
+ "start:http": "node dist/index.js --env-file .env --transport http",
97
+ "start:sse": "node dist/index.js --env-file .env --transport sse",
98
+ "start:all": "node dist/index.js --env-file .env --transport http,sse,stdio",
99
+ "help": "node dist/index.js -h",
100
+ "lint": "eslint .",
101
+ "lint:fix": "eslint . --fix",
102
+ "format": "prettier --write \"**/*.+(js|ts|json)\"",
103
+ "build": "tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json",
104
+ "generate:openapi-types": "openapi-typescript ./openapi.json -o ./src/confluent/openapi-schema.d.ts --empty-objects-unknown",
105
+ "print:schema": "node dist/print-md-schema.js",
106
+ "inspector": "npx @modelcontextprotocol/inspector node dist/index.js --env-file .env",
107
+ "inspector:yaml": "node scripts/inspector-yaml.mjs"
109
108
  }
110
- }
109
+ }
@@ -1 +0,0 @@
1
- {"version":3,"file":"read-connectors-handler.d.ts","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/connect/read-connectors-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAa,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,+DAA+D,CAAC;AAEnG,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAwBvD,yDAAyD;AACzD,qBAAa,oBAAqB,SAAQ,kBAAkB;IACpD,MAAM,CACV,OAAO,EAAE,aAAa,EACtB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GACjD,OAAO,CAAC,cAAc,CAAC;IAkC1B,aAAa,IAAI,UAAU;CAQ5B"}
@@ -1,54 +0,0 @@
1
- import { READ_ONLY } from "../../../../confluent/tools/base-tools.js";
2
- import { ConnectToolHandler } from "../../../../confluent/tools/handlers/connect/connect-tool-handler.js";
3
- import { ToolName } from "../../../../confluent/tools/tool-name.js";
4
- import { wrapAsPathBasedClient } from "openapi-fetch";
5
- import { z } from "zod";
6
- const readConnectorArguments = z.object({
7
- environmentId: z
8
- .string()
9
- .trim()
10
- .optional()
11
- .describe("The unique identifier for the environment this resource belongs to."),
12
- clusterId: z
13
- .string()
14
- .trim()
15
- .optional()
16
- .describe("The unique identifier for the Kafka cluster."),
17
- connectorName: z
18
- .string()
19
- .trim()
20
- .nonempty()
21
- .describe("The unique name of the connector."),
22
- });
23
- /** Fetches full details for a single named connector. */
24
- export class ReadConnectorHandler extends ConnectToolHandler {
25
- async handle(runtime, toolArguments) {
26
- const clientManager = runtime.clientManager;
27
- const { clusterId, environmentId, connectorName } = readConnectorArguments.parse(toolArguments);
28
- const conn = runtime.config.getSoleDirectConnection();
29
- const { environment_id, kafka_cluster_id } = this.resolveConnectEnvAndClusterId(conn, environmentId, clusterId);
30
- const pathBasedClient = wrapAsPathBasedClient(clientManager.getConfluentCloudRestClient());
31
- const { data: response, error } = await pathBasedClient["/connect/v1/environments/{environment_id}/clusters/{kafka_cluster_id}/connectors/{connector_name}"].GET({
32
- params: {
33
- path: {
34
- connector_name: connectorName,
35
- environment_id,
36
- kafka_cluster_id,
37
- },
38
- },
39
- });
40
- if (error) {
41
- return this.createResponse(`Failed to get information about connector ${connectorName}: ${JSON.stringify(error)}`, true);
42
- }
43
- return this.createResponse(`Connector Details for ${connectorName}: ${JSON.stringify(response)}`);
44
- }
45
- getToolConfig() {
46
- return {
47
- name: ToolName.READ_CONNECTOR,
48
- description: "Get information about the connector.",
49
- inputSchema: readConnectorArguments.shape,
50
- annotations: READ_ONLY,
51
- };
52
- }
53
- }
54
- //# sourceMappingURL=read-connectors-handler.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"read-connectors-handler.js","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/connect/read-connectors-handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAc,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,+DAA+D,CAAC;AACnG,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,aAAa,EAAE,CAAC;SACb,MAAM,EAAE;SACR,IAAI,EAAE;SACN,QAAQ,EAAE;SACV,QAAQ,CACP,qEAAqE,CACtE;IACH,SAAS,EAAE,CAAC;SACT,MAAM,EAAE;SACR,IAAI,EAAE;SACN,QAAQ,EAAE;SACV,QAAQ,CAAC,8CAA8C,CAAC;IAC3D,aAAa,EAAE,CAAC;SACb,MAAM,EAAE;SACR,IAAI,EAAE;SACN,QAAQ,EAAE;SACV,QAAQ,CAAC,mCAAmC,CAAC;CACjD,CAAC,CAAC;AAEH,yDAAyD;AACzD,MAAM,OAAO,oBAAqB,SAAQ,kBAAkB;IAC1D,KAAK,CAAC,MAAM,CACV,OAAsB,EACtB,aAAkD;QAElD,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;QAC5C,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,EAAE,GAC/C,sBAAsB,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAE9C,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,uBAAuB,EAAE,CAAC;QACtD,MAAM,EAAE,cAAc,EAAE,gBAAgB,EAAE,GACxC,IAAI,CAAC,6BAA6B,CAAC,IAAI,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;QAErE,MAAM,eAAe,GAAG,qBAAqB,CAC3C,aAAa,CAAC,2BAA2B,EAAE,CAC5C,CAAC;QACF,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,MAAM,eAAe,CACrD,mGAAmG,CACpG,CAAC,GAAG,CAAC;YACJ,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,cAAc,EAAE,aAAa;oBAC7B,cAAc;oBACd,gBAAgB;iBACjB;aACF;SACF,CAAC,CAAC;QACH,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,IAAI,CAAC,cAAc,CACxB,6CAA6C,aAAa,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EACtF,IAAI,CACL,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CACxB,yBAAyB,aAAa,KAAK,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CACtE,CAAC;IACJ,CAAC;IAED,aAAa;QACX,OAAO;YACL,IAAI,EAAE,QAAQ,CAAC,cAAc;YAC7B,WAAW,EAAE,sCAAsC;YACnD,WAAW,EAAE,sBAAsB,CAAC,KAAK;YACzC,WAAW,EAAE,SAAS;SACvB,CAAC;IACJ,CAAC;CACF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"read-flink-statement-handler.d.ts","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/flink/read-flink-statement-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAa,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,2DAA2D,CAAC;AAE7F,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAoCvD,qBAAa,yBAA0B,SAAQ,gBAAgB;IACvD,MAAM,CACV,OAAO,EAAE,aAAa,EACtB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GACjD,OAAO,CAAC,cAAc,CAAC;IA6D1B,aAAa,IAAI,UAAU;CAQ5B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"read-flink-statement-handler.js","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/flink/read-flink-statement-handler.ts"],"names":[],"mappings":"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"}