@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,9 @@
|
|
|
1
|
+
import { CallToolResult } from "../../../../confluent/schema.js";
|
|
2
|
+
import { ToolConfig } from "../../../../confluent/tools/base-tools.js";
|
|
3
|
+
import { ConnectToolHandler } from "../../../../confluent/tools/handlers/connect/connect-tool-handler.js";
|
|
4
|
+
import { ServerRuntime } from "../../../../server-runtime.js";
|
|
5
|
+
export declare class GetConnectorConfigHandler extends ConnectToolHandler {
|
|
6
|
+
handle(runtime: ServerRuntime, toolArguments: Record<string, unknown> | undefined): Promise<CallToolResult>;
|
|
7
|
+
getToolConfig(): ToolConfig;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=get-connector-config-handler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-connector-config-handler.d.ts","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/connect/get-connector-config-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAa,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EACL,kBAAkB,EAEnB,MAAM,+DAA+D,CAAC;AAEvE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAGvD,qBAAa,yBAA0B,SAAQ,kBAAkB;IACzD,MAAM,CACV,OAAO,EAAE,aAAa,EACtB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GACjD,OAAO,CAAC,cAAc,CAAC;IAkC1B,aAAa,IAAI,UAAU;CAS5B"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { READ_ONLY } from "../../../../confluent/tools/base-tools.js";
|
|
2
|
+
import { ConnectToolHandler, connectorByNameArguments, } from "../../../../confluent/tools/handlers/connect/connect-tool-handler.js";
|
|
3
|
+
import { ToolName } from "../../../../confluent/tools/tool-name.js";
|
|
4
|
+
import { wrapAsPathBasedClient } from "openapi-fetch";
|
|
5
|
+
export class GetConnectorConfigHandler extends ConnectToolHandler {
|
|
6
|
+
async handle(runtime, toolArguments) {
|
|
7
|
+
const clientManager = runtime.clientManager;
|
|
8
|
+
const { clusterId, environmentId, connectorName } = connectorByNameArguments.parse(toolArguments);
|
|
9
|
+
const conn = runtime.config.getSoleDirectConnection();
|
|
10
|
+
const { environment_id, kafka_cluster_id } = this.resolveConnectEnvAndClusterId(conn, environmentId, clusterId);
|
|
11
|
+
const pathBasedClient = wrapAsPathBasedClient(clientManager.getConfluentCloudRestClient());
|
|
12
|
+
const { data: response, error } = await pathBasedClient["/connect/v1/environments/{environment_id}/clusters/{kafka_cluster_id}/connectors/{connector_name}/config"].GET({
|
|
13
|
+
params: {
|
|
14
|
+
path: {
|
|
15
|
+
connector_name: connectorName,
|
|
16
|
+
environment_id,
|
|
17
|
+
kafka_cluster_id,
|
|
18
|
+
},
|
|
19
|
+
},
|
|
20
|
+
});
|
|
21
|
+
if (error) {
|
|
22
|
+
return this.createResponse(`Failed to get config for connector ${connectorName}: ${JSON.stringify(error)}`, true);
|
|
23
|
+
}
|
|
24
|
+
return this.createResponse(`Connector Config for ${connectorName}: ${JSON.stringify(response)}`);
|
|
25
|
+
}
|
|
26
|
+
getToolConfig() {
|
|
27
|
+
return {
|
|
28
|
+
name: ToolName.GET_CONNECTOR_CONFIG,
|
|
29
|
+
description: "Retrieve the full configuration map for a connector. Returns the flat config object the connector was created/updated with.",
|
|
30
|
+
inputSchema: connectorByNameArguments.shape,
|
|
31
|
+
annotations: READ_ONLY,
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=get-connector-config-handler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-connector-config-handler.js","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/connect/get-connector-config-handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAc,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EACL,kBAAkB,EAClB,wBAAwB,GACzB,MAAM,+DAA+D,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAE7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEtD,MAAM,OAAO,yBAA0B,SAAQ,kBAAkB;IAC/D,KAAK,CAAC,MAAM,CACV,OAAsB,EACtB,aAAkD;QAElD,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;QAC5C,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,EAAE,GAC/C,wBAAwB,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAEhD,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,uBAAuB,EAAE,CAAC;QACtD,MAAM,EAAE,cAAc,EAAE,gBAAgB,EAAE,GACxC,IAAI,CAAC,6BAA6B,CAAC,IAAI,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;QAErE,MAAM,eAAe,GAAG,qBAAqB,CAC3C,aAAa,CAAC,2BAA2B,EAAE,CAC5C,CAAC;QACF,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,MAAM,eAAe,CACrD,0GAA0G,CAC3G,CAAC,GAAG,CAAC;YACJ,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,cAAc,EAAE,aAAa;oBAC7B,cAAc;oBACd,gBAAgB;iBACjB;aACF;SACF,CAAC,CAAC;QACH,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,IAAI,CAAC,cAAc,CACxB,sCAAsC,aAAa,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAC/E,IAAI,CACL,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CACxB,wBAAwB,aAAa,KAAK,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CACrE,CAAC;IACJ,CAAC;IAED,aAAa;QACX,OAAO;YACL,IAAI,EAAE,QAAQ,CAAC,oBAAoB;YACnC,WAAW,EACT,6HAA6H;YAC/H,WAAW,EAAE,wBAAwB,CAAC,KAAK;YAC3C,WAAW,EAAE,SAAS;SACvB,CAAC;IACJ,CAAC;CACF"}
|
package/dist/confluent/tools/handlers/connect/get-connector-error-recommendations-handler.d.ts
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { CallToolResult } from "../../../../confluent/schema.js";
|
|
2
|
+
import { ToolConfig } from "../../../../confluent/tools/base-tools.js";
|
|
3
|
+
import { ConnectToolHandler } from "../../../../confluent/tools/handlers/connect/connect-tool-handler.js";
|
|
4
|
+
import { ServerRuntime } from "../../../../server-runtime.js";
|
|
5
|
+
export declare class GetConnectorErrorRecommendationsHandler extends ConnectToolHandler {
|
|
6
|
+
handle(runtime: ServerRuntime, toolArguments: Record<string, unknown> | undefined): Promise<CallToolResult>;
|
|
7
|
+
getToolConfig(): ToolConfig;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=get-connector-error-recommendations-handler.d.ts.map
|
package/dist/confluent/tools/handlers/connect/get-connector-error-recommendations-handler.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-connector-error-recommendations-handler.d.ts","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/connect/get-connector-error-recommendations-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAa,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EACL,kBAAkB,EAEnB,MAAM,+DAA+D,CAAC;AAEvE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AASvD,qBAAa,uCAAwC,SAAQ,kBAAkB;IACvE,MAAM,CACV,OAAO,EAAE,aAAa,EACtB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GACjD,OAAO,CAAC,cAAc,CAAC;IAuF1B,aAAa,IAAI,UAAU;CAS5B"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { READ_ONLY } from "../../../../confluent/tools/base-tools.js";
|
|
2
|
+
import { ConnectToolHandler, connectorByNameArguments, } from "../../../../confluent/tools/handlers/connect/connect-tool-handler.js";
|
|
3
|
+
import { ToolName } from "../../../../confluent/tools/tool-name.js";
|
|
4
|
+
import { wrapAsPathBasedClient } from "openapi-fetch";
|
|
5
|
+
export class GetConnectorErrorRecommendationsHandler extends ConnectToolHandler {
|
|
6
|
+
async handle(runtime, toolArguments) {
|
|
7
|
+
const clientManager = runtime.clientManager;
|
|
8
|
+
const { clusterId, environmentId, connectorName } = connectorByNameArguments.parse(toolArguments);
|
|
9
|
+
const conn = runtime.config.getSoleDirectConnection();
|
|
10
|
+
const { environment_id, kafka_cluster_id } = this.resolveConnectEnvAndClusterId(conn, environmentId, clusterId);
|
|
11
|
+
const pathBasedClient = wrapAsPathBasedClient(clientManager.getConfluentCloudRestClient());
|
|
12
|
+
const { data: response, error } = await pathBasedClient["/connect/v1/environments/{environment_id}/clusters/{kafka_cluster_id}/connectors/{connector_name}/error-recommendations"].GET({
|
|
13
|
+
params: {
|
|
14
|
+
path: {
|
|
15
|
+
connector_name: connectorName,
|
|
16
|
+
environment_id,
|
|
17
|
+
kafka_cluster_id,
|
|
18
|
+
},
|
|
19
|
+
},
|
|
20
|
+
});
|
|
21
|
+
if (error) {
|
|
22
|
+
// Cloud returns 400 with this body when the connector has no captured stack trace
|
|
23
|
+
// (e.g. healthy connectors and connectors that failed only at config validation).
|
|
24
|
+
// Treat that as "no recommendations" rather than a tool error.
|
|
25
|
+
const message = typeof error === "object" &&
|
|
26
|
+
error !== null &&
|
|
27
|
+
"error" in error &&
|
|
28
|
+
typeof error.error === "object" &&
|
|
29
|
+
error.error !== null
|
|
30
|
+
? error.error.message
|
|
31
|
+
: undefined;
|
|
32
|
+
if (typeof message === "string" &&
|
|
33
|
+
message.startsWith("could not generate recommendations as error stack trace is not available")) {
|
|
34
|
+
return this.createResponse(`No error recommendations available for connector ${connectorName}.`);
|
|
35
|
+
}
|
|
36
|
+
return this.createResponse(`Failed to get error recommendations for connector ${connectorName}: ${JSON.stringify(error)}`, true);
|
|
37
|
+
}
|
|
38
|
+
if (!response) {
|
|
39
|
+
return this.createResponse(`No error recommendations payload returned for connector ${connectorName}.`, true);
|
|
40
|
+
}
|
|
41
|
+
const recommendations = response.recommendations ?? [];
|
|
42
|
+
const engineError = response.error;
|
|
43
|
+
if (engineError) {
|
|
44
|
+
return this.createResponse(`Recommendation engine error for connector ${connectorName}: ${JSON.stringify({ engineError, eventId: response.event_id })}`, true);
|
|
45
|
+
}
|
|
46
|
+
if (recommendations.length === 0) {
|
|
47
|
+
return this.createResponse(`No error recommendations available for connector ${connectorName}.`);
|
|
48
|
+
}
|
|
49
|
+
const projection = {
|
|
50
|
+
connectorName,
|
|
51
|
+
recommendations,
|
|
52
|
+
};
|
|
53
|
+
if (response.event_id)
|
|
54
|
+
projection.eventId = response.event_id;
|
|
55
|
+
return this.createResponse(`Error recommendations for ${connectorName}: ${JSON.stringify(projection)}`);
|
|
56
|
+
}
|
|
57
|
+
getToolConfig() {
|
|
58
|
+
return {
|
|
59
|
+
name: ToolName.GET_CONNECTOR_ERROR_RECOMMENDATIONS,
|
|
60
|
+
description: "Get suggested remediation steps for a connector that has failed or is in an error state. Recommendations are generated server-side from the connector's recent failure traces and configuration. Returns a one-liner when no recommendations are available.",
|
|
61
|
+
inputSchema: connectorByNameArguments.shape,
|
|
62
|
+
annotations: READ_ONLY,
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=get-connector-error-recommendations-handler.js.map
|
package/dist/confluent/tools/handlers/connect/get-connector-error-recommendations-handler.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-connector-error-recommendations-handler.js","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/connect/get-connector-error-recommendations-handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { CallToolResult } from "../../../../confluent/schema.js";
|
|
2
|
+
import { ToolConfig } from "../../../../confluent/tools/base-tools.js";
|
|
3
|
+
import { ConnectToolHandler } from "../../../../confluent/tools/handlers/connect/connect-tool-handler.js";
|
|
4
|
+
import { ServerRuntime } from "../../../../server-runtime.js";
|
|
5
|
+
export declare class GetConnectorErrorSummaryHandler extends ConnectToolHandler {
|
|
6
|
+
handle(runtime: ServerRuntime, toolArguments: Record<string, unknown> | undefined): Promise<CallToolResult>;
|
|
7
|
+
getToolConfig(): ToolConfig;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=get-connector-error-summary-handler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-connector-error-summary-handler.d.ts","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/connect/get-connector-error-summary-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAa,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EACL,kBAAkB,EAEnB,MAAM,+DAA+D,CAAC;AAEvE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AA6JvD,qBAAa,+BAAgC,SAAQ,kBAAkB;IAC/D,MAAM,CACV,OAAO,EAAE,aAAa,EACtB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GACjD,OAAO,CAAC,cAAc,CAAC;IAoD1B,aAAa,IAAI,UAAU;CAS5B"}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import { READ_ONLY } from "../../../../confluent/tools/base-tools.js";
|
|
2
|
+
import { ConnectToolHandler, connectorByNameArguments, } from "../../../../confluent/tools/handlers/connect/connect-tool-handler.js";
|
|
3
|
+
import { ToolName } from "../../../../confluent/tools/tool-name.js";
|
|
4
|
+
import { wrapAsPathBasedClient } from "openapi-fetch";
|
|
5
|
+
const HEALTHY_TASK_STATES = new Set(["RUNNING", "PROVISIONING", "UNASSIGNED"]);
|
|
6
|
+
const TRACE_LINE_LIMIT = 10;
|
|
7
|
+
const TRACE_CHAR_LIMIT = 800;
|
|
8
|
+
function truncateTrace(trace) {
|
|
9
|
+
if (!trace)
|
|
10
|
+
return undefined;
|
|
11
|
+
const trimmed = trace.trimEnd();
|
|
12
|
+
if (!trimmed)
|
|
13
|
+
return undefined;
|
|
14
|
+
const lines = trimmed.split("\n");
|
|
15
|
+
let head = lines.slice(0, TRACE_LINE_LIMIT).join("\n");
|
|
16
|
+
const truncatedByLines = lines.length > TRACE_LINE_LIMIT;
|
|
17
|
+
let truncatedByChars = false;
|
|
18
|
+
if (head.length > TRACE_CHAR_LIMIT) {
|
|
19
|
+
head = head.slice(0, TRACE_CHAR_LIMIT);
|
|
20
|
+
truncatedByChars = true;
|
|
21
|
+
}
|
|
22
|
+
return truncatedByLines || truncatedByChars
|
|
23
|
+
? `${head}\n... [truncated]`
|
|
24
|
+
: head;
|
|
25
|
+
}
|
|
26
|
+
function parseValidationError(raw) {
|
|
27
|
+
// Split on the FIRST colon only — error messages frequently contain ":".
|
|
28
|
+
const idx = raw.indexOf(":");
|
|
29
|
+
if (idx === -1)
|
|
30
|
+
return { field: "", message: raw.trim() };
|
|
31
|
+
return {
|
|
32
|
+
field: raw.slice(0, idx).trim(),
|
|
33
|
+
message: raw.slice(idx + 1).trim(),
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
function projectErrorSummary(connectorName, payload) {
|
|
37
|
+
const state = payload.connector?.state ?? "UNKNOWN";
|
|
38
|
+
const tasks = payload.tasks ?? [];
|
|
39
|
+
const failedTasks = tasks
|
|
40
|
+
.filter((t) => !HEALTHY_TASK_STATES.has(t.state))
|
|
41
|
+
.map((t) => {
|
|
42
|
+
const projected = {
|
|
43
|
+
id: t.id,
|
|
44
|
+
state: t.state,
|
|
45
|
+
workerId: t.worker_id,
|
|
46
|
+
};
|
|
47
|
+
if (t.msg)
|
|
48
|
+
projected.msg = t.msg;
|
|
49
|
+
const traceHead = truncateTrace(t.trace);
|
|
50
|
+
if (traceHead)
|
|
51
|
+
projected.traceHead = traceHead;
|
|
52
|
+
return projected;
|
|
53
|
+
});
|
|
54
|
+
const validationErrors = (payload.validation_errors ?? [])
|
|
55
|
+
.map(parseValidationError)
|
|
56
|
+
.filter((e) => e.field || e.message);
|
|
57
|
+
const errorsFromTrace = (payload.errors_from_trace ?? []).filter(Boolean);
|
|
58
|
+
const summary = (payload.override_message?.trim() ? payload.override_message.trim() : "") ||
|
|
59
|
+
(payload.error_summary?.trim() ? payload.error_summary.trim() : "");
|
|
60
|
+
const connectorTraceHead = state !== "RUNNING" ? truncateTrace(payload.connector?.trace) : undefined;
|
|
61
|
+
const projection = {
|
|
62
|
+
connectorName,
|
|
63
|
+
state,
|
|
64
|
+
hasError: state !== "RUNNING" ||
|
|
65
|
+
failedTasks.length > 0 ||
|
|
66
|
+
validationErrors.length > 0,
|
|
67
|
+
totalTasks: tasks.length,
|
|
68
|
+
};
|
|
69
|
+
if (summary)
|
|
70
|
+
projection.summary = summary;
|
|
71
|
+
if (validationErrors.length > 0)
|
|
72
|
+
projection.validationErrors = validationErrors;
|
|
73
|
+
if (errorsFromTrace.length > 0)
|
|
74
|
+
projection.errorsFromTrace = errorsFromTrace;
|
|
75
|
+
if (payload.error_details !== undefined &&
|
|
76
|
+
payload.error_details !== null &&
|
|
77
|
+
!(typeof payload.error_details === "object" &&
|
|
78
|
+
payload.error_details !== null &&
|
|
79
|
+
Object.keys(payload.error_details).length === 0)) {
|
|
80
|
+
projection.errorDetails = payload.error_details;
|
|
81
|
+
}
|
|
82
|
+
if (payload.is_csfle_error)
|
|
83
|
+
projection.isCsfleError = true;
|
|
84
|
+
if (payload.plugin_lifecycle)
|
|
85
|
+
projection.pluginLifecycle = payload.plugin_lifecycle;
|
|
86
|
+
if (failedTasks.length > 0)
|
|
87
|
+
projection.failedTasks = failedTasks;
|
|
88
|
+
if (connectorTraceHead)
|
|
89
|
+
projection.connectorTraceHead = connectorTraceHead;
|
|
90
|
+
return projection;
|
|
91
|
+
}
|
|
92
|
+
export class GetConnectorErrorSummaryHandler extends ConnectToolHandler {
|
|
93
|
+
async handle(runtime, toolArguments) {
|
|
94
|
+
const clientManager = runtime.clientManager;
|
|
95
|
+
const { clusterId, environmentId, connectorName } = connectorByNameArguments.parse(toolArguments);
|
|
96
|
+
const conn = runtime.config.getSoleDirectConnection();
|
|
97
|
+
const { environment_id, kafka_cluster_id } = this.resolveConnectEnvAndClusterId(conn, environmentId, clusterId);
|
|
98
|
+
const pathBasedClient = wrapAsPathBasedClient(clientManager.getConfluentCloudRestClient());
|
|
99
|
+
const { data: response, error } = await pathBasedClient["/connect/v1/environments/{environment_id}/clusters/{kafka_cluster_id}/connectors/{connector_name}/status"].GET({
|
|
100
|
+
params: {
|
|
101
|
+
path: {
|
|
102
|
+
connector_name: connectorName,
|
|
103
|
+
environment_id,
|
|
104
|
+
kafka_cluster_id,
|
|
105
|
+
},
|
|
106
|
+
},
|
|
107
|
+
});
|
|
108
|
+
if (error) {
|
|
109
|
+
return this.createResponse(`Failed to get error summary for connector ${connectorName}: ${JSON.stringify(error)}`, true);
|
|
110
|
+
}
|
|
111
|
+
// Cast to access Cloud-extended diagnostic fields not declared in the OpenAPI schema.
|
|
112
|
+
const payload = response;
|
|
113
|
+
if (!payload) {
|
|
114
|
+
return this.createResponse(`No status payload returned for connector ${connectorName}.`, true);
|
|
115
|
+
}
|
|
116
|
+
const projection = projectErrorSummary(connectorName, payload);
|
|
117
|
+
if (!projection.hasError) {
|
|
118
|
+
return this.createResponse(`Connector ${connectorName} is ${projection.state}. No errors to summarize.`);
|
|
119
|
+
}
|
|
120
|
+
return this.createResponse(`Error summary for ${connectorName}: ${JSON.stringify(projection)}`);
|
|
121
|
+
}
|
|
122
|
+
getToolConfig() {
|
|
123
|
+
return {
|
|
124
|
+
name: ToolName.GET_CONNECTOR_ERROR_SUMMARY,
|
|
125
|
+
description: "Summarize a connector's current errors. Projects Confluent Cloud's /status diagnostics (error_summary, validation_errors, errors_from_trace, override_message, failed task traces) into a compact, agent-friendly form. Returns a one-liner when the connector is healthy.",
|
|
126
|
+
inputSchema: connectorByNameArguments.shape,
|
|
127
|
+
annotations: READ_ONLY,
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
//# sourceMappingURL=get-connector-error-summary-handler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-connector-error-summary-handler.js","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/connect/get-connector-error-summary-handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { CallToolResult } from "../../../../confluent/schema.js";
|
|
2
|
+
import { ToolConfig } from "../../../../confluent/tools/base-tools.js";
|
|
3
|
+
import { ConnectToolHandler } from "../../../../confluent/tools/handlers/connect/connect-tool-handler.js";
|
|
4
|
+
import { ServerRuntime } from "../../../../server-runtime.js";
|
|
5
|
+
export declare class GetConnectorLogsHandler extends ConnectToolHandler {
|
|
6
|
+
handle(runtime: ServerRuntime, toolArguments: Record<string, unknown> | undefined): Promise<CallToolResult>;
|
|
7
|
+
getToolConfig(): ToolConfig;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=get-connector-logs-handler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-connector-logs-handler.d.ts","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/connect/get-connector-logs-handler.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAa,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EACL,kBAAkB,EAEnB,MAAM,+DAA+D,CAAC;AAEvE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAuMvD,qBAAa,uBAAwB,SAAQ,kBAAkB;IACvD,MAAM,CACV,OAAO,EAAE,aAAa,EACtB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GACjD,OAAO,CAAC,cAAc,CAAC;IAsJ1B,aAAa,IAAI,UAAU;CAS5B"}
|
|
@@ -0,0 +1,244 @@
|
|
|
1
|
+
import { nodeFetch } from "../../../../confluent/node-deps.js";
|
|
2
|
+
import { READ_ONLY } from "../../../../confluent/tools/base-tools.js";
|
|
3
|
+
import { ConnectToolHandler, connectorByNameArguments, } from "../../../../confluent/tools/handlers/connect/connect-tool-handler.js";
|
|
4
|
+
import { ToolName } from "../../../../confluent/tools/tool-name.js";
|
|
5
|
+
import { wrapAsPathBasedClient } from "openapi-fetch";
|
|
6
|
+
import { z } from "zod";
|
|
7
|
+
const LOGGING_API_BASE = "https://api.logging.confluent.cloud";
|
|
8
|
+
const PLATFORM_BASE = "https://confluent.cloud";
|
|
9
|
+
const TRACE_LINE_LIMIT = 10;
|
|
10
|
+
const TRACE_CHAR_LIMIT = 800;
|
|
11
|
+
const getConnectorLogsArguments = connectorByNameArguments.extend({
|
|
12
|
+
organizationId: z
|
|
13
|
+
.string()
|
|
14
|
+
.trim()
|
|
15
|
+
.optional()
|
|
16
|
+
.describe("The Confluent Cloud organization ID. Falls back to the connection's confluent_cloud.organization_id, then auto-resolves via GET /org/v2/organizations."),
|
|
17
|
+
connectorId: z
|
|
18
|
+
.string()
|
|
19
|
+
.trim()
|
|
20
|
+
.optional()
|
|
21
|
+
.describe("Optional connector resource ID (e.g. 'lcc-abc123'). When provided, narrows the log search by connector ID."),
|
|
22
|
+
levels: z
|
|
23
|
+
.array(z.enum(["ERROR", "WARN", "INFO", "DEBUG", "TRACE"]))
|
|
24
|
+
.nonempty()
|
|
25
|
+
.optional()
|
|
26
|
+
.describe('Log levels to include. Defaults to ["ERROR"] if not specified.'),
|
|
27
|
+
startTime: z
|
|
28
|
+
.string()
|
|
29
|
+
.trim()
|
|
30
|
+
.optional()
|
|
31
|
+
.describe("ISO 8601 start time (e.g. '2026-04-29T03:50:13Z'). Defaults to one hour before endTime."),
|
|
32
|
+
endTime: z
|
|
33
|
+
.string()
|
|
34
|
+
.trim()
|
|
35
|
+
.optional()
|
|
36
|
+
.describe("ISO 8601 end time (e.g. '2026-04-29T04:50:13Z'). Defaults to the current time."),
|
|
37
|
+
pageSize: z
|
|
38
|
+
.number()
|
|
39
|
+
.int()
|
|
40
|
+
.positive()
|
|
41
|
+
.max(200)
|
|
42
|
+
.optional()
|
|
43
|
+
.describe("Maximum number of log entries to return per page (default 100, max 200)."),
|
|
44
|
+
pageToken: z
|
|
45
|
+
.string()
|
|
46
|
+
.trim()
|
|
47
|
+
.optional()
|
|
48
|
+
.describe("Opaque pagination token from a prior call's nextPageToken response field. Pass to retrieve the next page of results."),
|
|
49
|
+
});
|
|
50
|
+
function truncateStacktrace(trace) {
|
|
51
|
+
if (!trace)
|
|
52
|
+
return undefined;
|
|
53
|
+
const trimmed = trace.trimEnd();
|
|
54
|
+
if (!trimmed)
|
|
55
|
+
return undefined;
|
|
56
|
+
const lines = trimmed.split("\n");
|
|
57
|
+
let head = lines.slice(0, TRACE_LINE_LIMIT).join("\n");
|
|
58
|
+
const truncatedByLines = lines.length > TRACE_LINE_LIMIT;
|
|
59
|
+
let truncatedByChars = false;
|
|
60
|
+
if (head.length > TRACE_CHAR_LIMIT) {
|
|
61
|
+
head = head.slice(0, TRACE_CHAR_LIMIT);
|
|
62
|
+
truncatedByChars = true;
|
|
63
|
+
}
|
|
64
|
+
return truncatedByLines || truncatedByChars
|
|
65
|
+
? `${head}\n... [truncated]`
|
|
66
|
+
: head;
|
|
67
|
+
}
|
|
68
|
+
function isoSecondsZ(date) {
|
|
69
|
+
return `${date.toISOString().slice(0, 19)}Z`;
|
|
70
|
+
}
|
|
71
|
+
function buildCrn(organizationId, environmentId, clusterId, connectorName) {
|
|
72
|
+
return `crn://confluent.cloud/organization=${organizationId}/environment=${environmentId}/cloud-cluster=${clusterId}/connector=${connectorName}`;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Exchanges a Cloud API key/secret for a short-lived data-plane bearer token by
|
|
76
|
+
* POSTing to {PLATFORM_BASE}/api/access_tokens with HTTP Basic auth. The
|
|
77
|
+
* resulting Bearer token is what api.logging.confluent.cloud accepts; Basic
|
|
78
|
+
* auth with the API key directly is rejected with a 401.
|
|
79
|
+
*/
|
|
80
|
+
async function exchangeForDataPlaneToken(apiKey, apiSecret) {
|
|
81
|
+
const url = `${PLATFORM_BASE}/api/access_tokens`;
|
|
82
|
+
const basicAuth = `Basic ${Buffer.from(`${apiKey}:${apiSecret}`).toString("base64")}`;
|
|
83
|
+
const response = await nodeFetch.fetch(url, {
|
|
84
|
+
method: "POST",
|
|
85
|
+
headers: {
|
|
86
|
+
Authorization: basicAuth,
|
|
87
|
+
"Content-Type": "application/json",
|
|
88
|
+
Accept: "application/json",
|
|
89
|
+
},
|
|
90
|
+
body: "{}",
|
|
91
|
+
});
|
|
92
|
+
if (!response.ok) {
|
|
93
|
+
let detail = "";
|
|
94
|
+
try {
|
|
95
|
+
detail = await response.text();
|
|
96
|
+
}
|
|
97
|
+
catch {
|
|
98
|
+
// ignore — surface status alone
|
|
99
|
+
}
|
|
100
|
+
throw new Error(`Failed to exchange API key for data-plane token (HTTP ${response.status}): ${detail || response.statusText}`);
|
|
101
|
+
}
|
|
102
|
+
const json = (await response.json());
|
|
103
|
+
if (!json.token) {
|
|
104
|
+
throw new Error("Data-plane token response missing 'token' field; cannot authenticate against the logging API.");
|
|
105
|
+
}
|
|
106
|
+
return json.token;
|
|
107
|
+
}
|
|
108
|
+
async function resolveOrganizationId(clientManager, conn, argOrgId) {
|
|
109
|
+
if (argOrgId)
|
|
110
|
+
return argOrgId;
|
|
111
|
+
const configOrgId = conn.confluent_cloud?.organization_id;
|
|
112
|
+
if (configOrgId)
|
|
113
|
+
return configOrgId;
|
|
114
|
+
const pathBasedClient = wrapAsPathBasedClient(clientManager.getConfluentCloudRestClient());
|
|
115
|
+
const { data, error } = await pathBasedClient["/org/v2/organizations"].GET({});
|
|
116
|
+
if (error) {
|
|
117
|
+
throw new Error(`Failed to auto-resolve organization ID via GET /org/v2/organizations: ${JSON.stringify(error)}`);
|
|
118
|
+
}
|
|
119
|
+
const first = data?.data?.[0]?.id;
|
|
120
|
+
if (!first) {
|
|
121
|
+
throw new Error("Failed to auto-resolve organization ID: GET /org/v2/organizations returned no organizations. Pass organizationId or set confluent_cloud.organization_id in the connection config.");
|
|
122
|
+
}
|
|
123
|
+
return first;
|
|
124
|
+
}
|
|
125
|
+
export class GetConnectorLogsHandler extends ConnectToolHandler {
|
|
126
|
+
async handle(runtime, toolArguments) {
|
|
127
|
+
const clientManager = runtime.clientManager;
|
|
128
|
+
const args = getConnectorLogsArguments.parse(toolArguments);
|
|
129
|
+
const conn = runtime.config.getSoleDirectConnection();
|
|
130
|
+
const { environment_id, kafka_cluster_id } = this.resolveConnectEnvAndClusterId(conn, args.environmentId, args.clusterId);
|
|
131
|
+
const ccAuth = conn.confluent_cloud?.auth;
|
|
132
|
+
if (!ccAuth) {
|
|
133
|
+
throw new Error("confluent_cloud.auth is required to authenticate against the logging API.");
|
|
134
|
+
}
|
|
135
|
+
const organization_id = await resolveOrganizationId(clientManager, conn, args.organizationId);
|
|
136
|
+
const now = new Date();
|
|
137
|
+
const endTime = args.endTime ?? isoSecondsZ(now);
|
|
138
|
+
const startTime = args.startTime ??
|
|
139
|
+
isoSecondsZ(new Date(new Date(endTime).getTime() - 60 * 60 * 1000));
|
|
140
|
+
const levels = args.levels ?? ["ERROR"];
|
|
141
|
+
const pageSize = args.pageSize ?? 100;
|
|
142
|
+
const crn = buildCrn(organization_id, environment_id, kafka_cluster_id, args.connectorName);
|
|
143
|
+
const search = { level: levels };
|
|
144
|
+
if (args.connectorId) {
|
|
145
|
+
search.id = args.connectorId;
|
|
146
|
+
}
|
|
147
|
+
const body = {
|
|
148
|
+
crn,
|
|
149
|
+
search,
|
|
150
|
+
sort: "desc",
|
|
151
|
+
start_time: startTime,
|
|
152
|
+
end_time: endTime,
|
|
153
|
+
};
|
|
154
|
+
let dataPlaneToken;
|
|
155
|
+
try {
|
|
156
|
+
dataPlaneToken = await exchangeForDataPlaneToken(ccAuth.key, ccAuth.secret);
|
|
157
|
+
}
|
|
158
|
+
catch (err) {
|
|
159
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
160
|
+
return this.createResponse(`Failed to fetch logs for connector ${args.connectorName}: ${message}`, true);
|
|
161
|
+
}
|
|
162
|
+
const queryParams = new URLSearchParams({ page_size: String(pageSize) });
|
|
163
|
+
if (args.pageToken) {
|
|
164
|
+
queryParams.set("page_token", args.pageToken);
|
|
165
|
+
}
|
|
166
|
+
const url = `${LOGGING_API_BASE}/logs/v1/search?${queryParams.toString()}`;
|
|
167
|
+
const authHeader = `Bearer ${dataPlaneToken}`;
|
|
168
|
+
let response;
|
|
169
|
+
try {
|
|
170
|
+
response = await nodeFetch.fetch(url, {
|
|
171
|
+
method: "POST",
|
|
172
|
+
headers: {
|
|
173
|
+
"Content-Type": "application/json",
|
|
174
|
+
Accept: "application/json",
|
|
175
|
+
Authorization: authHeader,
|
|
176
|
+
},
|
|
177
|
+
body: JSON.stringify(body),
|
|
178
|
+
});
|
|
179
|
+
}
|
|
180
|
+
catch (err) {
|
|
181
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
182
|
+
return this.createResponse(`Failed to fetch logs for connector ${args.connectorName}: ${message}`, true);
|
|
183
|
+
}
|
|
184
|
+
if (!response.ok) {
|
|
185
|
+
let detail = "";
|
|
186
|
+
try {
|
|
187
|
+
detail = await response.text();
|
|
188
|
+
}
|
|
189
|
+
catch {
|
|
190
|
+
// ignore — surface status alone
|
|
191
|
+
}
|
|
192
|
+
return this.createResponse(`Logging API returned ${response.status} for connector ${args.connectorName}: ${detail || response.statusText}`, true);
|
|
193
|
+
}
|
|
194
|
+
let parsed;
|
|
195
|
+
try {
|
|
196
|
+
parsed = (await response.json());
|
|
197
|
+
}
|
|
198
|
+
catch (err) {
|
|
199
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
200
|
+
return this.createResponse(`Failed to parse logs response for connector ${args.connectorName}: ${message}`, true);
|
|
201
|
+
}
|
|
202
|
+
const data = parsed.data ?? [];
|
|
203
|
+
if (data.length === 0) {
|
|
204
|
+
return this.createResponse(`No log entries for connector ${args.connectorName} in the requested window (${startTime} to ${endTime}, levels=${levels.join(",")}).`);
|
|
205
|
+
}
|
|
206
|
+
const entries = data.map((e) => {
|
|
207
|
+
const projected = {};
|
|
208
|
+
if (e.timestamp)
|
|
209
|
+
projected.timestamp = e.timestamp;
|
|
210
|
+
if (e.level)
|
|
211
|
+
projected.level = e.level;
|
|
212
|
+
if (e.task_id)
|
|
213
|
+
projected.taskId = e.task_id;
|
|
214
|
+
if (e.message)
|
|
215
|
+
projected.message = e.message;
|
|
216
|
+
const stacktraceHead = truncateStacktrace(e.exception?.stacktrace);
|
|
217
|
+
if (stacktraceHead)
|
|
218
|
+
projected.stacktraceHead = stacktraceHead;
|
|
219
|
+
return projected;
|
|
220
|
+
});
|
|
221
|
+
const projection = {
|
|
222
|
+
connectorName: args.connectorName,
|
|
223
|
+
startTime,
|
|
224
|
+
endTime,
|
|
225
|
+
levels,
|
|
226
|
+
totalEntries: entries.length,
|
|
227
|
+
entries,
|
|
228
|
+
};
|
|
229
|
+
const next = parsed.metadata?.next;
|
|
230
|
+
if (typeof next === "string" && next.length > 0) {
|
|
231
|
+
projection.nextPageToken = next;
|
|
232
|
+
}
|
|
233
|
+
return this.createResponse(`Logs for ${args.connectorName}: ${JSON.stringify(projection)}`);
|
|
234
|
+
}
|
|
235
|
+
getToolConfig() {
|
|
236
|
+
return {
|
|
237
|
+
name: ToolName.GET_CONNECTOR_LOGS,
|
|
238
|
+
description: "Retrieve recent log entries for a Confluent Cloud connector from the Cloud logging API. Defaults to the last hour of ERROR-level entries with truncated stacktraces. Use connectorId (lcc-...) to narrow by resource ID. Organization ID auto-resolves from GET /org/v2/organizations when not provided. Paginated: when the response includes a nextPageToken, call again with pageToken=<that value> to retrieve the next page.",
|
|
239
|
+
inputSchema: getConnectorLogsArguments.shape,
|
|
240
|
+
annotations: READ_ONLY,
|
|
241
|
+
};
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
//# sourceMappingURL=get-connector-logs-handler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-connector-logs-handler.js","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/connect/get-connector-logs-handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { CallToolResult } from "../../../../confluent/schema.js";
|
|
2
|
+
import { ToolConfig } from "../../../../confluent/tools/base-tools.js";
|
|
3
|
+
import { ConnectToolHandler } from "../../../../confluent/tools/handlers/connect/connect-tool-handler.js";
|
|
4
|
+
import { ServerRuntime } from "../../../../server-runtime.js";
|
|
5
|
+
export declare class GetConnectorOffsetsHandler extends ConnectToolHandler {
|
|
6
|
+
handle(runtime: ServerRuntime, toolArguments: Record<string, unknown> | undefined): Promise<CallToolResult>;
|
|
7
|
+
getToolConfig(): ToolConfig;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=get-connector-offsets-handler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-connector-offsets-handler.d.ts","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/connect/get-connector-offsets-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAa,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EACL,kBAAkB,EAEnB,MAAM,+DAA+D,CAAC;AAEvE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAGvD,qBAAa,0BAA2B,SAAQ,kBAAkB;IAC1D,MAAM,CACV,OAAO,EAAE,aAAa,EACtB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GACjD,OAAO,CAAC,cAAc,CAAC;IAkC1B,aAAa,IAAI,UAAU;CAS5B"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { READ_ONLY } from "../../../../confluent/tools/base-tools.js";
|
|
2
|
+
import { ConnectToolHandler, connectorByNameArguments, } from "../../../../confluent/tools/handlers/connect/connect-tool-handler.js";
|
|
3
|
+
import { ToolName } from "../../../../confluent/tools/tool-name.js";
|
|
4
|
+
import { wrapAsPathBasedClient } from "openapi-fetch";
|
|
5
|
+
export class GetConnectorOffsetsHandler extends ConnectToolHandler {
|
|
6
|
+
async handle(runtime, toolArguments) {
|
|
7
|
+
const clientManager = runtime.clientManager;
|
|
8
|
+
const { clusterId, environmentId, connectorName } = connectorByNameArguments.parse(toolArguments);
|
|
9
|
+
const conn = runtime.config.getSoleDirectConnection();
|
|
10
|
+
const { environment_id, kafka_cluster_id } = this.resolveConnectEnvAndClusterId(conn, environmentId, clusterId);
|
|
11
|
+
const pathBasedClient = wrapAsPathBasedClient(clientManager.getConfluentCloudRestClient());
|
|
12
|
+
const { data: response, error } = await pathBasedClient["/connect/v1/environments/{environment_id}/clusters/{kafka_cluster_id}/connectors/{connector_name}/offsets"].GET({
|
|
13
|
+
params: {
|
|
14
|
+
path: {
|
|
15
|
+
connector_name: connectorName,
|
|
16
|
+
environment_id,
|
|
17
|
+
kafka_cluster_id,
|
|
18
|
+
},
|
|
19
|
+
},
|
|
20
|
+
});
|
|
21
|
+
if (error) {
|
|
22
|
+
return this.createResponse(`Failed to get offsets for connector ${connectorName}: ${JSON.stringify(error)}`, true);
|
|
23
|
+
}
|
|
24
|
+
return this.createResponse(`Connector Offsets for ${connectorName}: ${JSON.stringify(response)}`);
|
|
25
|
+
}
|
|
26
|
+
getToolConfig() {
|
|
27
|
+
return {
|
|
28
|
+
name: ToolName.GET_CONNECTOR_OFFSETS,
|
|
29
|
+
description: "Retrieve current offsets for a connector's tasks. Useful for detecting lag, stalled tasks, or assisting recovery.",
|
|
30
|
+
inputSchema: connectorByNameArguments.shape,
|
|
31
|
+
annotations: READ_ONLY,
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=get-connector-offsets-handler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-connector-offsets-handler.js","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/connect/get-connector-offsets-handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAc,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EACL,kBAAkB,EAClB,wBAAwB,GACzB,MAAM,+DAA+D,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAE7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEtD,MAAM,OAAO,0BAA2B,SAAQ,kBAAkB;IAChE,KAAK,CAAC,MAAM,CACV,OAAsB,EACtB,aAAkD;QAElD,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;QAC5C,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,EAAE,GAC/C,wBAAwB,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAEhD,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,uBAAuB,EAAE,CAAC;QACtD,MAAM,EAAE,cAAc,EAAE,gBAAgB,EAAE,GACxC,IAAI,CAAC,6BAA6B,CAAC,IAAI,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;QAErE,MAAM,eAAe,GAAG,qBAAqB,CAC3C,aAAa,CAAC,2BAA2B,EAAE,CAC5C,CAAC;QACF,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,MAAM,eAAe,CACrD,2GAA2G,CAC5G,CAAC,GAAG,CAAC;YACJ,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,cAAc,EAAE,aAAa;oBAC7B,cAAc;oBACd,gBAAgB;iBACjB;aACF;SACF,CAAC,CAAC;QACH,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,IAAI,CAAC,cAAc,CACxB,uCAAuC,aAAa,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAChF,IAAI,CACL,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CACxB,yBAAyB,aAAa,KAAK,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CACtE,CAAC;IACJ,CAAC;IAED,aAAa;QACX,OAAO;YACL,IAAI,EAAE,QAAQ,CAAC,qBAAqB;YACpC,WAAW,EACT,mHAAmH;YACrH,WAAW,EAAE,wBAAwB,CAAC,KAAK;YAC3C,WAAW,EAAE,SAAS;SACvB,CAAC;IACJ,CAAC;CACF"}
|