@confluentinc/mcp-confluent 1.0.3 → 1.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. package/README.md +176 -24
  2. package/dist/confluent/client-manager.d.ts +9 -0
  3. package/dist/confluent/client-manager.d.ts.map +1 -1
  4. package/dist/confluent/client-manager.js +22 -0
  5. package/dist/confluent/client-manager.js.map +1 -1
  6. package/dist/confluent/middleware.d.ts +1 -0
  7. package/dist/confluent/middleware.d.ts.map +1 -1
  8. package/dist/confluent/middleware.js.map +1 -1
  9. package/dist/confluent/tools/handlers/environments/read-environment-handler.d.ts.map +1 -1
  10. package/dist/confluent/tools/handlers/environments/read-environment-handler.js +1 -1
  11. package/dist/confluent/tools/handlers/environments/read-environment-handler.js.map +1 -1
  12. package/dist/confluent/tools/handlers/tableflow/catalog/create-tableflow-catalog-integration-handler.d.ts +11 -0
  13. package/dist/confluent/tools/handlers/tableflow/catalog/create-tableflow-catalog-integration-handler.d.ts.map +1 -0
  14. package/dist/confluent/tools/handlers/tableflow/catalog/create-tableflow-catalog-integration-handler.js +81 -0
  15. package/dist/confluent/tools/handlers/tableflow/catalog/create-tableflow-catalog-integration-handler.js.map +1 -0
  16. package/dist/confluent/tools/handlers/tableflow/catalog/delete-tableflow-catalog-integration-handler.d.ts +11 -0
  17. package/dist/confluent/tools/handlers/tableflow/catalog/delete-tableflow-catalog-integration-handler.d.ts.map +1 -0
  18. package/dist/confluent/tools/handlers/tableflow/catalog/delete-tableflow-catalog-integration-handler.js +64 -0
  19. package/dist/confluent/tools/handlers/tableflow/catalog/delete-tableflow-catalog-integration-handler.js.map +1 -0
  20. package/dist/confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-handler.d.ts +11 -0
  21. package/dist/confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-handler.d.ts.map +1 -0
  22. package/dist/confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-handler.js +74 -0
  23. package/dist/confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-handler.js.map +1 -0
  24. package/dist/confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-handler.d.ts +11 -0
  25. package/dist/confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-handler.d.ts.map +1 -0
  26. package/dist/confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-handler.js +64 -0
  27. package/dist/confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-handler.js.map +1 -0
  28. package/dist/confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-handler.d.ts +11 -0
  29. package/dist/confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-handler.d.ts.map +1 -0
  30. package/dist/confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-handler.js +81 -0
  31. package/dist/confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-handler.js.map +1 -0
  32. package/dist/confluent/tools/handlers/tableflow/list-tableflow-regions-handler.d.ts +11 -0
  33. package/dist/confluent/tools/handlers/tableflow/list-tableflow-regions-handler.d.ts.map +1 -0
  34. package/dist/confluent/tools/handlers/tableflow/list-tableflow-regions-handler.js +65 -0
  35. package/dist/confluent/tools/handlers/tableflow/list-tableflow-regions-handler.js.map +1 -0
  36. package/dist/confluent/tools/handlers/tableflow/topic/create-tableflow-topic-handler.d.ts +11 -0
  37. package/dist/confluent/tools/handlers/tableflow/topic/create-tableflow-topic-handler.d.ts.map +1 -0
  38. package/dist/confluent/tools/handlers/tableflow/topic/create-tableflow-topic-handler.js +96 -0
  39. package/dist/confluent/tools/handlers/tableflow/topic/create-tableflow-topic-handler.js.map +1 -0
  40. package/dist/confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.d.ts +11 -0
  41. package/dist/confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.d.ts.map +1 -0
  42. package/dist/confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.js +66 -0
  43. package/dist/confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.js.map +1 -0
  44. package/dist/confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.d.ts +11 -0
  45. package/dist/confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.d.ts.map +1 -0
  46. package/dist/confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.js +74 -0
  47. package/dist/confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.js.map +1 -0
  48. package/dist/confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.d.ts +11 -0
  49. package/dist/confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.d.ts.map +1 -0
  50. package/dist/confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.js +66 -0
  51. package/dist/confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.js.map +1 -0
  52. package/dist/confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.d.ts +11 -0
  53. package/dist/confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.d.ts.map +1 -0
  54. package/dist/confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.js +104 -0
  55. package/dist/confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.js.map +1 -0
  56. package/dist/confluent/tools/tool-factory.d.ts.map +1 -1
  57. package/dist/confluent/tools/tool-factory.js +38 -1
  58. package/dist/confluent/tools/tool-factory.js.map +1 -1
  59. package/dist/confluent/tools/tool-name.d.ts +12 -1
  60. package/dist/confluent/tools/tool-name.d.ts.map +1 -1
  61. package/dist/confluent/tools/tool-name.js +11 -0
  62. package/dist/confluent/tools/tool-name.js.map +1 -1
  63. package/dist/env-schema.d.ts +15 -0
  64. package/dist/env-schema.d.ts.map +1 -1
  65. package/dist/env-schema.js +27 -3
  66. package/dist/env-schema.js.map +1 -1
  67. package/dist/env.d.ts +5 -0
  68. package/dist/env.d.ts.map +1 -1
  69. package/dist/index.js +6 -2
  70. package/dist/index.js.map +1 -1
  71. package/dist/mcp/transports/http.d.ts +4 -3
  72. package/dist/mcp/transports/http.d.ts.map +1 -1
  73. package/dist/mcp/transports/http.js +76 -21
  74. package/dist/mcp/transports/http.js.map +1 -1
  75. package/dist/mcp/transports/manager.d.ts +2 -2
  76. package/dist/mcp/transports/manager.d.ts.map +1 -1
  77. package/dist/mcp/transports/manager.js +10 -10
  78. package/dist/mcp/transports/manager.js.map +1 -1
  79. package/dist/mcp/transports/ping.d.ts +36 -0
  80. package/dist/mcp/transports/ping.d.ts.map +1 -0
  81. package/dist/mcp/transports/ping.js +29 -0
  82. package/dist/mcp/transports/ping.js.map +1 -0
  83. package/dist/mcp/transports/server.d.ts.map +1 -1
  84. package/dist/mcp/transports/server.js +2 -1
  85. package/dist/mcp/transports/server.js.map +1 -1
  86. package/dist/mcp/transports/sse.d.ts +5 -3
  87. package/dist/mcp/transports/sse.d.ts.map +1 -1
  88. package/dist/mcp/transports/sse.js +20 -4
  89. package/dist/mcp/transports/sse.js.map +1 -1
  90. package/dist/print-md-schema.js +1 -1
  91. package/dist/print-md-schema.js.map +1 -1
  92. package/package.json +24 -23
