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