@confluentinc/mcp-confluent 1.2.2 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (428) hide show
  1. package/README.md +171 -193
  2. package/assets/oauth-templates/callback-failure.html +22 -0
  3. package/assets/oauth-templates/callback-success.html +19 -0
  4. package/assets/oauth-templates/logo.html +91 -0
  5. package/assets/oauth-templates/styles.html +49 -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 +473 -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 +396 -0
  25. package/dist/config/models.d.ts.map +1 -0
  26. package/dist/config/models.js +401 -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 +100 -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 +146 -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 +32 -39
  53. package/dist/confluent/node-deps.d.ts.map +1 -1
  54. package/dist/confluent/node-deps.js +42 -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 +5 -0
  65. package/dist/confluent/oauth/callback-pages.d.ts.map +1 -0
  66. package/dist/confluent/oauth/callback-pages.js +38 -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 +26 -0
  81. package/dist/confluent/oauth/pkce-login.d.ts.map +1 -0
  82. package/dist/confluent/oauth/pkce-login.js +161 -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/telemetry.d.ts +32 -1
  105. package/dist/confluent/telemetry.d.ts.map +1 -1
  106. package/dist/confluent/telemetry.js +31 -8
  107. package/dist/confluent/telemetry.js.map +1 -1
  108. package/dist/confluent/tools/base-tools.d.ts +98 -23
  109. package/dist/confluent/tools/base-tools.d.ts.map +1 -1
  110. package/dist/confluent/tools/base-tools.js +62 -4
  111. package/dist/confluent/tools/base-tools.js.map +1 -1
  112. package/dist/confluent/tools/cluster-arg-resolvers.d.ts +75 -0
  113. package/dist/confluent/tools/cluster-arg-resolvers.d.ts.map +1 -0
  114. package/dist/confluent/tools/cluster-arg-resolvers.js +127 -0
  115. package/dist/confluent/tools/cluster-arg-resolvers.js.map +1 -0
  116. package/dist/confluent/tools/connection-predicates.d.ts +168 -0
  117. package/dist/confluent/tools/connection-predicates.d.ts.map +1 -0
  118. package/dist/confluent/tools/connection-predicates.js +273 -0
  119. package/dist/confluent/tools/connection-predicates.js.map +1 -0
  120. package/dist/confluent/tools/handlers/billing/list-billing-costs-handler.d.ts +3 -5
  121. package/dist/confluent/tools/handlers/billing/list-billing-costs-handler.d.ts.map +1 -1
  122. package/dist/confluent/tools/handlers/billing/list-billing-costs-handler.js +4 -8
  123. package/dist/confluent/tools/handlers/billing/list-billing-costs-handler.js.map +1 -1
  124. package/dist/confluent/tools/handlers/catalog/add-tags-to-topic.d.ts +4 -5
  125. package/dist/confluent/tools/handlers/catalog/add-tags-to-topic.d.ts.map +1 -1
  126. package/dist/confluent/tools/handlers/catalog/add-tags-to-topic.js +4 -8
  127. package/dist/confluent/tools/handlers/catalog/add-tags-to-topic.js.map +1 -1
  128. package/dist/confluent/tools/handlers/catalog/create-topic-tags.d.ts +4 -5
  129. package/dist/confluent/tools/handlers/catalog/create-topic-tags.d.ts.map +1 -1
  130. package/dist/confluent/tools/handlers/catalog/create-topic-tags.js +4 -8
  131. package/dist/confluent/tools/handlers/catalog/create-topic-tags.js.map +1 -1
  132. package/dist/confluent/tools/handlers/catalog/delete-tag.d.ts +4 -5
  133. package/dist/confluent/tools/handlers/catalog/delete-tag.d.ts.map +1 -1
  134. package/dist/confluent/tools/handlers/catalog/delete-tag.js +4 -8
  135. package/dist/confluent/tools/handlers/catalog/delete-tag.js.map +1 -1
  136. package/dist/confluent/tools/handlers/catalog/list-tags.d.ts +4 -5
  137. package/dist/confluent/tools/handlers/catalog/list-tags.d.ts.map +1 -1
  138. package/dist/confluent/tools/handlers/catalog/list-tags.js +4 -8
  139. package/dist/confluent/tools/handlers/catalog/list-tags.js.map +1 -1
  140. package/dist/confluent/tools/handlers/catalog/remove-tag-from-entity.d.ts +4 -5
  141. package/dist/confluent/tools/handlers/catalog/remove-tag-from-entity.d.ts.map +1 -1
  142. package/dist/confluent/tools/handlers/catalog/remove-tag-from-entity.js +4 -8
  143. package/dist/confluent/tools/handlers/catalog/remove-tag-from-entity.js.map +1 -1
  144. package/dist/confluent/tools/handlers/clusters/list-clusters-handler.d.ts +3 -5
  145. package/dist/confluent/tools/handlers/clusters/list-clusters-handler.d.ts.map +1 -1
  146. package/dist/confluent/tools/handlers/clusters/list-clusters-handler.js +9 -12
  147. package/dist/confluent/tools/handlers/clusters/list-clusters-handler.js.map +1 -1
  148. package/dist/confluent/tools/handlers/connect/connect-tool-handler.d.ts +21 -0
  149. package/dist/confluent/tools/handlers/connect/connect-tool-handler.d.ts.map +1 -0
  150. package/dist/confluent/tools/handlers/connect/connect-tool-handler.js +22 -0
  151. package/dist/confluent/tools/handlers/connect/connect-tool-handler.js.map +1 -0
  152. package/dist/confluent/tools/handlers/connect/create-connector-handler.d.ts +11 -7
  153. package/dist/confluent/tools/handlers/connect/create-connector-handler.d.ts.map +1 -1
  154. package/dist/confluent/tools/handlers/connect/create-connector-handler.js +21 -21
  155. package/dist/confluent/tools/handlers/connect/create-connector-handler.js.map +1 -1
  156. package/dist/confluent/tools/handlers/connect/delete-connector-handler.d.ts +6 -7
  157. package/dist/confluent/tools/handlers/connect/delete-connector-handler.d.ts.map +1 -1
  158. package/dist/confluent/tools/handlers/connect/delete-connector-handler.js +10 -15
  159. package/dist/confluent/tools/handlers/connect/delete-connector-handler.js.map +1 -1
  160. package/dist/confluent/tools/handlers/connect/list-connectors-handler.d.ts +6 -7
  161. package/dist/confluent/tools/handlers/connect/list-connectors-handler.d.ts.map +1 -1
  162. package/dist/confluent/tools/handlers/connect/list-connectors-handler.js +15 -17
  163. package/dist/confluent/tools/handlers/connect/list-connectors-handler.js.map +1 -1
  164. package/dist/confluent/tools/handlers/connect/read-connectors-handler.d.ts +6 -7
  165. package/dist/confluent/tools/handlers/connect/read-connectors-handler.d.ts.map +1 -1
  166. package/dist/confluent/tools/handlers/connect/read-connectors-handler.js +10 -15
  167. package/dist/confluent/tools/handlers/connect/read-connectors-handler.js.map +1 -1
  168. package/dist/confluent/tools/handlers/diagnostics/explain-disabled-tools-handler.d.ts +57 -0
  169. package/dist/confluent/tools/handlers/diagnostics/explain-disabled-tools-handler.d.ts.map +1 -0
  170. package/dist/confluent/tools/handlers/diagnostics/explain-disabled-tools-handler.js +122 -0
  171. package/dist/confluent/tools/handlers/diagnostics/explain-disabled-tools-handler.js.map +1 -0
  172. package/dist/confluent/tools/handlers/docs/get-product-doc-page-handler.d.ts +17 -0
  173. package/dist/confluent/tools/handlers/docs/get-product-doc-page-handler.d.ts.map +1 -0
  174. package/dist/confluent/tools/handlers/docs/get-product-doc-page-handler.js +234 -0
  175. package/dist/confluent/tools/handlers/docs/get-product-doc-page-handler.js.map +1 -0
  176. package/dist/confluent/tools/handlers/docs/search-product-docs-handler.d.ts +13 -0
  177. package/dist/confluent/tools/handlers/docs/search-product-docs-handler.d.ts.map +1 -0
  178. package/dist/confluent/tools/handlers/docs/search-product-docs-handler.js +285 -0
  179. package/dist/confluent/tools/handlers/docs/search-product-docs-handler.js.map +1 -0
  180. package/dist/confluent/tools/handlers/environments/list-environments-handler.d.ts +3 -5
  181. package/dist/confluent/tools/handlers/environments/list-environments-handler.d.ts.map +1 -1
  182. package/dist/confluent/tools/handlers/environments/list-environments-handler.js +4 -8
  183. package/dist/confluent/tools/handlers/environments/list-environments-handler.js.map +1 -1
  184. package/dist/confluent/tools/handlers/environments/read-environment-handler.d.ts +3 -5
  185. package/dist/confluent/tools/handlers/environments/read-environment-handler.d.ts.map +1 -1
  186. package/dist/confluent/tools/handlers/environments/read-environment-handler.js +4 -8
  187. package/dist/confluent/tools/handlers/environments/read-environment-handler.js.map +1 -1
  188. package/dist/confluent/tools/handlers/flink/catalog/catalog-resolver.d.ts +16 -9
  189. package/dist/confluent/tools/handlers/flink/catalog/catalog-resolver.d.ts.map +1 -1
  190. package/dist/confluent/tools/handlers/flink/catalog/catalog-resolver.js +18 -12
  191. package/dist/confluent/tools/handlers/flink/catalog/catalog-resolver.js.map +1 -1
  192. package/dist/confluent/tools/handlers/flink/catalog/describe-table-handler.d.ts +5 -7
  193. package/dist/confluent/tools/handlers/flink/catalog/describe-table-handler.d.ts.map +1 -1
  194. package/dist/confluent/tools/handlers/flink/catalog/describe-table-handler.js +15 -21
  195. package/dist/confluent/tools/handlers/flink/catalog/describe-table-handler.js.map +1 -1
  196. package/dist/confluent/tools/handlers/flink/catalog/flink-catalog-tool-handler.d.ts +14 -0
  197. package/dist/confluent/tools/handlers/flink/catalog/flink-catalog-tool-handler.d.ts.map +1 -0
  198. package/dist/confluent/tools/handlers/flink/catalog/flink-catalog-tool-handler.js +15 -0
  199. package/dist/confluent/tools/handlers/flink/catalog/flink-catalog-tool-handler.js.map +1 -0
  200. package/dist/confluent/tools/handlers/flink/catalog/get-table-info-handler.d.ts +5 -7
  201. package/dist/confluent/tools/handlers/flink/catalog/get-table-info-handler.d.ts.map +1 -1
  202. package/dist/confluent/tools/handlers/flink/catalog/get-table-info-handler.js +15 -21
  203. package/dist/confluent/tools/handlers/flink/catalog/get-table-info-handler.js.map +1 -1
  204. package/dist/confluent/tools/handlers/flink/catalog/list-catalogs-handler.d.ts +5 -7
  205. package/dist/confluent/tools/handlers/flink/catalog/list-catalogs-handler.d.ts.map +1 -1
  206. package/dist/confluent/tools/handlers/flink/catalog/list-catalogs-handler.js +12 -20
  207. package/dist/confluent/tools/handlers/flink/catalog/list-catalogs-handler.js.map +1 -1
  208. package/dist/confluent/tools/handlers/flink/catalog/list-databases-handler.d.ts +5 -7
  209. package/dist/confluent/tools/handlers/flink/catalog/list-databases-handler.d.ts.map +1 -1
  210. package/dist/confluent/tools/handlers/flink/catalog/list-databases-handler.js +12 -20
  211. package/dist/confluent/tools/handlers/flink/catalog/list-databases-handler.js.map +1 -1
  212. package/dist/confluent/tools/handlers/flink/catalog/list-tables-handler.d.ts +5 -7
  213. package/dist/confluent/tools/handlers/flink/catalog/list-tables-handler.d.ts.map +1 -1
  214. package/dist/confluent/tools/handlers/flink/catalog/list-tables-handler.js +13 -29
  215. package/dist/confluent/tools/handlers/flink/catalog/list-tables-handler.js.map +1 -1
  216. package/dist/confluent/tools/handlers/flink/create-flink-statement-handler.d.ts +5 -7
  217. package/dist/confluent/tools/handlers/flink/create-flink-statement-handler.d.ts.map +1 -1
  218. package/dist/confluent/tools/handlers/flink/create-flink-statement-handler.js +18 -23
  219. package/dist/confluent/tools/handlers/flink/create-flink-statement-handler.js.map +1 -1
  220. package/dist/confluent/tools/handlers/flink/delete-flink-statement-handler.d.ts +5 -7
  221. package/dist/confluent/tools/handlers/flink/delete-flink-statement-handler.d.ts.map +1 -1
  222. package/dist/confluent/tools/handlers/flink/delete-flink-statement-handler.js +7 -13
  223. package/dist/confluent/tools/handlers/flink/delete-flink-statement-handler.js.map +1 -1
  224. package/dist/confluent/tools/handlers/flink/diagnostics/check-health-handler.d.ts +5 -7
  225. package/dist/confluent/tools/handlers/flink/diagnostics/check-health-handler.d.ts.map +1 -1
  226. package/dist/confluent/tools/handlers/flink/diagnostics/check-health-handler.js +7 -13
  227. package/dist/confluent/tools/handlers/flink/diagnostics/check-health-handler.js.map +1 -1
  228. package/dist/confluent/tools/handlers/flink/diagnostics/detect-issues-handler.d.ts +5 -7
  229. package/dist/confluent/tools/handlers/flink/diagnostics/detect-issues-handler.d.ts.map +1 -1
  230. package/dist/confluent/tools/handlers/flink/diagnostics/detect-issues-handler.js +8 -15
  231. package/dist/confluent/tools/handlers/flink/diagnostics/detect-issues-handler.js.map +1 -1
  232. package/dist/confluent/tools/handlers/flink/diagnostics/metrics-helper.d.ts +2 -2
  233. package/dist/confluent/tools/handlers/flink/diagnostics/metrics-helper.d.ts.map +1 -1
  234. package/dist/confluent/tools/handlers/flink/diagnostics/metrics-helper.js.map +1 -1
  235. package/dist/confluent/tools/handlers/flink/diagnostics/query-profiler-handler.d.ts +7 -7
  236. package/dist/confluent/tools/handlers/flink/diagnostics/query-profiler-handler.d.ts.map +1 -1
  237. package/dist/confluent/tools/handlers/flink/diagnostics/query-profiler-handler.js +11 -17
  238. package/dist/confluent/tools/handlers/flink/diagnostics/query-profiler-handler.js.map +1 -1
  239. package/dist/confluent/tools/handlers/flink/flink-sql-helper.d.ts +2 -2
  240. package/dist/confluent/tools/handlers/flink/flink-sql-helper.d.ts.map +1 -1
  241. package/dist/confluent/tools/handlers/flink/flink-sql-helper.js.map +1 -1
  242. package/dist/confluent/tools/handlers/flink/flink-tool-handler.d.ts +21 -0
  243. package/dist/confluent/tools/handlers/flink/flink-tool-handler.d.ts.map +1 -0
  244. package/dist/confluent/tools/handlers/flink/flink-tool-handler.js +31 -0
  245. package/dist/confluent/tools/handlers/flink/flink-tool-handler.js.map +1 -0
  246. package/dist/confluent/tools/handlers/flink/get-flink-exceptions-handler.d.ts +5 -7
  247. package/dist/confluent/tools/handlers/flink/get-flink-exceptions-handler.d.ts.map +1 -1
  248. package/dist/confluent/tools/handlers/flink/get-flink-exceptions-handler.js +7 -13
  249. package/dist/confluent/tools/handlers/flink/get-flink-exceptions-handler.js.map +1 -1
  250. package/dist/confluent/tools/handlers/flink/list-flink-statements-handler.d.ts +5 -7
  251. package/dist/confluent/tools/handlers/flink/list-flink-statements-handler.d.ts.map +1 -1
  252. package/dist/confluent/tools/handlers/flink/list-flink-statements-handler.js +9 -16
  253. package/dist/confluent/tools/handlers/flink/list-flink-statements-handler.js.map +1 -1
  254. package/dist/confluent/tools/handlers/flink/read-flink-statement-handler.d.ts +5 -7
  255. package/dist/confluent/tools/handlers/flink/read-flink-statement-handler.d.ts.map +1 -1
  256. package/dist/confluent/tools/handlers/flink/read-flink-statement-handler.js +7 -13
  257. package/dist/confluent/tools/handlers/flink/read-flink-statement-handler.js.map +1 -1
  258. package/dist/confluent/tools/handlers/kafka/alter-topic-config.d.ts +3 -5
  259. package/dist/confluent/tools/handlers/kafka/alter-topic-config.d.ts.map +1 -1
  260. package/dist/confluent/tools/handlers/kafka/alter-topic-config.js +20 -19
  261. package/dist/confluent/tools/handlers/kafka/alter-topic-config.js.map +1 -1
  262. package/dist/confluent/tools/handlers/kafka/consume-kafka-messages-handler.d.ts +5 -4
  263. package/dist/confluent/tools/handlers/kafka/consume-kafka-messages-handler.d.ts.map +1 -1
  264. package/dist/confluent/tools/handlers/kafka/consume-kafka-messages-handler.js +23 -16
  265. package/dist/confluent/tools/handlers/kafka/consume-kafka-messages-handler.js.map +1 -1
  266. package/dist/confluent/tools/handlers/kafka/create-topics-handler.d.ts +3 -4
  267. package/dist/confluent/tools/handlers/kafka/create-topics-handler.d.ts.map +1 -1
  268. package/dist/confluent/tools/handlers/kafka/create-topics-handler.js +50 -14
  269. package/dist/confluent/tools/handlers/kafka/create-topics-handler.js.map +1 -1
  270. package/dist/confluent/tools/handlers/kafka/delete-topics-handler.d.ts +3 -4
  271. package/dist/confluent/tools/handlers/kafka/delete-topics-handler.d.ts.map +1 -1
  272. package/dist/confluent/tools/handlers/kafka/delete-topics-handler.js +24 -7
  273. package/dist/confluent/tools/handlers/kafka/delete-topics-handler.js.map +1 -1
  274. package/dist/confluent/tools/handlers/kafka/get-topic-config.d.ts +3 -5
  275. package/dist/confluent/tools/handlers/kafka/get-topic-config.d.ts.map +1 -1
  276. package/dist/confluent/tools/handlers/kafka/get-topic-config.js +20 -19
  277. package/dist/confluent/tools/handlers/kafka/get-topic-config.js.map +1 -1
  278. package/dist/confluent/tools/handlers/kafka/list-topics-handler.d.ts +3 -4
  279. package/dist/confluent/tools/handlers/kafka/list-topics-handler.d.ts.map +1 -1
  280. package/dist/confluent/tools/handlers/kafka/list-topics-handler.js +23 -9
  281. package/dist/confluent/tools/handlers/kafka/list-topics-handler.js.map +1 -1
  282. package/dist/confluent/tools/handlers/kafka/produce-kafka-message-handler.d.ts +3 -4
  283. package/dist/confluent/tools/handlers/kafka/produce-kafka-message-handler.d.ts.map +1 -1
  284. package/dist/confluent/tools/handlers/kafka/produce-kafka-message-handler.js +51 -32
  285. package/dist/confluent/tools/handlers/kafka/produce-kafka-message-handler.js.map +1 -1
  286. package/dist/confluent/tools/handlers/metrics/list-metrics-handler.d.ts +4 -5
  287. package/dist/confluent/tools/handlers/metrics/list-metrics-handler.d.ts.map +1 -1
  288. package/dist/confluent/tools/handlers/metrics/list-metrics-handler.js +4 -8
  289. package/dist/confluent/tools/handlers/metrics/list-metrics-handler.js.map +1 -1
  290. package/dist/confluent/tools/handlers/metrics/query-metrics-handler.d.ts +22 -5
  291. package/dist/confluent/tools/handlers/metrics/query-metrics-handler.d.ts.map +1 -1
  292. package/dist/confluent/tools/handlers/metrics/query-metrics-handler.js +86 -52
  293. package/dist/confluent/tools/handlers/metrics/query-metrics-handler.js.map +1 -1
  294. package/dist/confluent/tools/handlers/organizations/list-organizations-handler.d.ts +49 -0
  295. package/dist/confluent/tools/handlers/organizations/list-organizations-handler.d.ts.map +1 -0
  296. package/dist/confluent/tools/handlers/organizations/list-organizations-handler.js +115 -0
  297. package/dist/confluent/tools/handlers/organizations/list-organizations-handler.js.map +1 -0
  298. package/dist/confluent/tools/handlers/schema/delete-schema-handler.d.ts +3 -4
  299. package/dist/confluent/tools/handlers/schema/delete-schema-handler.d.ts.map +1 -1
  300. package/dist/confluent/tools/handlers/schema/delete-schema-handler.js +11 -7
  301. package/dist/confluent/tools/handlers/schema/delete-schema-handler.js.map +1 -1
  302. package/dist/confluent/tools/handlers/schema/list-schemas-handler.d.ts +3 -4
  303. package/dist/confluent/tools/handlers/schema/list-schemas-handler.d.ts.map +1 -1
  304. package/dist/confluent/tools/handlers/schema/list-schemas-handler.js +11 -6
  305. package/dist/confluent/tools/handlers/schema/list-schemas-handler.js.map +1 -1
  306. package/dist/confluent/tools/handlers/search/search-topic-by-tag-handler.d.ts +4 -5
  307. package/dist/confluent/tools/handlers/search/search-topic-by-tag-handler.d.ts.map +1 -1
  308. package/dist/confluent/tools/handlers/search/search-topic-by-tag-handler.js +4 -8
  309. package/dist/confluent/tools/handlers/search/search-topic-by-tag-handler.js.map +1 -1
  310. package/dist/confluent/tools/handlers/search/search-topics-by-name-handler.d.ts +4 -5
  311. package/dist/confluent/tools/handlers/search/search-topics-by-name-handler.d.ts.map +1 -1
  312. package/dist/confluent/tools/handlers/search/search-topics-by-name-handler.js +4 -8
  313. package/dist/confluent/tools/handlers/search/search-topics-by-name-handler.js.map +1 -1
  314. package/dist/confluent/tools/handlers/tableflow/catalog/create-tableflow-catalog-integration-handler.d.ts +5 -7
  315. package/dist/confluent/tools/handlers/tableflow/catalog/create-tableflow-catalog-integration-handler.d.ts.map +1 -1
  316. package/dist/confluent/tools/handlers/tableflow/catalog/create-tableflow-catalog-integration-handler.js +17 -13
  317. package/dist/confluent/tools/handlers/tableflow/catalog/create-tableflow-catalog-integration-handler.js.map +1 -1
  318. package/dist/confluent/tools/handlers/tableflow/catalog/delete-tableflow-catalog-integration-handler.d.ts +5 -7
  319. package/dist/confluent/tools/handlers/tableflow/catalog/delete-tableflow-catalog-integration-handler.d.ts.map +1 -1
  320. package/dist/confluent/tools/handlers/tableflow/catalog/delete-tableflow-catalog-integration-handler.js +6 -12
  321. package/dist/confluent/tools/handlers/tableflow/catalog/delete-tableflow-catalog-integration-handler.js.map +1 -1
  322. package/dist/confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-handler.d.ts +5 -7
  323. package/dist/confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-handler.d.ts.map +1 -1
  324. package/dist/confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-handler.js +7 -13
  325. package/dist/confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-handler.js.map +1 -1
  326. package/dist/confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-handler.d.ts +5 -7
  327. package/dist/confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-handler.d.ts.map +1 -1
  328. package/dist/confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-handler.js +6 -12
  329. package/dist/confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-handler.js.map +1 -1
  330. package/dist/confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-handler.d.ts +5 -7
  331. package/dist/confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-handler.d.ts.map +1 -1
  332. package/dist/confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-handler.js +5 -9
  333. package/dist/confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-handler.js.map +1 -1
  334. package/dist/confluent/tools/handlers/tableflow/list-tableflow-regions-handler.d.ts +5 -7
  335. package/dist/confluent/tools/handlers/tableflow/list-tableflow-regions-handler.d.ts.map +1 -1
  336. package/dist/confluent/tools/handlers/tableflow/list-tableflow-regions-handler.js +19 -21
  337. package/dist/confluent/tools/handlers/tableflow/list-tableflow-regions-handler.js.map +1 -1
  338. package/dist/confluent/tools/handlers/tableflow/tableflow-tool-handler.d.ts +25 -0
  339. package/dist/confluent/tools/handlers/tableflow/tableflow-tool-handler.d.ts.map +1 -0
  340. package/dist/confluent/tools/handlers/tableflow/tableflow-tool-handler.js +27 -0
  341. package/dist/confluent/tools/handlers/tableflow/tableflow-tool-handler.js.map +1 -0
  342. package/dist/confluent/tools/handlers/tableflow/topic/create-tableflow-topic-handler.d.ts +5 -7
  343. package/dist/confluent/tools/handlers/tableflow/topic/create-tableflow-topic-handler.d.ts.map +1 -1
  344. package/dist/confluent/tools/handlers/tableflow/topic/create-tableflow-topic-handler.js +17 -13
  345. package/dist/confluent/tools/handlers/tableflow/topic/create-tableflow-topic-handler.js.map +1 -1
  346. package/dist/confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.d.ts +5 -7
  347. package/dist/confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.d.ts.map +1 -1
  348. package/dist/confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.js +6 -12
  349. package/dist/confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.js.map +1 -1
  350. package/dist/confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.d.ts +5 -7
  351. package/dist/confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.d.ts.map +1 -1
  352. package/dist/confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.js +7 -13
  353. package/dist/confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.js.map +1 -1
  354. package/dist/confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.d.ts +5 -7
  355. package/dist/confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.d.ts.map +1 -1
  356. package/dist/confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.js +6 -12
  357. package/dist/confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.js.map +1 -1
  358. package/dist/confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.d.ts +5 -7
  359. package/dist/confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.d.ts.map +1 -1
  360. package/dist/confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.js +5 -9
  361. package/dist/confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.js.map +1 -1
  362. package/dist/confluent/tools/tool-availability.d.ts +74 -0
  363. package/dist/confluent/tools/tool-availability.d.ts.map +1 -0
  364. package/dist/confluent/tools/tool-availability.js +121 -0
  365. package/dist/confluent/tools/tool-availability.js.map +1 -0
  366. package/dist/confluent/tools/tool-name.d.ts +5 -1
  367. package/dist/confluent/tools/tool-name.d.ts.map +1 -1
  368. package/dist/confluent/tools/tool-name.js +4 -0
  369. package/dist/confluent/tools/tool-name.js.map +1 -1
  370. package/dist/confluent/tools/tool-registry.d.ts +18 -0
  371. package/dist/confluent/tools/tool-registry.d.ts.map +1 -0
  372. package/dist/confluent/tools/{tool-factory.js → tool-registry.js} +32 -19
  373. package/dist/confluent/tools/tool-registry.js.map +1 -0
  374. package/dist/env-schema.d.ts +5 -7
  375. package/dist/env-schema.d.ts.map +1 -1
  376. package/dist/env-schema.js +20 -39
  377. package/dist/env-schema.js.map +1 -1
  378. package/dist/env.d.ts +16 -7
  379. package/dist/env.d.ts.map +1 -1
  380. package/dist/env.js +16 -6
  381. package/dist/env.js.map +1 -1
  382. package/dist/index.d.ts +74 -1
  383. package/dist/index.d.ts.map +1 -1
  384. package/dist/index.js +279 -166
  385. package/dist/index.js.map +1 -1
  386. package/dist/logger.d.ts.map +1 -1
  387. package/dist/logger.js +21 -20
  388. package/dist/logger.js.map +1 -1
  389. package/dist/mcp/server.d.ts +29 -0
  390. package/dist/mcp/server.d.ts.map +1 -0
  391. package/dist/mcp/server.js +52 -0
  392. package/dist/mcp/server.js.map +1 -0
  393. package/dist/mcp/transports/auth.d.ts +20 -4
  394. package/dist/mcp/transports/auth.d.ts.map +1 -1
  395. package/dist/mcp/transports/auth.js +27 -7
  396. package/dist/mcp/transports/auth.js.map +1 -1
  397. package/dist/mcp/transports/http.d.ts +8 -2
  398. package/dist/mcp/transports/http.d.ts.map +1 -1
  399. package/dist/mcp/transports/http.js +57 -42
  400. package/dist/mcp/transports/http.js.map +1 -1
  401. package/dist/mcp/transports/manager.d.ts +23 -9
  402. package/dist/mcp/transports/manager.d.ts.map +1 -1
  403. package/dist/mcp/transports/manager.js +27 -24
  404. package/dist/mcp/transports/manager.js.map +1 -1
  405. package/dist/mcp/transports/server.d.ts +1 -1
  406. package/dist/mcp/transports/server.d.ts.map +1 -1
  407. package/dist/mcp/transports/server.js +17 -5
  408. package/dist/mcp/transports/server.js.map +1 -1
  409. package/dist/mcp/transports/session-registry.d.ts +33 -0
  410. package/dist/mcp/transports/session-registry.d.ts.map +1 -0
  411. package/dist/mcp/transports/session-registry.js +65 -0
  412. package/dist/mcp/transports/session-registry.js.map +1 -0
  413. package/dist/mcp/transports/sse.d.ts +13 -2
  414. package/dist/mcp/transports/sse.d.ts.map +1 -1
  415. package/dist/mcp/transports/sse.js +58 -46
  416. package/dist/mcp/transports/sse.js.map +1 -1
  417. package/dist/server-runtime.d.ts +28 -0
  418. package/dist/server-runtime.d.ts.map +1 -0
  419. package/dist/server-runtime.js +73 -0
  420. package/dist/server-runtime.js.map +1 -0
  421. package/package.json +25 -9
  422. package/dist/confluent/helpers.d.ts +0 -11
  423. package/dist/confluent/helpers.d.ts.map +0 -1
  424. package/dist/confluent/helpers.js +0 -17
  425. package/dist/confluent/helpers.js.map +0 -1
  426. package/dist/confluent/tools/tool-factory.d.ts +0 -9
  427. package/dist/confluent/tools/tool-factory.d.ts.map +0 -1
  428. package/dist/confluent/tools/tool-factory.js.map +0 -1
