@confluentinc/mcp-confluent 1.0.3 → 1.0.4
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 +150 -0
- package/dist/confluent/client-manager.d.ts +9 -0
- package/dist/confluent/client-manager.d.ts.map +1 -1
- package/dist/confluent/client-manager.js +22 -0
- package/dist/confluent/client-manager.js.map +1 -1
- package/dist/confluent/middleware.d.ts +1 -0
- package/dist/confluent/middleware.d.ts.map +1 -1
- package/dist/confluent/middleware.js.map +1 -1
- package/dist/confluent/tools/handlers/environments/read-environment-handler.d.ts.map +1 -1
- package/dist/confluent/tools/handlers/environments/read-environment-handler.js +1 -1
- package/dist/confluent/tools/handlers/environments/read-environment-handler.js.map +1 -1
- package/dist/confluent/tools/handlers/tableflow/catalog/create-tableflow-catalog-integration-handler.d.ts +11 -0
- package/dist/confluent/tools/handlers/tableflow/catalog/create-tableflow-catalog-integration-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/tableflow/catalog/create-tableflow-catalog-integration-handler.js +81 -0
- package/dist/confluent/tools/handlers/tableflow/catalog/create-tableflow-catalog-integration-handler.js.map +1 -0
- package/dist/confluent/tools/handlers/tableflow/catalog/delete-tableflow-catalog-integration-handler.d.ts +11 -0
- package/dist/confluent/tools/handlers/tableflow/catalog/delete-tableflow-catalog-integration-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/tableflow/catalog/delete-tableflow-catalog-integration-handler.js +64 -0
- package/dist/confluent/tools/handlers/tableflow/catalog/delete-tableflow-catalog-integration-handler.js.map +1 -0
- package/dist/confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-handler.d.ts +11 -0
- package/dist/confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-handler.js +74 -0
- package/dist/confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-handler.js.map +1 -0
- package/dist/confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-handler.d.ts +11 -0
- package/dist/confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-handler.js +64 -0
- package/dist/confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-handler.js.map +1 -0
- package/dist/confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-handler.d.ts +11 -0
- package/dist/confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-handler.js +81 -0
- package/dist/confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-handler.js.map +1 -0
- package/dist/confluent/tools/handlers/tableflow/list-tableflow-regions-handler.d.ts +11 -0
- package/dist/confluent/tools/handlers/tableflow/list-tableflow-regions-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/tableflow/list-tableflow-regions-handler.js +65 -0
- package/dist/confluent/tools/handlers/tableflow/list-tableflow-regions-handler.js.map +1 -0
- package/dist/confluent/tools/handlers/tableflow/topic/create-tableflow-topic-handler.d.ts +11 -0
- package/dist/confluent/tools/handlers/tableflow/topic/create-tableflow-topic-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/tableflow/topic/create-tableflow-topic-handler.js +96 -0
- package/dist/confluent/tools/handlers/tableflow/topic/create-tableflow-topic-handler.js.map +1 -0
- package/dist/confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.d.ts +11 -0
- package/dist/confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.js +66 -0
- package/dist/confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.js.map +1 -0
- package/dist/confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.d.ts +11 -0
- package/dist/confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.js +74 -0
- package/dist/confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.js.map +1 -0
- package/dist/confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.d.ts +11 -0
- package/dist/confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.js +66 -0
- package/dist/confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.js.map +1 -0
- package/dist/confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.d.ts +11 -0
- package/dist/confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.js +104 -0
- package/dist/confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.js.map +1 -0
- package/dist/confluent/tools/tool-factory.d.ts.map +1 -1
- package/dist/confluent/tools/tool-factory.js +38 -1
- package/dist/confluent/tools/tool-factory.js.map +1 -1
- package/dist/confluent/tools/tool-name.d.ts +12 -1
- package/dist/confluent/tools/tool-name.d.ts.map +1 -1
- package/dist/confluent/tools/tool-name.js +11 -0
- package/dist/confluent/tools/tool-name.js.map +1 -1
- package/dist/env-schema.d.ts +6 -0
- package/dist/env-schema.d.ts.map +1 -1
- package/dist/env-schema.js +12 -0
- package/dist/env-schema.js.map +1 -1
- package/dist/env.d.ts +2 -0
- package/dist/env.d.ts.map +1 -1
- package/dist/index.js +5 -1
- package/dist/index.js.map +1 -1
- package/dist/mcp/transports/http.d.ts +2 -2
- package/dist/mcp/transports/http.d.ts.map +1 -1
- package/dist/mcp/transports/http.js.map +1 -1
- package/dist/mcp/transports/manager.d.ts +1 -1
- package/dist/mcp/transports/manager.d.ts.map +1 -1
- package/dist/mcp/transports/manager.js +5 -5
- package/dist/mcp/transports/manager.js.map +1 -1
- package/dist/mcp/transports/sse.d.ts +2 -2
- package/dist/mcp/transports/sse.d.ts.map +1 -1
- package/dist/print-md-schema.js +1 -1
- package/dist/print-md-schema.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,64 @@
|
|
|
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 deleteTableflowCatalogIntegrationArguments = 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
|
+
id: z.string().describe("The unique identifier for the catalog integration."),
|
|
16
|
+
environmentId: z
|
|
17
|
+
.string()
|
|
18
|
+
.trim()
|
|
19
|
+
.optional()
|
|
20
|
+
.describe("Scope the operation to the given environment."),
|
|
21
|
+
clusterId: z
|
|
22
|
+
.string()
|
|
23
|
+
.trim()
|
|
24
|
+
.optional()
|
|
25
|
+
.describe("Scope the operation to the give Kafka cluster."),
|
|
26
|
+
});
|
|
27
|
+
export class DeleteTableFlowCatalogIntegrationHandler extends BaseToolHandler {
|
|
28
|
+
async handle(clientManager, toolArguments) {
|
|
29
|
+
const { id, environmentId, clusterId, baseUrl } = deleteTableflowCatalogIntegrationArguments.parse(toolArguments);
|
|
30
|
+
const environment_id = getEnsuredParam("KAFKA_ENV_ID", "Environment ID is required", environmentId);
|
|
31
|
+
const kafka_cluster_id = getEnsuredParam("KAFKA_CLUSTER_ID", "Kafka Cluster ID is required", clusterId);
|
|
32
|
+
if (baseUrl !== undefined && baseUrl !== "") {
|
|
33
|
+
clientManager.setConfluentCloudTableflowRestEndpoint(baseUrl);
|
|
34
|
+
}
|
|
35
|
+
const pathBasedClient = wrapAsPathBasedClient(clientManager.getConfluentCloudTableflowRestClient());
|
|
36
|
+
const { data: response, error } = await pathBasedClient[`/tableflow/v1/catalog-integrations/${id}?environment=${environment_id}&spec.kafka_cluster=${kafka_cluster_id}`].DELETE({
|
|
37
|
+
params: {
|
|
38
|
+
path: {
|
|
39
|
+
id: id,
|
|
40
|
+
environment_id: environment_id,
|
|
41
|
+
kafka_cluster_id: kafka_cluster_id,
|
|
42
|
+
},
|
|
43
|
+
},
|
|
44
|
+
});
|
|
45
|
+
if (error) {
|
|
46
|
+
return this.createResponse(`Failed to delete Tableflow catalog integration ${id}: ${JSON.stringify(error)}`, true);
|
|
47
|
+
}
|
|
48
|
+
return this.createResponse(`Tableflow catalog integration ${id} deleted: ${JSON.stringify(response)}`);
|
|
49
|
+
}
|
|
50
|
+
getToolConfig() {
|
|
51
|
+
return {
|
|
52
|
+
name: ToolName.DELETE_TABLEFLOW_CATALOG_INTEGRATION,
|
|
53
|
+
description: `Make a request to delete a tableflow catalog integration.`,
|
|
54
|
+
inputSchema: deleteTableflowCatalogIntegrationArguments.shape,
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
getRequiredEnvVars() {
|
|
58
|
+
return ["TABLEFLOW_API_KEY", "TABLEFLOW_API_SECRET"];
|
|
59
|
+
}
|
|
60
|
+
isConfluentCloudOnly() {
|
|
61
|
+
return true;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=delete-tableflow-catalog-integration-handler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delete-tableflow-catalog-integration-handler.js","sourceRoot":"","sources":["../../../../../../src/confluent/tools/handlers/tableflow/catalog/delete-tableflow-catalog-integration-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,0CAA0C,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1D,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,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oDAAoD,CAAC;IAC7E,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,wCAAyC,SAAQ,eAAe;IAC3E,KAAK,CAAC,MAAM,CACV,aAA4B,EAC5B,aAAkD;QAElD,MAAM,EAAE,EAAE,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,EAAE,GAC7C,0CAA0C,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAElE,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,sCAAsC,EAAE,gBAAgB,cAAc,uBAAuB,gBAAgB,EAAE,CAChH,CAAC,MAAM,CAAC;YACP,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,EAAE,EAAE,EAAE;oBACN,cAAc,EAAE,cAAc;oBAC9B,gBAAgB,EAAE,gBAAgB;iBACnC;aACF;SACF,CAAC,CAAC;QACH,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,IAAI,CAAC,cAAc,CACxB,kDAAkD,EAAE,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAChF,IAAI,CACL,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CACxB,iCAAiC,EAAE,aAAa,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAC3E,CAAC;IACJ,CAAC;IAED,aAAa;QACX,OAAO;YACL,IAAI,EAAE,QAAQ,CAAC,oCAAoC;YACnD,WAAW,EAAE,2DAA2D;YACxE,WAAW,EAAE,0CAA0C,CAAC,KAAK;SAC9D,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 ListTableFlowCatalogIntegrationsHandler 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-catalog-integrations-handler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-tableflow-catalog-integrations-handler.d.ts","sourceRoot":"","sources":["../../../../../../src/confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-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,uCAAwC,SAAQ,eAAe;IACpE,MAAM,CACV,aAAa,EAAE,aAAa,EAC5B,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GACjD,OAAO,CAAC,cAAc,CAAC;IA2C1B,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 listTableFlowCatalogIntegrationsArguments = 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 ListTableFlowCatalogIntegrationsHandler extends BaseToolHandler {
|
|
39
|
+
async handle(clientManager, toolArguments) {
|
|
40
|
+
const { clusterId, environmentId, baseUrl } = listTableFlowCatalogIntegrationsArguments.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/catalog-integrations?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 catalog integrations for ${clusterId}: ${JSON.stringify(error)}`, true);
|
|
57
|
+
}
|
|
58
|
+
return this.createResponse(`Tableflow catalog integrations: ${JSON.stringify(response)}`);
|
|
59
|
+
}
|
|
60
|
+
getToolConfig() {
|
|
61
|
+
return {
|
|
62
|
+
name: ToolName.LIST_TABLEFLOW_CATALOG_INTEGRATIONS,
|
|
63
|
+
description: `Retrieve a sorted, filtered, paginated list of all catalog integrations.`,
|
|
64
|
+
inputSchema: listTableFlowCatalogIntegrationsArguments.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-catalog-integrations-handler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-tableflow-catalog-integrations-handler.js","sourceRoot":"","sources":["../../../../../../src/confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-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 ReadTableFlowCatalogIntegrationHandler 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-catalog-integration-handler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"read-tableflow-catalog-integration-handler.d.ts","sourceRoot":"","sources":["../../../../../../src/confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-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;AA0B5C,qBAAa,sCAAuC,SAAQ,eAAe;IACnE,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,64 @@
|
|
|
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 readTableflowCatalogIntegrationArguments = 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
|
+
id: z.string().describe("The unique identifier for the catalog integration."),
|
|
16
|
+
environmentId: z
|
|
17
|
+
.string()
|
|
18
|
+
.trim()
|
|
19
|
+
.optional()
|
|
20
|
+
.describe("Scope the operation to the given environment."),
|
|
21
|
+
clusterId: z
|
|
22
|
+
.string()
|
|
23
|
+
.trim()
|
|
24
|
+
.optional()
|
|
25
|
+
.describe("Scope the operation to the give Kafka cluster."),
|
|
26
|
+
});
|
|
27
|
+
export class ReadTableFlowCatalogIntegrationHandler extends BaseToolHandler {
|
|
28
|
+
async handle(clientManager, toolArguments) {
|
|
29
|
+
const { id, environmentId, clusterId, baseUrl } = readTableflowCatalogIntegrationArguments.parse(toolArguments);
|
|
30
|
+
const environment_id = getEnsuredParam("KAFKA_ENV_ID", "Environment ID is required", environmentId);
|
|
31
|
+
const kafka_cluster_id = getEnsuredParam("KAFKA_CLUSTER_ID", "Kafka Cluster ID is required", clusterId);
|
|
32
|
+
if (baseUrl !== undefined && baseUrl !== "") {
|
|
33
|
+
clientManager.setConfluentCloudTableflowRestEndpoint(baseUrl);
|
|
34
|
+
}
|
|
35
|
+
const pathBasedClient = wrapAsPathBasedClient(clientManager.getConfluentCloudTableflowRestClient());
|
|
36
|
+
const { data: response, error } = await pathBasedClient[`/tableflow/v1/catalog-integrations/${id}?environment=${environment_id}&spec.kafka_cluster=${kafka_cluster_id}`].GET({
|
|
37
|
+
params: {
|
|
38
|
+
path: {
|
|
39
|
+
id: id,
|
|
40
|
+
environment_id: environment_id,
|
|
41
|
+
kafka_cluster_id: kafka_cluster_id,
|
|
42
|
+
},
|
|
43
|
+
},
|
|
44
|
+
});
|
|
45
|
+
if (error) {
|
|
46
|
+
return this.createResponse(`Failed to read Tableflow catalog integration ${id}: ${JSON.stringify(error)}`, true);
|
|
47
|
+
}
|
|
48
|
+
return this.createResponse(`Tableflow catalog integration: ${JSON.stringify(response)}`);
|
|
49
|
+
}
|
|
50
|
+
getToolConfig() {
|
|
51
|
+
return {
|
|
52
|
+
name: ToolName.READ_TABLEFLOW_CATALOG_INTEGRATION,
|
|
53
|
+
description: `Make a request to read a catalog integration.`,
|
|
54
|
+
inputSchema: readTableflowCatalogIntegrationArguments.shape,
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
getRequiredEnvVars() {
|
|
58
|
+
return ["TABLEFLOW_API_KEY", "TABLEFLOW_API_SECRET"];
|
|
59
|
+
}
|
|
60
|
+
isConfluentCloudOnly() {
|
|
61
|
+
return true;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=read-tableflow-catalog-integration-handler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"read-tableflow-catalog-integration-handler.js","sourceRoot":"","sources":["../../../../../../src/confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-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,wCAAwC,GAAG,CAAC,CAAC,MAAM,CAAC;IACxD,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,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oDAAoD,CAAC;IAC7E,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,sCAAuC,SAAQ,eAAe;IACzE,KAAK,CAAC,MAAM,CACV,aAA4B,EAC5B,aAAkD;QAElD,MAAM,EAAE,EAAE,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,EAAE,GAC7C,wCAAwC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAEhE,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,sCAAsC,EAAE,gBAAgB,cAAc,uBAAuB,gBAAgB,EAAE,CAChH,CAAC,GAAG,CAAC;YACJ,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,EAAE,EAAE,EAAE;oBACN,cAAc,EAAE,cAAc;oBAC9B,gBAAgB,EAAE,gBAAgB;iBACnC;aACF;SACF,CAAC,CAAC;QACH,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,IAAI,CAAC,cAAc,CACxB,gDAAgD,EAAE,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAC9E,IAAI,CACL,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CACxB,kCAAkC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAC7D,CAAC;IACJ,CAAC;IAED,aAAa;QACX,OAAO;YACL,IAAI,EAAE,QAAQ,CAAC,kCAAkC;YACjD,WAAW,EAAE,+CAA+C;YAC5D,WAAW,EAAE,wCAAwC,CAAC,KAAK;SAC5D,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 UpdateTableFlowCatalogIntegrationHandler 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-catalog-integration-handler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-tableflow-catalog-integration-handler.d.ts","sourceRoot":"","sources":["../../../../../../src/confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-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;AAgD5C,qBAAa,wCAAyC,SAAQ,eAAe;IACrE,MAAM,CACV,aAAa,EAAE,aAAa,EAC5B,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GACjD,OAAO,CAAC,cAAc,CAAC;IAqC1B,aAAa,IAAI,UAAU;IAQ3B,kBAAkB,IAAI,MAAM,EAAE;IAI9B,oBAAoB,IAAI,OAAO;CAGhC"}
|
|
@@ -0,0 +1,81 @@
|
|
|
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 updateTableflowCatalogIntegrationArguments = 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
|
+
tableflowCatalogIntegrationConfig: z.object({
|
|
15
|
+
// Required fields
|
|
16
|
+
display_name: z
|
|
17
|
+
.string()
|
|
18
|
+
.describe("The name of the Kafka topic for which Tableflow is enabled."),
|
|
19
|
+
environment: z.object({
|
|
20
|
+
id: z
|
|
21
|
+
.string()
|
|
22
|
+
.describe("The unique identifier for the environment this resource belongs to."),
|
|
23
|
+
}),
|
|
24
|
+
kafka_cluster: z.object({
|
|
25
|
+
id: z.string().describe("ID of the referred resource"),
|
|
26
|
+
environment: z
|
|
27
|
+
.string()
|
|
28
|
+
.describe("Environment of the referred resource, if env-scoped"),
|
|
29
|
+
}),
|
|
30
|
+
config: z.object({
|
|
31
|
+
kind: z
|
|
32
|
+
.string()
|
|
33
|
+
.default("AwsGlue")
|
|
34
|
+
.describe("The type of the catalog integration. AwsGlue, Snowflake"),
|
|
35
|
+
}),
|
|
36
|
+
// Optional fields
|
|
37
|
+
suspended: z
|
|
38
|
+
.boolean()
|
|
39
|
+
.optional()
|
|
40
|
+
.default(false)
|
|
41
|
+
.describe("Indicates whether Tableflow Catalog Integration should be suspended. The API allows setting it only to false i.e resume the Catalog Integration."),
|
|
42
|
+
}),
|
|
43
|
+
});
|
|
44
|
+
export class UpdateTableFlowCatalogIntegrationHandler extends BaseToolHandler {
|
|
45
|
+
async handle(clientManager, toolArguments) {
|
|
46
|
+
const { baseUrl, tableflowCatalogIntegrationConfig } = updateTableflowCatalogIntegrationArguments.parse(toolArguments);
|
|
47
|
+
if (baseUrl !== undefined && baseUrl !== "") {
|
|
48
|
+
clientManager.setConfluentCloudTableflowRestEndpoint(baseUrl);
|
|
49
|
+
}
|
|
50
|
+
const pathBasedClient = wrapAsPathBasedClient(clientManager.getConfluentCloudTableflowRestClient());
|
|
51
|
+
const { environment, ...restOfTableflowCatalogIntegrationConfig } = tableflowCatalogIntegrationConfig;
|
|
52
|
+
const { data: response, error } = await pathBasedClient["/tableflow/v1/catalog-integrations"].POST({
|
|
53
|
+
body: {
|
|
54
|
+
spec: {
|
|
55
|
+
...restOfTableflowCatalogIntegrationConfig,
|
|
56
|
+
environment: { id: environment.id }, // Only include id, as the general environment as requires readonly and resource_name
|
|
57
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
58
|
+
}, // Due to how OpenAPI specification is structured and how generators interpret it, we have to treat it as any, as
|
|
59
|
+
// The most likely culprit for mismatch is the reuse of a single base schema for both input (requestBody) and output (responses) evironment.
|
|
60
|
+
},
|
|
61
|
+
});
|
|
62
|
+
if (error) {
|
|
63
|
+
return this.createResponse(`Failed to update Tableflow Catalog Integration for ${tableflowCatalogIntegrationConfig.display_name}: ${JSON.stringify(error)}`, true);
|
|
64
|
+
}
|
|
65
|
+
return this.createResponse(`Tableflow Catalog Integration ${tableflowCatalogIntegrationConfig.display_name} updated: ${JSON.stringify(response)}`);
|
|
66
|
+
}
|
|
67
|
+
getToolConfig() {
|
|
68
|
+
return {
|
|
69
|
+
name: ToolName.UPDATE_TABLEFLOW_CATALOG_INTEGRATION,
|
|
70
|
+
description: `Make a request to update a catalog integration.`,
|
|
71
|
+
inputSchema: updateTableflowCatalogIntegrationArguments.shape,
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
getRequiredEnvVars() {
|
|
75
|
+
return ["TABLEFLOW_API_KEY", "TABLEFLOW_API_SECRET"];
|
|
76
|
+
}
|
|
77
|
+
isConfluentCloudOnly() {
|
|
78
|
+
return true;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=update-tableflow-catalog-integration-handler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-tableflow-catalog-integration-handler.js","sourceRoot":"","sources":["../../../../../../src/confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-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 ListTableFlowRegionsHandler 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-regions-handler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-tableflow-regions-handler.d.ts","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/tableflow/list-tableflow-regions-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;AAgC5C,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;IA+B1B,aAAa,IAAI,UAAU;IAQ3B,kBAAkB,IAAI,MAAM,EAAE;IAI9B,oBAAoB,IAAI,OAAO;CAGhC"}
|
|
@@ -0,0 +1,65 @@
|
|
|
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 listTableFlowRegionsArguments = 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
|
+
cloud: z
|
|
15
|
+
.string()
|
|
16
|
+
.trim()
|
|
17
|
+
.optional()
|
|
18
|
+
.describe("Filter the results by exact match for cloud."),
|
|
19
|
+
pageSize: z
|
|
20
|
+
.string()
|
|
21
|
+
.trim()
|
|
22
|
+
.optional()
|
|
23
|
+
.default("10")
|
|
24
|
+
.describe("The pagination size of collection requests."),
|
|
25
|
+
pageToken: z
|
|
26
|
+
.string()
|
|
27
|
+
.trim()
|
|
28
|
+
.optional()
|
|
29
|
+
.default("0")
|
|
30
|
+
.describe("An opaque pagination token for collection requests."),
|
|
31
|
+
});
|
|
32
|
+
export class ListTableFlowRegionsHandler extends BaseToolHandler {
|
|
33
|
+
async handle(clientManager, toolArguments) {
|
|
34
|
+
const { cloud, baseUrl } = listTableFlowRegionsArguments.parse(toolArguments);
|
|
35
|
+
if (baseUrl !== undefined && baseUrl !== "") {
|
|
36
|
+
clientManager.setConfluentCloudTableflowRestEndpoint(baseUrl);
|
|
37
|
+
}
|
|
38
|
+
const pathBasedClient = wrapAsPathBasedClient(clientManager.getConfluentCloudTableflowRestClient());
|
|
39
|
+
const { data: response, error } = await pathBasedClient[`/tableflow/v1/regions?cloud=${cloud}`].GET({
|
|
40
|
+
params: {
|
|
41
|
+
path: {
|
|
42
|
+
cloud: cloud,
|
|
43
|
+
},
|
|
44
|
+
},
|
|
45
|
+
});
|
|
46
|
+
if (error) {
|
|
47
|
+
return this.createResponse(`Failed to list Tableflow regions for ${cloud}: ${JSON.stringify(error)}`, true);
|
|
48
|
+
}
|
|
49
|
+
return this.createResponse(`Tableflow Regions: ${JSON.stringify(response)}`);
|
|
50
|
+
}
|
|
51
|
+
getToolConfig() {
|
|
52
|
+
return {
|
|
53
|
+
name: ToolName.LIST_TABLEFLOW_REGIONS,
|
|
54
|
+
description: `Retrieve a sorted, filtered, paginated list of all tableflow regions.`,
|
|
55
|
+
inputSchema: listTableFlowRegionsArguments.shape,
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
getRequiredEnvVars() {
|
|
59
|
+
return ["TABLEFLOW_API_KEY", "TABLEFLOW_API_SECRET"];
|
|
60
|
+
}
|
|
61
|
+
isConfluentCloudOnly() {
|
|
62
|
+
return true;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=list-tableflow-regions-handler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-tableflow-regions-handler.js","sourceRoot":"","sources":["../../../../../src/confluent/tools/handlers/tableflow/list-tableflow-regions-handler.ts"],"names":[],"mappings":"AAEA,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,KAAK,EAAE,CAAC;SACL,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,2BAA4B,SAAQ,eAAe;IAC9D,KAAK,CAAC,MAAM,CACV,aAA4B,EAC5B,aAAkD;QAElD,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GACtB,6BAA6B,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAErD,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,+BAA+B,KAAK,EAAE,CACvC,CAAC,GAAG,CAAC;YACJ,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,KAAK,EAAE,KAAK;iBACb;aACF;SACF,CAAC,CAAC;QACH,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,IAAI,CAAC,cAAc,CACxB,yCAAyC,KAAK,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAC1E,IAAI,CACL,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CACxB,sBAAsB,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CACjD,CAAC;IACJ,CAAC;IACD,aAAa;QACX,OAAO;YACL,IAAI,EAAE,QAAQ,CAAC,sBAAsB;YACrC,WAAW,EAAE,uEAAuE;YACpF,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 CreateTableFlowTopicHandler 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=create-tableflow-topic-handler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-tableflow-topic-handler.d.ts","sourceRoot":"","sources":["../../../../../../src/confluent/tools/handlers/tableflow/topic/create-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;AAG5C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AA2D5C,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;IAkD1B,aAAa,IAAI,UAAU;IAQ3B,kBAAkB,IAAI,MAAM,EAAE;IAI9B,oBAAoB,IAAI,OAAO;CAGhC"}
|
|
@@ -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"}
|