@@ -0,0 +1,96 @@
1
+ import { BaseToolHandler, } from "../../../../../confluent/tools/base-tools.js";
2
+ import { getEnsuredParam } from "../../../../../confluent/helpers.js";
3
+ import { ToolName } from "../../../../../confluent/tools/tool-name.js";
4
+ import env from "../../../../../env.js";
5
+ import { wrapAsPathBasedClient } from "openapi-fetch";
6
+ import { z } from "zod";
7
+ const createTableflowTopicArguments = z.object({
8
+ baseUrl: z
9
+ .string()
10
+ .trim()
11
+ .describe("The base url of the Tableflow REST API.")
12
+ .url()
13
+ .default(() => env.CONFLUENT_CLOUD_REST_ENDPOINT ?? "")
14
+ .optional(),
15
+ tableflowTopicConfig: z.object({
16
+ // Required fields
17
+ display_name: z
18
+ .string()
19
+ .describe("The name of the Kafka topic for which Tableflow is enabled."),
20
+ storage: z.object({
21
+ kind: z
22
+ .enum(["ByobAws", "Managed"])
23
+ .default("ByobAws")
24
+ .describe("The storage type either 'Managed' or 'ByobAws'."),
25
+ bucket_name: z.string().describe("The bucket name."),
26
+ provider_integration_id: z
27
+ .string()
28
+ .describe("The provider integration id."),
29
+ }),
30
+ // Optional fields
31
+ suspended: z
32
+ .boolean()
33
+ .optional()
34
+ .default(false)
35
+ .describe("Indicates whether Tableflow should be suspended. The API allows setting it only to false i.e resume the Tableflow."),
36
+ config: z.object({
37
+ retention_ms: z
38
+ .string()
39
+ .default("6048000000") // equivalent to 7 days
40
+ .describe("The maximum age, in milliseconds, of snapshots (for Iceberg) or versions(for Delta) to retain in the table for the Tableflow-enabled topic."),
41
+ record_failure_strategy: z
42
+ .string()
43
+ .default("SUSPEND")
44
+ .describe("The strategy to handle record failures in the Tableflow enabled topic during materialization."),
45
+ }),
46
+ table_formats: z
47
+ .array(z.string())
48
+ .default(["ICEBERG"])
49
+ .describe("The supported table formats for the Tableflow-enabled topic e.g ICEBERG, DELTA"),
50
+ }),
51
+ });
52
+ export class CreateTableFlowTopicHandler extends BaseToolHandler {
53
+ async handle(clientManager, toolArguments) {
54
+ const { baseUrl, tableflowTopicConfig } = createTableflowTopicArguments.parse(toolArguments);
55
+ const environment_id = getEnsuredParam("KAFKA_ENV_ID", "Environment ID is required");
56
+ const kafka_cluster_id = getEnsuredParam("KAFKA_CLUSTER_ID", "Kafka Cluster ID is required");
57
+ if (baseUrl !== undefined && baseUrl !== "") {
58
+ clientManager.setConfluentCloudTableflowRestEndpoint(baseUrl);
59
+ }
60
+ const pathBasedClient = wrapAsPathBasedClient(clientManager.getConfluentCloudTableflowRestClient());
61
+ const { data: response, error } = await pathBasedClient["/tableflow/v1/tableflow-topics"].POST({
62
+ body: {
63
+ spec: {
64
+ environment: {
65
+ id: environment_id, // Only include id, as the general environment object also requires readonly and resource_name
66
+ },
67
+ kafka_cluster: {
68
+ id: kafka_cluster_id,
69
+ environment: environment_id,
70
+ },
71
+ ...tableflowTopicConfig,
72
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
73
+ }, // Due to how OpenAPI specification is structured and how generators interpret it, we have to treat it as any, as
74
+ // The most likely culprit for mismatch is the reuse of a single base schema for both input (requestBody) and output (responses) evironment.
75
+ },
76
+ });
77
+ if (error) {
78
+ return this.createResponse(`Failed to create Tableflow topic for ${tableflowTopicConfig.display_name}: ${JSON.stringify(error)}`, true);
79
+ }
80
+ return this.createResponse(`Tableflow Topic ${tableflowTopicConfig.display_name} created: ${JSON.stringify(response)}`);
81
+ }
82
+ getToolConfig() {
83
+ return {
84
+ name: ToolName.CREATE_TABLEFLOW_TOPIC,
85
+ description: `Make a request to create a tableflow topic.`,
86
+ inputSchema: createTableflowTopicArguments.shape,
87
+ };
88
+ }
89
+ getRequiredEnvVars() {
90
+ return ["TABLEFLOW_API_KEY", "TABLEFLOW_API_SECRET"];
91
+ }
92
+ isConfluentCloudOnly() {
93
+ return true;
94
+ }
95
+ }
96
+ //# sourceMappingURL=create-tableflow-topic-handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-tableflow-topic-handler.js","sourceRoot":"","sources":["../../../../../../src/confluent/tools/handlers/tableflow/topic/create-tableflow-topic-handler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import { ClientManager } from "../../../../../confluent/client-manager.js";
2
+ import { CallToolResult } from "../../../../../confluent/schema.js";
3
+ import { BaseToolHandler, ToolConfig } from "../../../../../confluent/tools/base-tools.js";
4
+ import { EnvVar } from "../../../../../env-schema.js";
5
+ export declare class DeleteTableFlowTopicHandler extends BaseToolHandler {
6
+ handle(clientManager: ClientManager, toolArguments: Record<string, unknown> | undefined): Promise<CallToolResult>;
7
+ getToolConfig(): ToolConfig;
8
+ getRequiredEnvVars(): EnvVar[];
9
+ isConfluentCloudOnly(): boolean;
10
+ }
11
+ //# sourceMappingURL=delete-tableflow-topic-handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-tableflow-topic-handler.d.ts","sourceRoot":"","sources":["../../../../../../src/confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAEjE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EACL,eAAe,EACf,UAAU,EACX,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AA4B5C,qBAAa,2BAA4B,SAAQ,eAAe;IACxD,MAAM,CACV,aAAa,EAAE,aAAa,EAC5B,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GACjD,OAAO,CAAC,cAAc,CAAC;IA8C1B,aAAa,IAAI,UAAU;IAQ3B,kBAAkB,IAAI,MAAM,EAAE;IAI9B,oBAAoB,IAAI,OAAO;CAGhC"}
@@ -0,0 +1,66 @@
1
+ import { getEnsuredParam } from "../../../../../confluent/helpers.js";
2
+ import { BaseToolHandler, } from "../../../../../confluent/tools/base-tools.js";
3
+ import { ToolName } from "../../../../../confluent/tools/tool-name.js";
4
+ import env from "../../../../../env.js";
5
+ import { wrapAsPathBasedClient } from "openapi-fetch";
6
+ import { z } from "zod";
7
+ const deleteTableflowTopicArguments = z.object({
8
+ baseUrl: z
9
+ .string()
10
+ .trim()
11
+ .describe("The base url of the Tableflow REST API.")
12
+ .url()
13
+ .default(() => env.CONFLUENT_CLOUD_REST_ENDPOINT ?? "")
14
+ .optional(),
15
+ display_name: z
16
+ .string()
17
+ .describe("The name of the Kafka topic for which Tableflow is enabled."),
18
+ environmentId: z
19
+ .string()
20
+ .trim()
21
+ .optional()
22
+ .describe("Scope the operation to the given environment."),
23
+ clusterId: z
24
+ .string()
25
+ .trim()
26
+ .optional()
27
+ .describe("Scope the operation to the give Kafka cluster."),
28
+ });
29
+ export class DeleteTableFlowTopicHandler extends BaseToolHandler {
30
+ async handle(clientManager, toolArguments) {
31
+ const { display_name, environmentId, clusterId, baseUrl } = deleteTableflowTopicArguments.parse(toolArguments);
32
+ const environment_id = getEnsuredParam("KAFKA_ENV_ID", "Environment ID is required", environmentId);
33
+ const kafka_cluster_id = getEnsuredParam("KAFKA_CLUSTER_ID", "Kafka Cluster ID is required", clusterId);
34
+ if (baseUrl !== undefined && baseUrl !== "") {
35
+ clientManager.setConfluentCloudTableflowRestEndpoint(baseUrl);
36
+ }
37
+ const pathBasedClient = wrapAsPathBasedClient(clientManager.getConfluentCloudTableflowRestClient());
38
+ const { data: response, error } = await pathBasedClient[`/tableflow/v1/tableflow-topics/${display_name}?environment=${environment_id}&spec.kafka_cluster=${kafka_cluster_id}`].DELETE({
39
+ params: {
40
+ path: {
41
+ display_name: display_name,
42
+ environment_id: environment_id,
43
+ kafka_cluster_id: kafka_cluster_id,
44
+ },
45
+ },
46
+ });
47
+ if (error) {
48
+ return this.createResponse(`Failed to delete Tableflow topic ${display_name}: ${JSON.stringify(error)}`, true);
49
+ }
50
+ return this.createResponse(`Tableflow Topic ${display_name} deleted: ${JSON.stringify(response)}`);
51
+ }
52
+ getToolConfig() {
53
+ return {
54
+ name: ToolName.DELETE_TABLEFLOW_TOPIC,
55
+ description: `Make a request to delete a tableflow topic.`,
56
+ inputSchema: deleteTableflowTopicArguments.shape,
57
+ };
58
+ }
59
+ getRequiredEnvVars() {
60
+ return ["TABLEFLOW_API_KEY", "TABLEFLOW_API_SECRET"];
61
+ }
62
+ isConfluentCloudOnly() {
63
+ return true;
64
+ }
65
+ }
66
+ //# sourceMappingURL=delete-tableflow-topic-handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-tableflow-topic-handler.js","sourceRoot":"","sources":["../../../../../../src/confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAE5D,OAAO,EACL,eAAe,GAEhB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAE7D,OAAO,GAAG,MAAM,aAAa,CAAC;AAC9B,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,6BAA6B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,IAAI,EAAE;SACN,QAAQ,CAAC,yCAAyC,CAAC;SACnD,GAAG,EAAE;SACL,OAAO,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,6BAA6B,IAAI,EAAE,CAAC;SACtD,QAAQ,EAAE;IACb,YAAY,EAAE,CAAC;SACZ,MAAM,EAAE;SACR,QAAQ,CAAC,6DAA6D,CAAC;IAC1E,aAAa,EAAE,CAAC;SACb,MAAM,EAAE;SACR,IAAI,EAAE;SACN,QAAQ,EAAE;SACV,QAAQ,CAAC,+CAA+C,CAAC;IAC5D,SAAS,EAAE,CAAC;SACT,MAAM,EAAE;SACR,IAAI,EAAE;SACN,QAAQ,EAAE;SACV,QAAQ,CAAC,gDAAgD,CAAC;CAC9D,CAAC,CAAC;AAEH,MAAM,OAAO,2BAA4B,SAAQ,eAAe;IAC9D,KAAK,CAAC,MAAM,CACV,aAA4B,EAC5B,aAAkD;QAElD,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,EAAE,GACvD,6BAA6B,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAErD,MAAM,cAAc,GAAG,eAAe,CACpC,cAAc,EACd,4BAA4B,EAC5B,aAAa,CACd,CAAC;QAEF,MAAM,gBAAgB,GAAG,eAAe,CACtC,kBAAkB,EAClB,8BAA8B,EAC9B,SAAS,CACV,CAAC;QAEF,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;YAC5C,aAAa,CAAC,sCAAsC,CAAC,OAAO,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,eAAe,GAAG,qBAAqB,CAC3C,aAAa,CAAC,oCAAoC,EAAE,CACrD,CAAC;QAEF,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,MAAM,eAAe,CACrD,kCAAkC,YAAY,gBAAgB,cAAc,uBAAuB,gBAAgB,EAAE,CACtH,CAAC,MAAM,CAAC;YACP,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,YAAY,EAAE,YAAY;oBAC1B,cAAc,EAAE,cAAc;oBAC9B,gBAAgB,EAAE,gBAAgB;iBACnC;aACF;SACF,CAAC,CAAC;QACH,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,IAAI,CAAC,cAAc,CACxB,oCAAoC,YAAY,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAC5E,IAAI,CACL,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CACxB,mBAAmB,YAAY,aAAa,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CACvE,CAAC;IACJ,CAAC;IAED,aAAa;QACX,OAAO;YACL,IAAI,EAAE,QAAQ,CAAC,sBAAsB;YACrC,WAAW,EAAE,6CAA6C;YAC1D,WAAW,EAAE,6BAA6B,CAAC,KAAK;SACjD,CAAC;IACJ,CAAC;IAED,kBAAkB;QAChB,OAAO,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,CAAC;IACvD,CAAC;IAED,oBAAoB;QAClB,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
@@ -0,0 +1,11 @@
1
+ import { ClientManager } from "../../../../../confluent/client-manager.js";
2
+ import { CallToolResult } from "../../../../../confluent/schema.js";
3
+ import { BaseToolHandler, ToolConfig } from "../../../../../confluent/tools/base-tools.js";
4
+ import { EnvVar } from "../../../../../env-schema.js";
5
+ export declare class ListTableFlowTopicsHandler extends BaseToolHandler {
6
+ handle(clientManager: ClientManager, toolArguments: Record<string, unknown> | undefined): Promise<CallToolResult>;
7
+ getToolConfig(): ToolConfig;
8
+ getRequiredEnvVars(): EnvVar[];
9
+ isConfluentCloudOnly(): boolean;
10
+ }
11
+ //# sourceMappingURL=list-tableflow-topics-handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-tableflow-topics-handler.d.ts","sourceRoot":"","sources":["../../../../../../src/confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAEjE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EACL,eAAe,EACf,UAAU,EACX,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAuC5C,qBAAa,0BAA2B,SAAQ,eAAe;IACvD,MAAM,CACV,aAAa,EAAE,aAAa,EAC5B,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GACjD,OAAO,CAAC,cAAc,CAAC;IAyC1B,aAAa,IAAI,UAAU;IAQ3B,kBAAkB,IAAI,MAAM,EAAE;IAI9B,oBAAoB,IAAI,OAAO;CAGhC"}
@@ -0,0 +1,74 @@
1
+ import { getEnsuredParam } from "../../../../../confluent/helpers.js";
2
+ import { BaseToolHandler, } from "../../../../../confluent/tools/base-tools.js";
3
+ import { ToolName } from "../../../../../confluent/tools/tool-name.js";
4
+ import env from "../../../../../env.js";
5
+ import { wrapAsPathBasedClient } from "openapi-fetch";
6
+ import { z } from "zod";
7
+ const listTableFlowTopicArguments = z.object({
8
+ baseUrl: z
9
+ .string()
10
+ .trim()
11
+ .describe("The base url of the Tableflow REST API.")
12
+ .url()
13
+ .default(() => env.CONFLUENT_CLOUD_REST_ENDPOINT ?? "")
14
+ .optional(),
15
+ environmentId: z
16
+ .string()
17
+ .trim()
18
+ .optional()
19
+ .describe("The unique identifier for the enviornment this resource belongs to."),
20
+ clusterId: z
21
+ .string()
22
+ .trim()
23
+ .optional()
24
+ .describe("The unique identifier for the Kafka Cluster."),
25
+ pageSize: z
26
+ .string()
27
+ .trim()
28
+ .optional()
29
+ .default("10")
30
+ .describe("The pagination size of collection requests."),
31
+ pageToken: z
32
+ .string()
33
+ .trim()
34
+ .optional()
35
+ .default("0")
36
+ .describe("An opaque pagination token for collection requests."),
37
+ });
38
+ export class ListTableFlowTopicsHandler extends BaseToolHandler {
39
+ async handle(clientManager, toolArguments) {
40
+ const { clusterId, environmentId, baseUrl } = listTableFlowTopicArguments.parse(toolArguments);
41
+ const environment_id = getEnsuredParam("KAFKA_ENV_ID", "Environment ID is required", environmentId);
42
+ const kafka_cluster_id = getEnsuredParam("KAFKA_CLUSTER_ID", "Kafka Cluster ID is required", clusterId);
43
+ if (baseUrl !== undefined && baseUrl !== "") {
44
+ clientManager.setConfluentCloudTableflowRestEndpoint(baseUrl);
45
+ }
46
+ const pathBasedClient = wrapAsPathBasedClient(clientManager.getConfluentCloudTableflowRestClient());
47
+ const { data: response, error } = await pathBasedClient[`/tableflow/v1/tableflow-topics?environment=${environment_id}&spec.kafka_cluster=${kafka_cluster_id}`].GET({
48
+ params: {
49
+ path: {
50
+ environment_id: environment_id,
51
+ kafka_cluster_id: kafka_cluster_id,
52
+ },
53
+ },
54
+ });
55
+ if (error) {
56
+ return this.createResponse(`Failed to list Tableflow topics for ${clusterId}: ${JSON.stringify(error)}`, true);
57
+ }
58
+ return this.createResponse(`Tableflow Topics: ${JSON.stringify(response)}`);
59
+ }
60
+ getToolConfig() {
61
+ return {
62
+ name: ToolName.LIST_TABLEFLOW_TOPICS,
63
+ description: `Retrieve a sorted, filtered, paginated list of all tableflow topics.`,
64
+ inputSchema: listTableFlowTopicArguments.shape,
65
+ };
66
+ }
67
+ getRequiredEnvVars() {
68
+ return ["TABLEFLOW_API_KEY", "TABLEFLOW_API_SECRET"];
69
+ }
70
+ isConfluentCloudOnly() {
71
+ return true;
72
+ }
73
+ }
74
+ //# sourceMappingURL=list-tableflow-topics-handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-tableflow-topics-handler.js","sourceRoot":"","sources":["../../../../../../src/confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAE5D,OAAO,EACL,eAAe,GAEhB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAE7D,OAAO,GAAG,MAAM,aAAa,CAAC;AAC9B,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,IAAI,EAAE;SACN,QAAQ,CAAC,yCAAyC,CAAC;SACnD,GAAG,EAAE;SACL,OAAO,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,6BAA6B,IAAI,EAAE,CAAC;SACtD,QAAQ,EAAE;IACb,aAAa,EAAE,CAAC;SACb,MAAM,EAAE;SACR,IAAI,EAAE;SACN,QAAQ,EAAE;SACV,QAAQ,CACP,qEAAqE,CACtE;IACH,SAAS,EAAE,CAAC;SACT,MAAM,EAAE;SACR,IAAI,EAAE;SACN,QAAQ,EAAE;SACV,QAAQ,CAAC,8CAA8C,CAAC;IAC3D,QAAQ,EAAE,CAAC;SACR,MAAM,EAAE;SACR,IAAI,EAAE;SACN,QAAQ,EAAE;SACV,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CAAC,6CAA6C,CAAC;IAC1D,SAAS,EAAE,CAAC;SACT,MAAM,EAAE;SACR,IAAI,EAAE;SACN,QAAQ,EAAE;SACV,OAAO,CAAC,GAAG,CAAC;SACZ,QAAQ,CAAC,qDAAqD,CAAC;CACnE,CAAC,CAAC;AAEH,MAAM,OAAO,0BAA2B,SAAQ,eAAe;IAC7D,KAAK,CAAC,MAAM,CACV,aAA4B,EAC5B,aAAkD;QAElD,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,GACzC,2BAA2B,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAEnD,MAAM,cAAc,GAAG,eAAe,CACpC,cAAc,EACd,4BAA4B,EAC5B,aAAa,CACd,CAAC;QACF,MAAM,gBAAgB,GAAG,eAAe,CACtC,kBAAkB,EAClB,8BAA8B,EAC9B,SAAS,CACV,CAAC;QAEF,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;YAC5C,aAAa,CAAC,sCAAsC,CAAC,OAAO,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,eAAe,GAAG,qBAAqB,CAC3C,aAAa,CAAC,oCAAoC,EAAE,CACrD,CAAC;QAEF,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,MAAM,eAAe,CACrD,8CAA8C,cAAc,uBAAuB,gBAAgB,EAAE,CACtG,CAAC,GAAG,CAAC;YACJ,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,cAAc,EAAE,cAAc;oBAC9B,gBAAgB,EAAE,gBAAgB;iBACnC;aACF;SACF,CAAC,CAAC;QACH,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,IAAI,CAAC,cAAc,CACxB,wCAAwC,SAAS,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAC7E,IAAI,CACL,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CAAC,qBAAqB,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC9E,CAAC;IACD,aAAa;QACX,OAAO;YACL,IAAI,EAAE,QAAQ,CAAC,qBAAqB;YACpC,WAAW,EAAE,sEAAsE;YACnF,WAAW,EAAE,2BAA2B,CAAC,KAAK;SAC/C,CAAC;IACJ,CAAC;IAED,kBAAkB;QAChB,OAAO,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,CAAC;IACvD,CAAC;IAED,oBAAoB;QAClB,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
@@ -0,0 +1,11 @@
1
+ import { ClientManager } from "../../../../../confluent/client-manager.js";
2
+ import { CallToolResult } from "../../../../../confluent/schema.js";
3
+ import { BaseToolHandler, ToolConfig } from "../../../../../confluent/tools/base-tools.js";
4
+ import { EnvVar } from "../../../../../env-schema.js";
5
+ export declare class ReadTableFlowTopicHandler extends BaseToolHandler {
6
+ handle(clientManager: ClientManager, toolArguments: Record<string, unknown> | undefined): Promise<CallToolResult>;
7
+ getToolConfig(): ToolConfig;
8
+ getRequiredEnvVars(): EnvVar[];
9
+ isConfluentCloudOnly(): boolean;
10
+ }
11
+ //# sourceMappingURL=read-tableflow-topic-handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"read-tableflow-topic-handler.d.ts","sourceRoot":"","sources":["../../../../../../src/confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAEjE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EACL,eAAe,EACf,UAAU,EACX,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AA4B5C,qBAAa,yBAA0B,SAAQ,eAAe;IACtD,MAAM,CACV,aAAa,EAAE,aAAa,EAC5B,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GACjD,OAAO,CAAC,cAAc,CAAC;IA4C1B,aAAa,IAAI,UAAU;IAQ3B,kBAAkB,IAAI,MAAM,EAAE;IAI9B,oBAAoB,IAAI,OAAO;CAGhC"}
@@ -0,0 +1,66 @@
1
+ import { getEnsuredParam } from "../../../../../confluent/helpers.js";
2
+ import { BaseToolHandler, } from "../../../../../confluent/tools/base-tools.js";
3
+ import { ToolName } from "../../../../../confluent/tools/tool-name.js";
4
+ import env from "../../../../../env.js";
5
+ import { wrapAsPathBasedClient } from "openapi-fetch";
6
+ import { z } from "zod";
7
+ const readTableflowTopicArguments = z.object({
8
+ baseUrl: z
9
+ .string()
10
+ .trim()
11
+ .describe("The base url of the Tableflow REST API.")
12
+ .url()
13
+ .default(() => env.CONFLUENT_CLOUD_REST_ENDPOINT ?? "")
14
+ .optional(),
15
+ display_name: z
16
+ .string()
17
+ .describe("The name of the Kafka topic for which Tableflow is enabled."),
18
+ environmentId: z
19
+ .string()
20
+ .trim()
21
+ .optional()
22
+ .describe("Scope the operation to the given environment."),
23
+ clusterId: z
24
+ .string()
25
+ .trim()
26
+ .optional()
27
+ .describe("Scope the operation to the give Kafka cluster."),
28
+ });
29
+ export class ReadTableFlowTopicHandler extends BaseToolHandler {
30
+ async handle(clientManager, toolArguments) {
31
+ const { display_name, environmentId, clusterId, baseUrl } = readTableflowTopicArguments.parse(toolArguments);
32
+ const environment_id = getEnsuredParam("KAFKA_ENV_ID", "Environment ID is required", environmentId);
33
+ const kafka_cluster_id = getEnsuredParam("KAFKA_CLUSTER_ID", "Kafka Cluster ID is required", clusterId);
34
+ if (baseUrl !== undefined && baseUrl !== "") {
35
+ clientManager.setConfluentCloudTableflowRestEndpoint(baseUrl);
36
+ }
37
+ const pathBasedClient = wrapAsPathBasedClient(clientManager.getConfluentCloudTableflowRestClient());
38
+ const { data: response, error } = await pathBasedClient[`/tableflow/v1/tableflow-topics/${display_name}?environment=${environment_id}&spec.kafka_cluster=${kafka_cluster_id}`].GET({
39
+ params: {
40
+ path: {
41
+ display_name: display_name,
42
+ environment_id: environment_id,
43
+ kafka_cluster_id: kafka_cluster_id,
44
+ },
45
+ },
46
+ });
47
+ if (error) {
48
+ return this.createResponse(`Failed to read Tableflow topic ${display_name}: ${JSON.stringify(error)}`, true);
49
+ }
50
+ return this.createResponse(`Tableflow Topic: ${JSON.stringify(response)}`);
51
+ }
52
+ getToolConfig() {
53
+ return {
54
+ name: ToolName.READ_TABLEFLOW_TOPIC,
55
+ description: `Make a request to read a tableflow topic.`,
56
+ inputSchema: readTableflowTopicArguments.shape,
57
+ };
58
+ }
59
+ getRequiredEnvVars() {
60
+ return ["TABLEFLOW_API_KEY", "TABLEFLOW_API_SECRET"];
61
+ }
62
+ isConfluentCloudOnly() {
63
+ return true;
64
+ }
65
+ }
66
+ //# sourceMappingURL=read-tableflow-topic-handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"read-tableflow-topic-handler.js","sourceRoot":"","sources":["../../../../../../src/confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAE5D,OAAO,EACL,eAAe,GAEhB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAE7D,OAAO,GAAG,MAAM,aAAa,CAAC;AAC9B,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,IAAI,EAAE;SACN,QAAQ,CAAC,yCAAyC,CAAC;SACnD,GAAG,EAAE;SACL,OAAO,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,6BAA6B,IAAI,EAAE,CAAC;SACtD,QAAQ,EAAE;IACb,YAAY,EAAE,CAAC;SACZ,MAAM,EAAE;SACR,QAAQ,CAAC,6DAA6D,CAAC;IAC1E,aAAa,EAAE,CAAC;SACb,MAAM,EAAE;SACR,IAAI,EAAE;SACN,QAAQ,EAAE;SACV,QAAQ,CAAC,+CAA+C,CAAC;IAC5D,SAAS,EAAE,CAAC;SACT,MAAM,EAAE;SACR,IAAI,EAAE;SACN,QAAQ,EAAE;SACV,QAAQ,CAAC,gDAAgD,CAAC;CAC9D,CAAC,CAAC;AAEH,MAAM,OAAO,yBAA0B,SAAQ,eAAe;IAC5D,KAAK,CAAC,MAAM,CACV,aAA4B,EAC5B,aAAkD;QAElD,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,EAAE,GACvD,2BAA2B,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAEnD,MAAM,cAAc,GAAG,eAAe,CACpC,cAAc,EACd,4BAA4B,EAC5B,aAAa,CACd,CAAC;QAEF,MAAM,gBAAgB,GAAG,eAAe,CACtC,kBAAkB,EAClB,8BAA8B,EAC9B,SAAS,CACV,CAAC;QAEF,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;YAC5C,aAAa,CAAC,sCAAsC,CAAC,OAAO,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,eAAe,GAAG,qBAAqB,CAC3C,aAAa,CAAC,oCAAoC,EAAE,CACrD,CAAC;QAEF,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,MAAM,eAAe,CACrD,kCAAkC,YAAY,gBAAgB,cAAc,uBAAuB,gBAAgB,EAAE,CACtH,CAAC,GAAG,CAAC;YACJ,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,YAAY,EAAE,YAAY;oBAC1B,cAAc,EAAE,cAAc;oBAC9B,gBAAgB,EAAE,gBAAgB;iBACnC;aACF;SACF,CAAC,CAAC;QACH,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,IAAI,CAAC,cAAc,CACxB,kCAAkC,YAAY,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAC1E,IAAI,CACL,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CAAC,oBAAoB,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC7E,CAAC;IAED,aAAa;QACX,OAAO;YACL,IAAI,EAAE,QAAQ,CAAC,oBAAoB;YACnC,WAAW,EAAE,2CAA2C;YACxD,WAAW,EAAE,2BAA2B,CAAC,KAAK;SAC/C,CAAC;IACJ,CAAC;IAED,kBAAkB;QAChB,OAAO,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,CAAC;IACvD,CAAC;IAED,oBAAoB;QAClB,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
@@ -0,0 +1,11 @@
1
+ import { ClientManager } from "../../../../../confluent/client-manager.js";
2
+ import { CallToolResult } from "../../../../../confluent/schema.js";
3
+ import { BaseToolHandler, ToolConfig } from "../../../../../confluent/tools/base-tools.js";
4
+ import { EnvVar } from "../../../../../env-schema.js";
5
+ export declare class UpdateTableFlowTopicHandler extends BaseToolHandler {
6
+ handle(clientManager: ClientManager, toolArguments: Record<string, unknown> | undefined): Promise<CallToolResult>;
7
+ getToolConfig(): ToolConfig;
8
+ getRequiredEnvVars(): EnvVar[];
9
+ isConfluentCloudOnly(): boolean;
10
+ }
11
+ //# sourceMappingURL=update-tableflow-topic-handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-tableflow-topic-handler.d.ts","sourceRoot":"","sources":["../../../../../../src/confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EACL,eAAe,EACf,UAAU,EACX,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAwE5C,qBAAa,2BAA4B,SAAQ,eAAe;IACxD,MAAM,CACV,aAAa,EAAE,aAAa,EAC5B,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GACjD,OAAO,CAAC,cAAc,CAAC;IAyC1B,aAAa,IAAI,UAAU;IAQ3B,kBAAkB,IAAI,MAAM,EAAE;IAI9B,oBAAoB,IAAI,OAAO;CAGhC"}
@@ -0,0 +1,104 @@
1
+ import { BaseToolHandler, } from "../../../../../confluent/tools/base-tools.js";
2
+ import { ToolName } from "../../../../../confluent/tools/tool-name.js";
3
+ import env from "../../../../../env.js";
4
+ import { wrapAsPathBasedClient } from "openapi-fetch";
5
+ import { z } from "zod";
6
+ const updateTableflowTopicArguments = z.object({
7
+ baseUrl: z
8
+ .string()
9
+ .trim()
10
+ .describe("The base url of the Tableflow REST API.")
11
+ .url()
12
+ .default(() => env.CONFLUENT_CLOUD_REST_ENDPOINT ?? "")
13
+ .optional(),
14
+ display_name: z
15
+ .string()
16
+ .describe("The name of the Kafka topic for which Tableflow is enabled."),
17
+ tableflowTopicConfig: z.object({
18
+ // Required fields
19
+ storage: z.object({
20
+ kind: z
21
+ .enum(["ByobAws", "Managed"])
22
+ .default("ByobAws")
23
+ .describe("The storage type either 'Managed' or 'ByobAws'."),
24
+ bucket_name: z.string().describe("The bucket name."),
25
+ provider_integration_id: z
26
+ .string()
27
+ .describe("The provider integration id."),
28
+ }),
29
+ environment: z.object({
30
+ id: z
31
+ .string()
32
+ .describe("The unique identifier for the environment this resource belongs to."),
33
+ }),
34
+ kafka_cluster: z.object({
35
+ id: z.string().describe("ID of the referred resource"),
36
+ environment: z
37
+ .string()
38
+ .describe("Environment of the referred resource, if env-scoped"),
39
+ }),
40
+ // Optional fields
41
+ suspended: z
42
+ .boolean()
43
+ .optional()
44
+ .default(false)
45
+ .describe("Indicates whether Tableflow should be suspended. The API allows setting it only to false i.e resume the Tableflow."),
46
+ config: z.object({
47
+ retention_ms: z
48
+ .string()
49
+ .default("6048000000") // equivalent to 7 days
50
+ .describe("The maximum age, in milliseconds, of snapshots (for Iceberg) or versions(for Delta) to retain in the table for the Tableflow-enabled topic."),
51
+ record_failure_strategy: z
52
+ .string()
53
+ .default("SUSPENDED")
54
+ .describe("The strategy to handle record failures in the Tableflow enabled topic during materialization."),
55
+ }),
56
+ table_formats: z
57
+ .array(z.string())
58
+ .default(["ICEBERG"])
59
+ .describe("The supported table formats for the Tableflow-enabled topic e.g ICEBERG, DELTA"),
60
+ }),
61
+ });
62
+ export class UpdateTableFlowTopicHandler extends BaseToolHandler {
63
+ async handle(clientManager, toolArguments) {
64
+ const { baseUrl, display_name, tableflowTopicConfig } = updateTableflowTopicArguments.parse(toolArguments);
65
+ if (baseUrl !== undefined && baseUrl !== "") {
66
+ clientManager.setConfluentCloudTableflowRestEndpoint(baseUrl);
67
+ }
68
+ const pathBasedClient = wrapAsPathBasedClient(clientManager.getConfluentCloudTableflowRestClient());
69
+ const { environment, ...restOfTableflowConfig } = tableflowTopicConfig;
70
+ const { data: response, error } = await pathBasedClient[`/tableflow/v1/tableflow-topics/${display_name}`].PATCH({
71
+ params: {
72
+ path: {
73
+ display_name: display_name,
74
+ },
75
+ },
76
+ body: {
77
+ spec: {
78
+ ...restOfTableflowConfig,
79
+ environment: { id: environment.id }, // Only include id, as the general environment as requires readonly and resource_name
80
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
81
+ }, // Due to how OpenAPI specification is structured and how generators interpret it, we have to treat it as any, as
82
+ // The most likely culprit for mismatch is the reuse of a single base schema for both input (requestBody) and output (responses) evironment.
83
+ },
84
+ });
85
+ if (error) {
86
+ return this.createResponse(`Failed to update Tableflow topic for ${display_name}: ${JSON.stringify(error)}`, true);
87
+ }
88
+ return this.createResponse(`Tableflow Topic ${display_name} updated: ${JSON.stringify(response)}`);
89
+ }
90
+ getToolConfig() {
91
+ return {
92
+ name: ToolName.UPDATE_TABLEFLOW_TOPIC,
93
+ description: `Make a request to update a tableflow topic.`,
94
+ inputSchema: updateTableflowTopicArguments.shape,
95
+ };
96
+ }
97
+ getRequiredEnvVars() {
98
+ return ["TABLEFLOW_API_KEY", "TABLEFLOW_API_SECRET"];
99
+ }
100
+ isConfluentCloudOnly() {
101
+ return true;
102
+ }
103
+ }
104
+ //# sourceMappingURL=update-tableflow-topic-handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-tableflow-topic-handler.js","sourceRoot":"","sources":["../../../../../../src/confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"tool-factory.d.ts","sourceRoot":"","sources":["../../../src/confluent/tools/tool-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AA0B7E,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAG7D,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAC,QAAQ,CA2BpB;IAEH,MAAM,CAAC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,GAAG,WAAW;IAOzD,MAAM,CAAC,cAAc,IAAI,UAAU,EAAE;IAOrC,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAE,QAAQ,GAAG,UAAU;CAMrD"}
1
+ {"version":3,"file":"tool-factory.d.ts","sourceRoot":"","sources":["../../../src/confluent/tools/tool-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AAsC7E,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAE7D,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAqDpB;IAEH,MAAM,CAAC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,GAAG,WAAW;IAOzD,MAAM,CAAC,cAAc,IAAI,UAAU,EAAE;IAOrC,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAE,QAAQ,GAAG,UAAU;CAMrD"}
@@ -18,13 +18,24 @@ import { AlterTopicConfigHandler } from "../../confluent/tools/handlers/kafka/al
18
18
  import { ConsumeKafkaMessagesHandler } from "../../confluent/tools/handlers/kafka/consume-kafka-messages-handler.js";
19
19
  import { CreateTopicsHandler } from "../../confluent/tools/handlers/kafka/create-topics-handler.js";
20
20
  import { DeleteTopicsHandler } from "../../confluent/tools/handlers/kafka/delete-topics-handler.js";
21
+ import { GetTopicConfigHandler } from "../../confluent/tools/handlers/kafka/get-topic-config.js";
21
22
  import { ListTopicsHandler } from "../../confluent/tools/handlers/kafka/list-topics-handler.js";
22
23
  import { ProduceKafkaMessageHandler } from "../../confluent/tools/handlers/kafka/produce-kafka-message-handler.js";
23
24
  import { ListSchemasHandler } from "../../confluent/tools/handlers/schema/list-schemas-handler.js";
24
25
  import { SearchTopicsByTagHandler } from "../../confluent/tools/handlers/search/search-topic-by-tag-handler.js";
25
26
  import { SearchTopicsByNameHandler } from "../../confluent/tools/handlers/search/search-topics-by-name-handler.js";
27
+ import { CreateTableFlowCatalogIntegrationHandler } from "../../confluent/tools/handlers/tableflow/catalog/create-tableflow-catalog-integration-handler.js";
28
+ import { DeleteTableFlowCatalogIntegrationHandler } from "../../confluent/tools/handlers/tableflow/catalog/delete-tableflow-catalog-integration-handler.js";
29
+ import { ListTableFlowCatalogIntegrationsHandler } from "../../confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-handler.js";
30
+ import { ReadTableFlowCatalogIntegrationHandler } from "../../confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-handler.js";
31
+ import { UpdateTableFlowCatalogIntegrationHandler } from "../../confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-handler.js";
32
+ import { ListTableFlowRegionsHandler } from "../../confluent/tools/handlers/tableflow/list-tableflow-regions-handler.js";
33
+ import { CreateTableFlowTopicHandler } from "../../confluent/tools/handlers/tableflow/topic/create-tableflow-topic-handler.js";
34
+ import { DeleteTableFlowTopicHandler } from "../../confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.js";
35
+ import { ListTableFlowTopicsHandler } from "../../confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.js";
36
+ import { ReadTableFlowTopicHandler } from "../../confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.js";
37
+ import { UpdateTableFlowTopicHandler } from "../../confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.js";
26
38
  import { ToolName } from "../../confluent/tools/tool-name.js";
27
- import { GetTopicConfigHandler } from "../../confluent/tools/handlers/kafka/get-topic-config.js";
28
39
  export class ToolFactory {
29
40
  static handlers = new Map([
30
41
  [ToolName.LIST_TOPICS, new ListTopicsHandler()],
@@ -53,6 +64,32 @@ export class ToolFactory {
53
64
  [ToolName.LIST_SCHEMAS, new ListSchemasHandler()],
54
65
  [ToolName.CONSUME_MESSAGES, new ConsumeKafkaMessagesHandler()],
55
66
  [ToolName.GET_TOPIC_CONFIG, new GetTopicConfigHandler()],
67
+ [ToolName.CREATE_TABLEFLOW_TOPIC, new CreateTableFlowTopicHandler()],
68
+ [ToolName.LIST_TABLEFLOW_REGIONS, new ListTableFlowRegionsHandler()],
69
+ [ToolName.LIST_TABLEFLOW_TOPICS, new ListTableFlowTopicsHandler()],
70
+ [ToolName.READ_TABLEFLOW_TOPIC, new ReadTableFlowTopicHandler()],
71
+ [ToolName.UPDATE_TABLEFLOW_TOPIC, new UpdateTableFlowTopicHandler()],
72
+ [ToolName.DELETE_TABLEFLOW_TOPIC, new DeleteTableFlowTopicHandler()],
73
+ [
74
+ ToolName.CREATE_TABLEFLOW_CATALOG_INTEGRATION,
75
+ new CreateTableFlowCatalogIntegrationHandler(),
76
+ ],
77
+ [
78
+ ToolName.READ_TABLEFLOW_CATALOG_INTEGRATION,
79
+ new ReadTableFlowCatalogIntegrationHandler(),
80
+ ],
81
+ [
82
+ ToolName.LIST_TABLEFLOW_CATALOG_INTEGRATIONS,
83
+ new ListTableFlowCatalogIntegrationsHandler(),
84
+ ],
85
+ [
86
+ ToolName.UPDATE_TABLEFLOW_CATALOG_INTEGRATION,
87
+ new UpdateTableFlowCatalogIntegrationHandler(),
88
+ ],
89
+ [
90
+ ToolName.DELETE_TABLEFLOW_CATALOG_INTEGRATION,
91
+ new DeleteTableFlowCatalogIntegrationHandler(),
92
+ ],
56
93
  ]);
57
94
  static createToolHandler(toolName) {
58
95
  if (!this.handlers.has(toolName)) {
@@ -1 +1 @@
1
- {"version":3,"file":"tool-factory.js","sourceRoot":"","sources":["../../../src/confluent/tools/tool-factory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-factory.js","sourceRoot":"","sources":["../../../src/confluent/tools/tool-factory.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,17 @@ export declare enum ToolName {
24
24
  LIST_ENVIRONMENTS = "list-environments",
25
25
  READ_ENVIRONMENT = "read-environment",
26
26
  LIST_SCHEMAS = "list-schemas",
27
- GET_TOPIC_CONFIG = "get-topic-config"
27
+ GET_TOPIC_CONFIG = "get-topic-config",
28
+ CREATE_TABLEFLOW_TOPIC = "create-tableflow-topic",
29
+ LIST_TABLEFLOW_REGIONS = "list-tableflow-regions",
30
+ LIST_TABLEFLOW_TOPICS = "list-tableflow-topics",
31
+ READ_TABLEFLOW_TOPIC = "read-tableflow-topic",
32
+ UPDATE_TABLEFLOW_TOPIC = "update-tableflow-topic",
33
+ DELETE_TABLEFLOW_TOPIC = "delete-tableflow-topic",
34
+ CREATE_TABLEFLOW_CATALOG_INTEGRATION = "create-tableflow-catalog-integration",
35
+ LIST_TABLEFLOW_CATALOG_INTEGRATIONS = "list-tableflow-catalog-integrations",
36
+ READ_TABLEFLOW_CATALOG_INTEGRATION = "read-tableflow-catalog-integration",
37
+ UPDATE_TABLEFLOW_CATALOG_INTEGRATION = "update-tableflow-catalog-integration",
38
+ DELETE_TABLEFLOW_CATALOG_INTEGRATION = "delete-tableflow-catalog-integration"
28
39
  }
29
40
  //# sourceMappingURL=tool-name.d.ts.map