@@ -0,0 +1,51 @@
1
+ // Matches either:
2
+ // $${...} — escape sequence (group 1 = inner text)
3
+ // ${VAR} — basic substitution (group 2 = var name, group 3 = undefined)
4
+ // ${VAR:-default} — substitution with default (group 2 = var name, group 3 = default)
5
+ const INTERPOLATION_RE = /\$\$\{([^}]*)\}|\$\{([A-Za-z_]\w*)(?::-([\s\S]*?))?\}/g;
6
+ function interpolateString(value, environ) {
7
+ return value.replaceAll(INTERPOLATION_RE, (_match, escaped, varName, defaultValue) => {
8
+ // $${...} → literal ${...}
9
+ if (escaped !== undefined) {
10
+ return `\${${escaped}}`;
11
+ }
12
+ // ${VAR} or ${VAR:-default}
13
+ const resolved = varName ? environ[varName] : undefined;
14
+ if (resolved !== undefined) {
15
+ return resolved;
16
+ }
17
+ // Variable is absent from env — use default found in the template, if any.
18
+ if (defaultValue !== undefined) {
19
+ return defaultValue;
20
+ }
21
+ throw new Error(`Environment variable not found: ${varName} (referenced in \${${varName}})`);
22
+ });
23
+ }
24
+ /**
25
+ * Recursively interpolates `${VAR}` and `${VAR:-default}` patterns in all
26
+ * string values of the given object/array/primitive. Non-string leaves
27
+ * (numbers, booleans, null, undefined) are returned unchanged.
28
+ *
29
+ * Escaping: `$${LITERAL}` is replaced with the literal text `${LITERAL}`.
30
+ */
31
+ export function interpolateValues(obj, environ) {
32
+ function walk(value) {
33
+ if (typeof value === "string") {
34
+ return interpolateString(value, environ);
35
+ }
36
+ if (Array.isArray(value)) {
37
+ return value.map(walk);
38
+ }
39
+ if (value !== null && typeof value === "object") {
40
+ const result = {};
41
+ for (const [k, v] of Object.entries(value)) {
42
+ result[k] = walk(v);
43
+ }
44
+ return result;
45
+ }
46
+ // number, boolean, null, undefined — unchanged
47
+ return value;
48
+ }
49
+ return walk(obj);
50
+ }
51
+ //# sourceMappingURL=interpolation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interpolation.js","sourceRoot":"","sources":["../../src/config/interpolation.ts"],"names":[],"mappings":"AAAA,kBAAkB;AAClB,6DAA6D;AAC7D,mFAAmF;AACnF,wFAAwF;AACxF,MAAM,gBAAgB,GACpB,wDAAwD,CAAC;AAE3D,SAAS,iBAAiB,CACxB,KAAa,EACb,OAA2C;IAE3C,OAAO,KAAK,CAAC,UAAU,CACrB,gBAAgB,EAChB,CACE,MAAM,EACN,OAA2B,EAC3B,OAA2B,EAC3B,YAAgC,EAChC,EAAE;QACF,2BAA2B;QAC3B,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,OAAO,MAAM,OAAO,GAAG,CAAC;QAC1B,CAAC;QAED,4BAA4B;QAC5B,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACxD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,2EAA2E;QAC3E,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/B,OAAO,YAAY,CAAC;QACtB,CAAC;QAED,MAAM,IAAI,KAAK,CACb,mCAAmC,OAAO,sBAAsB,OAAO,IAAI,CAC5E,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAC/B,GAAY,EACZ,OAA2C;IAE3C,SAAS,IAAI,CAAC,KAAc;QAC1B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,iBAAiB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC3C,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC;QACD,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAChD,MAAM,MAAM,GAA4B,EAAE,CAAC;YAC3C,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC,EAAE,CAAC;gBACtE,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACtB,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,+CAA+C;QAC/C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;AACnB,CAAC"}
@@ -0,0 +1,396 @@
1
+ import { TransportType } from "../mcp/transports/types.js";
2
+ import { z } from "zod";
3
+ /**
4
+ * Connection configuration for a direct (local/Docker/Cloud) Kafka cluster.
5
+ * Corresponds to `connections.<name>` (with `type: direct`) in the YAML configuration.
6
+ * Service blocks are all optional: a connection with no blocks is valid and enables
7
+ * only connection-agnostic tools (e.g. `search-product-docs`). Per-tool predicates
8
+ * in `connection-predicates.ts` decide which tools each connection enables.
9
+ */
10
+ export interface DirectConnectionConfig {
11
+ readonly type: "direct";
12
+ readonly kafka?: KafkaDirectConfig;
13
+ readonly schema_registry?: SchemaRegistryDirectConfig;
14
+ readonly confluent_cloud?: ConfluentCloudDirectConfig;
15
+ readonly tableflow?: TableflowDirectConfig;
16
+ readonly telemetry?: TelemetryDirectConfig;
17
+ readonly flink?: FlinkDirectConfig;
18
+ }
19
+ /**
20
+ * OAuth (PKCE) connection variant. Peer arm of {@link DirectConnectionConfig}
21
+ * inside the `ConnectionConfig` discriminated union. The CCloud REST URL is
22
+ * derived from `ccloud_env` via `getCloudRestUrlForEnv` inside
23
+ * `OAuthClientManager`. No service blocks; OAuth-eligible tools auto-enable
24
+ * OAuth connections (see `connection-predicates.ts`). Resource IDs that direct
25
+ * connections supply via blocks must be passed as tool arguments under OAuth.
26
+ *
27
+ * `ccloud_env` defaults to "prod"
28
+ *
29
+ * `kafka_debug` is the optional librdkafka `debug` contexts string (e.g.
30
+ * "security,broker,protocol", or "all") used as a diagnostic knob when an
31
+ * OAuth/OAUTHBEARER SASL handshake misbehaves. Surfaced through to the
32
+ * `OAuthClientManager` and threaded into the rdkafka client config.
33
+ */
34
+ export interface OAuthConnectionConfig {
35
+ readonly type: "oauth";
36
+ readonly ccloud_env: "devel" | "stag" | "prod";
37
+ readonly kafka_debug?: string;
38
+ }
39
+ /**
40
+ * API key credential pair used throughout connection sub-configs.
41
+ * Corresponds to `auth` blocks nested under each service in `connections.<name>`.
42
+ */
43
+ export interface ApiKeyAuthConfig {
44
+ readonly type: "api_key";
45
+ readonly key: string;
46
+ readonly secret: string;
47
+ }
48
+ export type AuthConfig = ApiKeyAuthConfig;
49
+ /**
50
+ * Kafka broker connection parameters.
51
+ * Corresponds to `connections.<name>.kafka` in the YAML configuration.
52
+ */
53
+ export interface KafkaDirectConfig {
54
+ readonly bootstrap_servers?: string;
55
+ readonly auth?: AuthConfig;
56
+ readonly rest_endpoint?: string;
57
+ readonly cluster_id?: string;
58
+ readonly env_id?: string;
59
+ readonly extra_properties?: Readonly<Record<string, string>>;
60
+ }
61
+ /**
62
+ * Schema Registry connection parameters.
63
+ * Corresponds to `connections.<name>.schema_registry` in the YAML configuration.
64
+ */
65
+ export interface SchemaRegistryDirectConfig {
66
+ readonly endpoint: string;
67
+ readonly auth?: AuthConfig;
68
+ }
69
+ /**
70
+ * Confluent Cloud control-plane connection parameters.
71
+ * Corresponds to `connections.<name>.confluent_cloud` in the YAML configuration.
72
+ */
73
+ export interface ConfluentCloudDirectConfig {
74
+ readonly endpoint: string;
75
+ readonly auth: AuthConfig;
76
+ }
77
+ /**
78
+ * Tableflow connection parameters.
79
+ * Corresponds to `connections.<name>.tableflow` in the YAML configuration.
80
+ */
81
+ export interface TableflowDirectConfig {
82
+ readonly auth: AuthConfig;
83
+ }
84
+ /**
85
+ * Telemetry API connection parameters (post-transform output type).
86
+ * Corresponds to `connections.<name>.telemetry` in the YAML configuration.
87
+ */
88
+ export interface TelemetryDirectConfig {
89
+ readonly endpoint: string;
90
+ readonly auth: AuthConfig;
91
+ }
92
+ /**
93
+ * Flink connection parameters.
94
+ * Corresponds to `connections.<name>.flink` in the YAML configuration.
95
+ */
96
+ export interface FlinkDirectConfig {
97
+ readonly endpoint: string;
98
+ readonly auth: AuthConfig;
99
+ readonly environment_id: string;
100
+ readonly organization_id: string;
101
+ readonly compute_pool_id: string;
102
+ readonly catalog_name?: string;
103
+ readonly database_name?: string;
104
+ }
105
+ /**
106
+ * Discriminated union of all connection variants: direct (api-key) and oauth (PKCE).
107
+ */
108
+ export type ConnectionConfig = DirectConnectionConfig | OAuthConnectionConfig;
109
+ /**
110
+ * MCP server operational settings — transport, auth, and logging.
111
+ * Corresponds to the `server` block at the root of the YAML configuration.
112
+ * Distinct from connection config, which governs Kafka and Confluent Cloud client behaviour.
113
+ */
114
+ export interface ServerConfig {
115
+ readonly transports: readonly TransportType[];
116
+ readonly log_level: "fatal" | "error" | "warn" | "info" | "debug" | "trace";
117
+ readonly do_not_track: boolean;
118
+ readonly http: ServerHttpConfig;
119
+ readonly auth: ServerAuthConfig;
120
+ readonly analytics?: ServerAnalyticsConfig;
121
+ }
122
+ /**
123
+ * Internal-developer-only override for the Segment write key used to emit
124
+ * anonymous usage analytics from this MCP server. Normal builds inject the
125
+ * right value at `npm pack` time via build-config injection; this knob exists
126
+ * so contributors can point analytics at a non-production Segment project
127
+ * during local development. End users should not set it.
128
+ *
129
+ * Deliberately undocumented in the user-facing example YAML templates
130
+ * (`config.example.yaml`, `config.oauth.example.yaml`) — surfacing it there
131
+ * would legitimize a knob that exists only for internal mcp-confluent dev.
132
+ */
133
+ export interface ServerAnalyticsConfig {
134
+ readonly write_key: string;
135
+ }
136
+ /**
137
+ * HTTP/SSE transport bind address and endpoint paths.
138
+ * Corresponds to `server.http` in the YAML configuration.
139
+ */
140
+ export interface ServerHttpConfig {
141
+ readonly port: number;
142
+ readonly host: string;
143
+ readonly mcp_endpoint: string;
144
+ readonly sse_endpoint: string;
145
+ readonly sse_message_endpoint: string;
146
+ }
147
+ /**
148
+ * HTTP/SSE transport authentication settings.
149
+ * Corresponds to `server.auth` in the YAML configuration.
150
+ * `api_key` and `disabled: true` are mutually exclusive.
151
+ */
152
+ export interface ServerAuthConfig {
153
+ readonly api_key?: string;
154
+ readonly disabled: boolean;
155
+ readonly allowed_hosts: readonly string[];
156
+ }
157
+ /**
158
+ * Root configuration object representing the entire MCP server configuration.
159
+ * Validated and constructed from parsed YAML via {@link mcpConfigSchema}.
160
+ */
161
+ export declare class MCPServerConfiguration {
162
+ /** Named connection map. Corresponds to the `connections` block at the root of the YAML configuration. */
163
+ readonly connections: Readonly<Record<string, ConnectionConfig>>;
164
+ /** MCP server operational settings. Corresponds to the `server` block at the root of the YAML configuration. */
165
+ readonly server: ServerConfig;
166
+ constructor(data: {
167
+ connections: Record<string, ConnectionConfig>;
168
+ server?: ServerConfig;
169
+ });
170
+ /**
171
+ * Returns the single defined connection in the configuration.
172
+ *
173
+ * @returns the single defined connection
174
+ * @throws Error if 0 or more than 1 connection is defined.
175
+ */
176
+ getSoleConnection(): ConnectionConfig;
177
+ /**
178
+ * Returns the sole connection narrowed to {@link DirectConnectionConfig}, throwing
179
+ * if it is OAuth-typed. Use from callers that need to read service-block fields
180
+ * (e.g., `kafka.cluster_id`, `flink.environment_id`) — the throw replaces what
181
+ * would otherwise be a `conn.type === "direct"` guard at every read site.
182
+ */
183
+ getSoleDirectConnection(): DirectConnectionConfig;
184
+ getConnectionNames(): string[];
185
+ }
186
+ /**
187
+ * librdkafka property keys that have named YAML equivalents and must not appear in
188
+ * `extra_properties`. Authoring them there is an error in YAML-configured connections;
189
+ * use `bootstrap_servers` or the `auth` block instead.
190
+ *
191
+ * Note: this restriction applies only to YAML-authored configs. The `-k` /
192
+ * `--kafka-config-file` CLI flag is a higher-precedence override mechanism and is
193
+ * permitted to supply these keys (env vars are always lowest precedence).
194
+ */
195
+ export declare const KAFKA_PROTECTED_EXTRA_PROPERTY_KEYS: readonly ["bootstrap.servers", "sasl.username", "sasl.password"];
196
+ export declare const CONFLUENT_CLOUD_DEFAULT_ENDPOINT = "https://api.confluent.cloud";
197
+ /**
198
+ * The default server configuration produced when no `server` block is present in YAML
199
+ * or when MCPServerConfiguration is constructed without an explicit server argument.
200
+ * Derived from serverConfigSchema defaults — single source of truth.
201
+ */
202
+ export declare const DEFAULT_SERVER_CONFIG: {
203
+ transports: TransportType[];
204
+ log_level: "info" | "fatal" | "error" | "warn" | "debug" | "trace";
205
+ do_not_track: boolean;
206
+ http: {
207
+ port: number;
208
+ host: string;
209
+ mcp_endpoint: string;
210
+ sse_endpoint: string;
211
+ sse_message_endpoint: string;
212
+ };
213
+ auth: {
214
+ disabled: boolean;
215
+ allowed_hosts: string[];
216
+ api_key?: string | undefined;
217
+ };
218
+ analytics?: {
219
+ write_key: string;
220
+ } | undefined;
221
+ };
222
+ /**
223
+ * Root configuration schema. This is the single validation and normalisation
224
+ * entry point shared by both configuration paths: YAML files (via
225
+ * {@link parseYamlConfiguration}) and environment variables (via
226
+ * {@link buildConfigFromEnvAndCli}). Transforms and cross-field rules defined here
227
+ * therefore apply equally to both.
228
+ *
229
+ * Parsed output is wrapped in {@link MCPServerConfiguration} by
230
+ * parseYamlConfiguration().
231
+ */
232
+ export declare const mcpConfigSchema: z.ZodObject<{
233
+ connections: z.ZodRecord<z.ZodString, z.ZodPipe<z.ZodDiscriminatedUnion<[z.ZodObject<{
234
+ type: z.ZodLiteral<"direct">;
235
+ confluent_cloud: z.ZodOptional<z.ZodObject<{
236
+ endpoint: z.ZodOptional<z.ZodString>;
237
+ auth: z.ZodDiscriminatedUnion<[z.ZodObject<{
238
+ type: z.ZodLiteral<"api_key">;
239
+ key: z.ZodString;
240
+ secret: z.ZodString;
241
+ }, z.core.$strict>], "type">;
242
+ }, z.core.$strict>>;
243
+ kafka: z.ZodOptional<z.ZodObject<{
244
+ bootstrap_servers: z.ZodOptional<z.ZodString>;
245
+ auth: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
246
+ type: z.ZodLiteral<"api_key">;
247
+ key: z.ZodString;
248
+ secret: z.ZodString;
249
+ }, z.core.$strict>], "type">>;
250
+ rest_endpoint: z.ZodOptional<z.ZodString>;
251
+ cluster_id: z.ZodOptional<z.ZodString>;
252
+ env_id: z.ZodOptional<z.ZodString>;
253
+ extra_properties: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
254
+ }, z.core.$strict>>;
255
+ schema_registry: z.ZodOptional<z.ZodObject<{
256
+ endpoint: z.ZodString;
257
+ auth: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
258
+ type: z.ZodLiteral<"api_key">;
259
+ key: z.ZodString;
260
+ secret: z.ZodString;
261
+ }, z.core.$strict>], "type">>;
262
+ }, z.core.$strict>>;
263
+ tableflow: z.ZodOptional<z.ZodObject<{
264
+ auth: z.ZodDiscriminatedUnion<[z.ZodObject<{
265
+ type: z.ZodLiteral<"api_key">;
266
+ key: z.ZodString;
267
+ secret: z.ZodString;
268
+ }, z.core.$strict>], "type">;
269
+ }, z.core.$strict>>;
270
+ telemetry: z.ZodOptional<z.ZodObject<{
271
+ endpoint: z.ZodOptional<z.ZodString>;
272
+ auth: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
273
+ type: z.ZodLiteral<"api_key">;
274
+ key: z.ZodString;
275
+ secret: z.ZodString;
276
+ }, z.core.$strict>], "type">>;
277
+ }, z.core.$strict>>;
278
+ flink: z.ZodOptional<z.ZodObject<{
279
+ endpoint: z.ZodString;
280
+ auth: z.ZodDiscriminatedUnion<[z.ZodObject<{
281
+ type: z.ZodLiteral<"api_key">;
282
+ key: z.ZodString;
283
+ secret: z.ZodString;
284
+ }, z.core.$strict>], "type">;
285
+ environment_id: z.ZodString;
286
+ organization_id: z.ZodString;
287
+ compute_pool_id: z.ZodString;
288
+ catalog_name: z.ZodOptional<z.ZodString>;
289
+ database_name: z.ZodOptional<z.ZodString>;
290
+ }, z.core.$strict>>;
291
+ }, z.core.$strict>, z.ZodObject<{
292
+ type: z.ZodLiteral<"oauth">;
293
+ ccloud_env: z.ZodDefault<z.ZodEnum<{
294
+ devel: "devel";
295
+ stag: "stag";
296
+ prod: "prod";
297
+ }>>;
298
+ kafka_debug: z.ZodOptional<z.ZodString>;
299
+ }, z.core.$strict>], "type">, z.ZodTransform<DirectConnectionConfig | OAuthConnectionConfig, {
300
+ type: "direct";
301
+ confluent_cloud?: {
302
+ auth: {
303
+ type: "api_key";
304
+ key: string;
305
+ secret: string;
306
+ };
307
+ endpoint?: string | undefined;
308
+ } | undefined;
309
+ kafka?: {
310
+ bootstrap_servers?: string | undefined;
311
+ auth?: {
312
+ type: "api_key";
313
+ key: string;
314
+ secret: string;
315
+ } | undefined;
316
+ rest_endpoint?: string | undefined;
317
+ cluster_id?: string | undefined;
318
+ env_id?: string | undefined;
319
+ extra_properties?: Record<string, string> | undefined;
320
+ } | undefined;
321
+ schema_registry?: {
322
+ endpoint: string;
323
+ auth?: {
324
+ type: "api_key";
325
+ key: string;
326
+ secret: string;
327
+ } | undefined;
328
+ } | undefined;
329
+ tableflow?: {
330
+ auth: {
331
+ type: "api_key";
332
+ key: string;
333
+ secret: string;
334
+ };
335
+ } | undefined;
336
+ telemetry?: {
337
+ endpoint?: string | undefined;
338
+ auth?: {
339
+ type: "api_key";
340
+ key: string;
341
+ secret: string;
342
+ } | undefined;
343
+ } | undefined;
344
+ flink?: {
345
+ endpoint: string;
346
+ auth: {
347
+ type: "api_key";
348
+ key: string;
349
+ secret: string;
350
+ };
351
+ environment_id: string;
352
+ organization_id: string;
353
+ compute_pool_id: string;
354
+ catalog_name?: string | undefined;
355
+ database_name?: string | undefined;
356
+ } | undefined;
357
+ } | {
358
+ type: "oauth";
359
+ ccloud_env: "devel" | "stag" | "prod";
360
+ kafka_debug?: string | undefined;
361
+ }>>>;
362
+ server: z.ZodDefault<z.ZodObject<{
363
+ transports: z.ZodDefault<z.ZodArray<z.ZodEnum<{
364
+ http: TransportType.HTTP;
365
+ sse: TransportType.SSE;
366
+ stdio: TransportType.STDIO;
367
+ }>>>;
368
+ log_level: z.ZodDefault<z.ZodEnum<{
369
+ info: "info";
370
+ fatal: "fatal";
371
+ error: "error";
372
+ warn: "warn";
373
+ debug: "debug";
374
+ trace: "trace";
375
+ }>>;
376
+ do_not_track: z.ZodDefault<z.ZodBoolean>;
377
+ http: z.ZodDefault<z.ZodObject<{
378
+ port: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
379
+ host: z.ZodDefault<z.ZodString>;
380
+ mcp_endpoint: z.ZodDefault<z.ZodString>;
381
+ sse_endpoint: z.ZodDefault<z.ZodString>;
382
+ sse_message_endpoint: z.ZodDefault<z.ZodString>;
383
+ }, z.core.$strict>>;
384
+ auth: z.ZodDefault<z.ZodObject<{
385
+ api_key: z.ZodOptional<z.ZodString>;
386
+ disabled: z.ZodDefault<z.ZodBoolean>;
387
+ allowed_hosts: z.ZodDefault<z.ZodArray<z.ZodString>>;
388
+ }, z.core.$strict>>;
389
+ analytics: z.ZodOptional<z.ZodObject<{
390
+ write_key: z.ZodString;
391
+ }, z.core.$strict>>;
392
+ }, z.core.$strict>>;
393
+ }, z.core.$strict>;
394
+ /** Format Zod issues into a human-readable string */
395
+ export declare function formatZodIssues(issues: z.ZodError["issues"]): string;
396
+ //# sourceMappingURL=models.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/config/models.ts"],"names":[],"mappings":"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"}