@confluentinc/mcp-confluent 1.0.1
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/LICENSE +21 -0
- package/README.md +302 -0
- package/dist/cli.d.ts +14 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +53 -0
- package/dist/cli.js.map +1 -0
- package/dist/confluent/client-manager.d.ts +93 -0
- package/dist/confluent/client-manager.d.ts.map +1 -0
- package/dist/confluent/client-manager.js +148 -0
- package/dist/confluent/client-manager.js.map +1 -0
- package/dist/confluent/helpers.d.ts +11 -0
- package/dist/confluent/helpers.d.ts.map +1 -0
- package/dist/confluent/helpers.js +17 -0
- package/dist/confluent/helpers.js.map +1 -0
- package/dist/confluent/middleware.d.ts +15 -0
- package/dist/confluent/middleware.d.ts.map +1 -0
- package/dist/confluent/middleware.js +43 -0
- package/dist/confluent/middleware.js.map +1 -0
- package/dist/confluent/schema.d.ts +4 -0
- package/dist/confluent/schema.d.ts.map +1 -0
- package/dist/confluent/schema.js +4 -0
- package/dist/confluent/schema.js.map +1 -0
- package/dist/confluent/tools/base-tools.d.ts +19 -0
- package/dist/confluent/tools/base-tools.d.ts.map +1 -0
- package/dist/confluent/tools/base-tools.js +16 -0
- package/dist/confluent/tools/base-tools.js.map +1 -0
- package/dist/confluent/tools/handlers/catalog/add-tag-to-topic.d.ts +8 -0
- package/dist/confluent/tools/handlers/catalog/add-tag-to-topic.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/catalog/add-tag-to-topic.js +47 -0
- package/dist/confluent/tools/handlers/catalog/add-tag-to-topic.js.map +1 -0
- package/dist/confluent/tools/handlers/catalog/add-tags-to-topic copy.d.ts +8 -0
- package/dist/confluent/tools/handlers/catalog/add-tags-to-topic copy.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/catalog/add-tags-to-topic copy.js +47 -0
- package/dist/confluent/tools/handlers/catalog/add-tags-to-topic copy.js.map +1 -0
- package/dist/confluent/tools/handlers/catalog/add-tags-to-topic.d.ts +8 -0
- package/dist/confluent/tools/handlers/catalog/add-tags-to-topic.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/catalog/add-tags-to-topic.js +47 -0
- package/dist/confluent/tools/handlers/catalog/add-tags-to-topic.js.map +1 -0
- package/dist/confluent/tools/handlers/catalog/create-topic-tags copy.d.ts +8 -0
- package/dist/confluent/tools/handlers/catalog/create-topic-tags copy.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/catalog/create-topic-tags copy.js +52 -0
- package/dist/confluent/tools/handlers/catalog/create-topic-tags copy.js.map +1 -0
- package/dist/confluent/tools/handlers/catalog/create-topic-tags.d.ts +8 -0
- package/dist/confluent/tools/handlers/catalog/create-topic-tags.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/catalog/create-topic-tags.js +52 -0
- package/dist/confluent/tools/handlers/catalog/create-topic-tags.js.map +1 -0
- package/dist/confluent/tools/handlers/catalog/delete-tag copy.d.ts +8 -0
- package/dist/confluent/tools/handlers/catalog/delete-tag copy.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/catalog/delete-tag copy.js +42 -0
- package/dist/confluent/tools/handlers/catalog/delete-tag copy.js.map +1 -0
- package/dist/confluent/tools/handlers/catalog/delete-tag-for-entity.d.ts +8 -0
- package/dist/confluent/tools/handlers/catalog/delete-tag-for-entity.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/catalog/delete-tag-for-entity.js +56 -0
- package/dist/confluent/tools/handlers/catalog/delete-tag-for-entity.js.map +1 -0
- package/dist/confluent/tools/handlers/catalog/delete-tag.d.ts +8 -0
- package/dist/confluent/tools/handlers/catalog/delete-tag.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/catalog/delete-tag.js +42 -0
- package/dist/confluent/tools/handlers/catalog/delete-tag.js.map +1 -0
- package/dist/confluent/tools/handlers/catalog/list-.d.ts +8 -0
- package/dist/confluent/tools/handlers/catalog/list-.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/catalog/list-.js +35 -0
- package/dist/confluent/tools/handlers/catalog/list-.js.map +1 -0
- package/dist/confluent/tools/handlers/catalog/list-tags.d.ts +8 -0
- package/dist/confluent/tools/handlers/catalog/list-tags.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/catalog/list-tags.js +35 -0
- package/dist/confluent/tools/handlers/catalog/list-tags.js.map +1 -0
- package/dist/confluent/tools/handlers/catalog/remove-tag-from-entity.d.ts +8 -0
- package/dist/confluent/tools/handlers/catalog/remove-tag-from-entity.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/catalog/remove-tag-from-entity.js +56 -0
- package/dist/confluent/tools/handlers/catalog/remove-tag-from-entity.js.map +1 -0
- package/dist/confluent/tools/handlers/clusters/list-clusters-handler.d.ts +182 -0
- package/dist/confluent/tools/handlers/clusters/list-clusters-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/clusters/list-clusters-handler.js +147 -0
- package/dist/confluent/tools/handlers/clusters/list-clusters-handler.js.map +1 -0
- package/dist/confluent/tools/handlers/connect/create-connector-handler copy.d.ts +8 -0
- package/dist/confluent/tools/handlers/connect/create-connector-handler copy.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/connect/create-connector-handler copy.js +84 -0
- package/dist/confluent/tools/handlers/connect/create-connector-handler copy.js.map +1 -0
- package/dist/confluent/tools/handlers/connect/create-connector-handler.d.ts +8 -0
- package/dist/confluent/tools/handlers/connect/create-connector-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/connect/create-connector-handler.js +95 -0
- package/dist/confluent/tools/handlers/connect/create-connector-handler.js.map +1 -0
- package/dist/confluent/tools/handlers/connect/delete-connector-handler.d.ts +8 -0
- package/dist/confluent/tools/handlers/connect/delete-connector-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/connect/delete-connector-handler.js +59 -0
- package/dist/confluent/tools/handlers/connect/delete-connector-handler.js.map +1 -0
- package/dist/confluent/tools/handlers/connect/list-connectors-handler.d.ts +8 -0
- package/dist/confluent/tools/handlers/connect/list-connectors-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/connect/list-connectors-handler.js +56 -0
- package/dist/confluent/tools/handlers/connect/list-connectors-handler.js.map +1 -0
- package/dist/confluent/tools/handlers/connect/read-connectors-handler.d.ts +8 -0
- package/dist/confluent/tools/handlers/connect/read-connectors-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/connect/read-connectors-handler.js +62 -0
- package/dist/confluent/tools/handlers/connect/read-connectors-handler.js.map +1 -0
- package/dist/confluent/tools/handlers/entity/create-tags-for-topics.d.ts +8 -0
- package/dist/confluent/tools/handlers/entity/create-tags-for-topics.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/entity/create-tags-for-topics.js +52 -0
- package/dist/confluent/tools/handlers/entity/create-tags-for-topics.js.map +1 -0
- package/dist/confluent/tools/handlers/entity/create-topic-tags.d.ts +8 -0
- package/dist/confluent/tools/handlers/entity/create-topic-tags.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/entity/create-topic-tags.js +52 -0
- package/dist/confluent/tools/handlers/entity/create-topic-tags.js.map +1 -0
- package/dist/confluent/tools/handlers/entity/create-topicc-tags.d.ts +8 -0
- package/dist/confluent/tools/handlers/entity/create-topicc-tags.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/entity/create-topicc-tags.js +52 -0
- package/dist/confluent/tools/handlers/entity/create-topicc-tags.js.map +1 -0
- package/dist/confluent/tools/handlers/entity/create-topics-tags.d.ts +8 -0
- package/dist/confluent/tools/handlers/entity/create-topics-tags.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/entity/create-topics-tags.js +52 -0
- package/dist/confluent/tools/handlers/entity/create-topics-tags.js.map +1 -0
- package/dist/confluent/tools/handlers/entity/topics-with-tags-handler copy.d.ts +8 -0
- package/dist/confluent/tools/handlers/entity/topics-with-tags-handler copy.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/entity/topics-with-tags-handler copy.js +39 -0
- package/dist/confluent/tools/handlers/entity/topics-with-tags-handler copy.js.map +1 -0
- package/dist/confluent/tools/handlers/entity/topics-with-tags-handler.d.ts +8 -0
- package/dist/confluent/tools/handlers/entity/topics-with-tags-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/entity/topics-with-tags-handler.js +39 -0
- package/dist/confluent/tools/handlers/entity/topics-with-tags-handler.js.map +1 -0
- package/dist/confluent/tools/handlers/environments/list-environments-handler.d.ts +213 -0
- package/dist/confluent/tools/handlers/environments/list-environments-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/environments/list-environments-handler.js +130 -0
- package/dist/confluent/tools/handlers/environments/list-environments-handler.js.map +1 -0
- package/dist/confluent/tools/handlers/environments/read-environment-handler.d.ts +8 -0
- package/dist/confluent/tools/handlers/environments/read-environment-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/environments/read-environment-handler.js +84 -0
- package/dist/confluent/tools/handlers/environments/read-environment-handler.js.map +1 -0
- package/dist/confluent/tools/handlers/flink/create-flink-statement-handler.d.ts +8 -0
- package/dist/confluent/tools/handlers/flink/create-flink-statement-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/flink/create-flink-statement-handler.js +100 -0
- package/dist/confluent/tools/handlers/flink/create-flink-statement-handler.js.map +1 -0
- package/dist/confluent/tools/handlers/flink/delete-flink-statement-handler.d.ts +8 -0
- package/dist/confluent/tools/handlers/flink/delete-flink-statement-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/flink/delete-flink-statement-handler.js +63 -0
- package/dist/confluent/tools/handlers/flink/delete-flink-statement-handler.js.map +1 -0
- package/dist/confluent/tools/handlers/flink/list-flink-statements-handler.d.ts +8 -0
- package/dist/confluent/tools/handlers/flink/list-flink-statements-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/flink/list-flink-statements-handler.js +80 -0
- package/dist/confluent/tools/handlers/flink/list-flink-statements-handler.js.map +1 -0
- package/dist/confluent/tools/handlers/flink/read-flink-statement-handler.d.ts +8 -0
- package/dist/confluent/tools/handlers/flink/read-flink-statement-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/flink/read-flink-statement-handler.js +83 -0
- package/dist/confluent/tools/handlers/flink/read-flink-statement-handler.js.map +1 -0
- package/dist/confluent/tools/handlers/kafka/alter-topic-config copy.d.ts +14 -0
- package/dist/confluent/tools/handlers/kafka/alter-topic-config copy.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/kafka/alter-topic-config copy.js +61 -0
- package/dist/confluent/tools/handlers/kafka/alter-topic-config copy.js.map +1 -0
- package/dist/confluent/tools/handlers/kafka/alter-topic-config.d.ts +14 -0
- package/dist/confluent/tools/handlers/kafka/alter-topic-config.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/kafka/alter-topic-config.js +61 -0
- package/dist/confluent/tools/handlers/kafka/alter-topic-config.js.map +1 -0
- package/dist/confluent/tools/handlers/kafka/create-topics-handler copy.d.ts +8 -0
- package/dist/confluent/tools/handlers/kafka/create-topics-handler copy.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/kafka/create-topics-handler copy.js +28 -0
- package/dist/confluent/tools/handlers/kafka/create-topics-handler copy.js.map +1 -0
- package/dist/confluent/tools/handlers/kafka/create-topics-handler.d.ts +8 -0
- package/dist/confluent/tools/handlers/kafka/create-topics-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/kafka/create-topics-handler.js +28 -0
- package/dist/confluent/tools/handlers/kafka/create-topics-handler.js.map +1 -0
- package/dist/confluent/tools/handlers/kafka/delete-topics-handler.d.ts +8 -0
- package/dist/confluent/tools/handlers/kafka/delete-topics-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/kafka/delete-topics-handler.js +23 -0
- package/dist/confluent/tools/handlers/kafka/delete-topics-handler.js.map +1 -0
- package/dist/confluent/tools/handlers/kafka/list-topics-handler.d.ts +8 -0
- package/dist/confluent/tools/handlers/kafka/list-topics-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/kafka/list-topics-handler.js +22 -0
- package/dist/confluent/tools/handlers/kafka/list-topics-handler.js.map +1 -0
- package/dist/confluent/tools/handlers/kafka/produce-kafka-message-handler.d.ts +8 -0
- package/dist/confluent/tools/handlers/kafka/produce-kafka-message-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/kafka/produce-kafka-message-handler.js +37 -0
- package/dist/confluent/tools/handlers/kafka/produce-kafka-message-handler.js.map +1 -0
- package/dist/confluent/tools/handlers/schema/list-schemas-handler.d.ts +8 -0
- package/dist/confluent/tools/handlers/schema/list-schemas-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/schema/list-schemas-handler.js +52 -0
- package/dist/confluent/tools/handlers/schema/list-schemas-handler.js.map +1 -0
- package/dist/confluent/tools/handlers/search/search-topic-by-tag-handler copy.d.ts +8 -0
- package/dist/confluent/tools/handlers/search/search-topic-by-tag-handler copy.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/search/search-topic-by-tag-handler copy.js +45 -0
- package/dist/confluent/tools/handlers/search/search-topic-by-tag-handler copy.js.map +1 -0
- package/dist/confluent/tools/handlers/search/search-topic-by-tag-handler.d.ts +8 -0
- package/dist/confluent/tools/handlers/search/search-topic-by-tag-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/search/search-topic-by-tag-handler.js +53 -0
- package/dist/confluent/tools/handlers/search/search-topic-by-tag-handler.js.map +1 -0
- package/dist/confluent/tools/handlers/search/search-topics-by-name-handler.d.ts +8 -0
- package/dist/confluent/tools/handlers/search/search-topics-by-name-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/search/search-topics-by-name-handler.js +45 -0
- package/dist/confluent/tools/handlers/search/search-topics-by-name-handler.js.map +1 -0
- package/dist/confluent/tools/handlers/search/topics-with-tags-handler.d.ts +8 -0
- package/dist/confluent/tools/handlers/search/topics-with-tags-handler.d.ts.map +1 -0
- package/dist/confluent/tools/handlers/search/topics-with-tags-handler.js +39 -0
- package/dist/confluent/tools/handlers/search/topics-with-tags-handler.js.map +1 -0
- package/dist/confluent/tools/tool-factory.d.ts +9 -0
- package/dist/confluent/tools/tool-factory.d.ts.map +1 -0
- package/dist/confluent/tools/tool-factory.js +70 -0
- package/dist/confluent/tools/tool-factory.js.map +1 -0
- package/dist/confluent/tools/tool-name.d.ts +27 -0
- package/dist/confluent/tools/tool-name.d.ts.map +1 -0
- package/dist/confluent/tools/tool-name.js +28 -0
- package/dist/confluent/tools/tool-name.js.map +1 -0
- package/dist/env-schema.d.ts +67 -0
- package/dist/env-schema.d.ts.map +1 -0
- package/dist/env-schema.js +111 -0
- package/dist/env-schema.js.map +1 -0
- package/dist/env.d.ts +36 -0
- package/dist/env.d.ts.map +1 -0
- package/dist/env.js +40 -0
- package/dist/env.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +70 -0
- package/dist/index.js.map +1 -0
- package/dist/lazy.d.ts +65 -0
- package/dist/lazy.d.ts.map +1 -0
- package/dist/lazy.js +106 -0
- package/dist/lazy.js.map +1 -0
- package/dist/print-md-schema.d.ts +2 -0
- package/dist/print-md-schema.d.ts.map +1 -0
- package/dist/print-md-schema.js +96 -0
- package/dist/print-md-schema.js.map +1 -0
- package/package.json +68 -0
package/dist/lazy.js
ADDED
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A class that implements lazy loading for synchronous values.
|
|
3
|
+
* It defers the initialization of a value until it's first requested.
|
|
4
|
+
* @template T The type of value to be lazily loaded
|
|
5
|
+
*/
|
|
6
|
+
export class Lazy {
|
|
7
|
+
/** The cached instance of the lazily loaded value */
|
|
8
|
+
instance;
|
|
9
|
+
/** A function that produces the value to be lazily loaded */
|
|
10
|
+
supplier;
|
|
11
|
+
/** Optional handler to clean up the instance when closed */
|
|
12
|
+
closeHandler;
|
|
13
|
+
/**
|
|
14
|
+
* Creates a new Lazy instance
|
|
15
|
+
* @param supplier A function that creates the lazy-loaded value
|
|
16
|
+
* @param closeHandler Optional function to clean up the instance when closed
|
|
17
|
+
*/
|
|
18
|
+
constructor(supplier, closeHandler) {
|
|
19
|
+
this.supplier = supplier;
|
|
20
|
+
this.closeHandler = closeHandler;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Retrieves the lazy-loaded value, initializing it if necessary
|
|
24
|
+
* @returns The lazy-loaded value
|
|
25
|
+
* @throws If the supplier function fails to initialize the value
|
|
26
|
+
*/
|
|
27
|
+
get() {
|
|
28
|
+
try {
|
|
29
|
+
this.instance = this.supplier();
|
|
30
|
+
console.error(`Lazy instance created with type ${this.instance?.constructor.name || typeof this.instance}`);
|
|
31
|
+
}
|
|
32
|
+
catch (error) {
|
|
33
|
+
throw new Error(`Failed to initialize lazy instance: ${error}`);
|
|
34
|
+
}
|
|
35
|
+
return this.instance;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Closes and cleans up the lazy-loaded instance if it exists.
|
|
39
|
+
* If a closeHandler was provided, it will be called with the instance.
|
|
40
|
+
* The instance is set to undefined after cleanup.
|
|
41
|
+
*/
|
|
42
|
+
close() {
|
|
43
|
+
if (this.instance) {
|
|
44
|
+
if (this.closeHandler) {
|
|
45
|
+
console.error(`Initiating close handler for lazy instance of type ${typeof this.instance}`);
|
|
46
|
+
this.closeHandler(this.instance);
|
|
47
|
+
console.error(`Lazy instance closed with type ${typeof this.instance}`);
|
|
48
|
+
}
|
|
49
|
+
this.instance = undefined;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* A class that implements lazy loading for asynchronous values.
|
|
55
|
+
* It defers the initialization of a value until it's first requested.
|
|
56
|
+
* @template T The type of value to be lazily loaded
|
|
57
|
+
*/
|
|
58
|
+
export class AsyncLazy {
|
|
59
|
+
/** The cached instance of the lazily loaded value */
|
|
60
|
+
instance;
|
|
61
|
+
/** A function that produces the value to be lazily loaded */
|
|
62
|
+
supplier;
|
|
63
|
+
/** Optional handler to clean up the instance when closed */
|
|
64
|
+
closeHandler;
|
|
65
|
+
/** Tracks the ongoing initialization promise to prevent multiple simultaneous initializations */
|
|
66
|
+
initializationPromise = null;
|
|
67
|
+
/**
|
|
68
|
+
* Creates a new AsyncLazy instance
|
|
69
|
+
* @param supplier An async function that creates the lazy-loaded value
|
|
70
|
+
* @param closeHandler Optional async function to clean up the instance when closed
|
|
71
|
+
*/
|
|
72
|
+
constructor(supplier, closeHandler) {
|
|
73
|
+
this.supplier = supplier;
|
|
74
|
+
this.closeHandler = closeHandler;
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Retrieves the lazy-loaded value, initializing it if necessary
|
|
78
|
+
* @returns A promise that resolves to the lazy-loaded value
|
|
79
|
+
* @throws If the supplier function fails to initialize the value
|
|
80
|
+
*/
|
|
81
|
+
async get() {
|
|
82
|
+
if (!this.instance) {
|
|
83
|
+
if (!this.initializationPromise) {
|
|
84
|
+
this.initializationPromise = this.supplier();
|
|
85
|
+
}
|
|
86
|
+
this.instance = await this.initializationPromise;
|
|
87
|
+
}
|
|
88
|
+
console.error(`Async Lazy instance created with type ${this.instance?.constructor.name || typeof this.instance}`);
|
|
89
|
+
return this.instance;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Closes and cleans up the lazy-loaded instance if it exists
|
|
93
|
+
* If a closeHandler was provided, it will be called with the instance
|
|
94
|
+
* @returns A promise that resolves when the cleanup is complete
|
|
95
|
+
*/
|
|
96
|
+
async close() {
|
|
97
|
+
if (this.instance) {
|
|
98
|
+
if (this.closeHandler) {
|
|
99
|
+
console.error(`Initiating close handler for lazy instance of type ${typeof this.instance}`);
|
|
100
|
+
await this.closeHandler(this.instance);
|
|
101
|
+
console.error(`Lazy instance closed with type ${typeof this.instance}`);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=lazy.js.map
|
package/dist/lazy.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lazy.js","sourceRoot":"","sources":["../src/lazy.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,OAAO,IAAI;IACf,qDAAqD;IAC7C,QAAQ,CAAgB;IAEhC,6DAA6D;IAC5C,QAAQ,CAAU;IAEnC,4DAA4D;IAC3C,YAAY,CAAyB;IAEtD;;;;OAIG;IACH,YAAY,QAAiB,EAAE,YAAoC;QACjE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;IAED;;;;OAIG;IACH,GAAG;QACD,IAAI,CAAC;YACH,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChC,OAAO,CAAC,KAAK,CACX,mCAAmC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,QAAQ,EAAE,CAC7F,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,uCAAuC,KAAK,EAAE,CAAC,CAAC;QAClE,CAAC;QACD,OAAO,IAAI,CAAC,QAAS,CAAC;IACxB,CAAC;IAED;;;;OAIG;IACH,KAAK;QACH,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACtB,OAAO,CAAC,KAAK,CACX,sDAAsD,OAAO,IAAI,CAAC,QAAQ,EAAE,CAC7E,CAAC;gBACF,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACjC,OAAO,CAAC,KAAK,CAAC,kCAAkC,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC1E,CAAC;YACD,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;QAC5B,CAAC;IACH,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,OAAO,SAAS;IACpB,qDAAqD;IAC7C,QAAQ,CAAgB;IAEhC,6DAA6D;IAC5C,QAAQ,CAAmB;IAE5C,4DAA4D;IAC3C,YAAY,CAAkC;IAE/D,iGAAiG;IACzF,qBAAqB,GAAsB,IAAI,CAAC;IAExD;;;;OAIG;IACH,YACE,QAA0B,EAC1B,YAA6C;QAE7C,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,GAAG;QACP,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBAChC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC/C,CAAC;YACD,IAAI,CAAC,QAAQ,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC;QACnD,CAAC;QACD,OAAO,CAAC,KAAK,CACX,yCAAyC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,QAAQ,EAAE,CACnG,CAAC;QACF,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACtB,OAAO,CAAC,KAAK,CACX,sDAAsD,OAAO,IAAI,CAAC,QAAQ,EAAE,CAC7E,CAAC;gBACF,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACvC,OAAO,CAAC,KAAK,CAAC,kCAAkC,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC1E,CAAC;QACH,CAAC;IACH,CAAC;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"print-md-schema.d.ts","sourceRoot":"","sources":["../src/print-md-schema.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { combinedSchema } from "./env-schema.js";
|
|
3
|
+
function zodSchemaToMarkdown(schema, parentKey = "") {
|
|
4
|
+
// Initialize table header
|
|
5
|
+
if (!parentKey) {
|
|
6
|
+
return ("| Variable | Description | Default Value | Required |\n" +
|
|
7
|
+
"|----------|-------------|---------------|----------|\n" +
|
|
8
|
+
extractRows(schema));
|
|
9
|
+
}
|
|
10
|
+
return extractRows(schema);
|
|
11
|
+
}
|
|
12
|
+
function extractRows(schema, parentKey = "") {
|
|
13
|
+
// Handle objects (nested properties)
|
|
14
|
+
if (schema instanceof z.ZodObject) {
|
|
15
|
+
return Object.entries(schema.shape)
|
|
16
|
+
.map(([key, subSchema]) => {
|
|
17
|
+
const fullKey = parentKey ? `${parentKey}.${key}` : key;
|
|
18
|
+
const isRequired = !(subSchema instanceof z.ZodOptional);
|
|
19
|
+
return {
|
|
20
|
+
key: fullKey,
|
|
21
|
+
schema: subSchema instanceof z.ZodObject
|
|
22
|
+
? subSchema
|
|
23
|
+
: subSchema,
|
|
24
|
+
isRequired,
|
|
25
|
+
};
|
|
26
|
+
})
|
|
27
|
+
.sort((a, b) => {
|
|
28
|
+
// Sort by required status first (required comes first)
|
|
29
|
+
if (a.isRequired !== b.isRequired) {
|
|
30
|
+
return a.isRequired ? -1 : 1;
|
|
31
|
+
}
|
|
32
|
+
// Then sort alphabetically
|
|
33
|
+
return a.key.localeCompare(b.key);
|
|
34
|
+
})
|
|
35
|
+
.map(({ key, schema }) => {
|
|
36
|
+
if (schema instanceof z.ZodObject) {
|
|
37
|
+
return extractRows(schema, key);
|
|
38
|
+
}
|
|
39
|
+
return formatTableRow(key, schema);
|
|
40
|
+
})
|
|
41
|
+
.join("");
|
|
42
|
+
}
|
|
43
|
+
// Handle non-object schemas
|
|
44
|
+
return formatTableRow(parentKey, schema);
|
|
45
|
+
}
|
|
46
|
+
function formatTableRow(key, schema) {
|
|
47
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
48
|
+
let description = schema.description || "";
|
|
49
|
+
let defaultValue = "";
|
|
50
|
+
const isRequired = !(schema instanceof z.ZodOptional);
|
|
51
|
+
// Extract default value if exists
|
|
52
|
+
if (schema instanceof z.ZodDefault) {
|
|
53
|
+
defaultValue = JSON.stringify(schema._def.defaultValue());
|
|
54
|
+
schema = schema.removeDefault();
|
|
55
|
+
}
|
|
56
|
+
// Add type information to description if not empty
|
|
57
|
+
const typeInfo = getTypeInfo(schema);
|
|
58
|
+
description = description ? `${description} (${typeInfo})` : typeInfo;
|
|
59
|
+
// Format the table row
|
|
60
|
+
return `| ${key} | ${description} | ${defaultValue} | ${isRequired ? "Yes" : "No"} |\n`;
|
|
61
|
+
}
|
|
62
|
+
function getTypeInfo(schema) {
|
|
63
|
+
if (schema instanceof z.ZodString) {
|
|
64
|
+
const constraints = [
|
|
65
|
+
schema.minLength !== null && `min: ${schema.minLength}`,
|
|
66
|
+
schema.maxLength !== null && `max: ${schema.maxLength}`,
|
|
67
|
+
]
|
|
68
|
+
.filter(Boolean)
|
|
69
|
+
.join(", ");
|
|
70
|
+
return `string${constraints ? ` (${constraints})` : ""}`;
|
|
71
|
+
}
|
|
72
|
+
if (schema instanceof z.ZodNumber) {
|
|
73
|
+
const constraints = [
|
|
74
|
+
schema.minValue !== null && `min: ${schema.minValue}`,
|
|
75
|
+
schema.maxValue !== null && `max: ${schema.maxValue}`,
|
|
76
|
+
]
|
|
77
|
+
.filter(Boolean)
|
|
78
|
+
.join(", ");
|
|
79
|
+
return `number${constraints ? ` (${constraints})` : ""}`;
|
|
80
|
+
}
|
|
81
|
+
if (schema instanceof z.ZodBoolean)
|
|
82
|
+
return "boolean";
|
|
83
|
+
if (schema instanceof z.ZodEnum)
|
|
84
|
+
return `enum: ${schema.options.join(" | ")}`;
|
|
85
|
+
if (schema instanceof z.ZodArray)
|
|
86
|
+
return `array of ${getTypeInfo(schema.element)}`;
|
|
87
|
+
if (schema instanceof z.ZodOptional)
|
|
88
|
+
return `${getTypeInfo(schema.unwrap())}`;
|
|
89
|
+
if (schema instanceof z.ZodNullable)
|
|
90
|
+
return `nullable ${getTypeInfo(schema.unwrap())}`;
|
|
91
|
+
if (schema instanceof z.ZodUnion)
|
|
92
|
+
return `union: ${schema.options.map((opt) => getTypeInfo(opt)).join(" | ")}`;
|
|
93
|
+
return schema.constructor.name.replace("Zod", "").toLowerCase();
|
|
94
|
+
}
|
|
95
|
+
console.log(zodSchemaToMarkdown(combinedSchema));
|
|
96
|
+
//# sourceMappingURL=print-md-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"print-md-schema.js","sourceRoot":"","sources":["../src/print-md-schema.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@confluentinc/mcp-confluent",
|
|
3
|
+
"description": "Confluent MCP Server",
|
|
4
|
+
"version": "1.0.1",
|
|
5
|
+
"author": "Confluent Inc.",
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"repository": {
|
|
8
|
+
"type": "git",
|
|
9
|
+
"url": "git+https://github.com/confluentinc/mcp-confluent.git"
|
|
10
|
+
},
|
|
11
|
+
"bin": {
|
|
12
|
+
"mcp-confluent": "dist/index.js"
|
|
13
|
+
},
|
|
14
|
+
"type": "module",
|
|
15
|
+
"keywords": [
|
|
16
|
+
"confluent",
|
|
17
|
+
"mcp",
|
|
18
|
+
"kafka",
|
|
19
|
+
"flink",
|
|
20
|
+
"modelcontextprotocol"
|
|
21
|
+
],
|
|
22
|
+
"bugs": {
|
|
23
|
+
"url": "https://github.com/confluentinc/mcp-confluent/issues"
|
|
24
|
+
},
|
|
25
|
+
"homepage": "https://www.confluent.io/blog/ai-agents-using-anthropic-mcp/",
|
|
26
|
+
"scripts": {
|
|
27
|
+
"dev": "concurrently \"tsc --watch\" \"tsc-alias --watch\"",
|
|
28
|
+
"test:ts": "tsc --noEmit",
|
|
29
|
+
"start": "node dist/index.js --env-file .env",
|
|
30
|
+
"lint": "eslint .",
|
|
31
|
+
"format": "prettier --write \"**/*.+(js|ts|json)\"",
|
|
32
|
+
"build": "tsc && tsc-alias",
|
|
33
|
+
"print:schema": "node dist/print-md-schema.js",
|
|
34
|
+
"prepare": "husky"
|
|
35
|
+
},
|
|
36
|
+
"devDependencies": {
|
|
37
|
+
"@eslint/js": "^9.23.0",
|
|
38
|
+
"@types/content-type": "^1.1.8",
|
|
39
|
+
"@types/eslint__js": "^8.42.3",
|
|
40
|
+
"@types/node": "^22.14.0",
|
|
41
|
+
"@types/ws": "^8.18.1",
|
|
42
|
+
"@typescript-eslint/eslint-plugin": "^8.29.0",
|
|
43
|
+
"@typescript-eslint/parser": "^8.29.0",
|
|
44
|
+
"concurrently": "^9.1.2",
|
|
45
|
+
"eslint": "^9.23.0",
|
|
46
|
+
"eslint-config-prettier": "^10.1.1",
|
|
47
|
+
"eslint-plugin-prettier": "^5.2.6",
|
|
48
|
+
"globals": "^16.0.0",
|
|
49
|
+
"husky": "^9.1.7",
|
|
50
|
+
"openapi-typescript": "^7.6.1",
|
|
51
|
+
"prettier": "3.5.3",
|
|
52
|
+
"tsc-alias": "^1.8.13",
|
|
53
|
+
"typescript": "^5.8.2",
|
|
54
|
+
"typescript-eslint": "^8.29.0"
|
|
55
|
+
},
|
|
56
|
+
"dependencies": {
|
|
57
|
+
"@commander-js/extra-typings": "^13.1.0",
|
|
58
|
+
"@confluentinc/kafka-javascript": "^1.2.0",
|
|
59
|
+
"@modelcontextprotocol/sdk": "^1.8.0",
|
|
60
|
+
"commander": "^13.1.0",
|
|
61
|
+
"dotenv": "^16.4.7",
|
|
62
|
+
"openapi-fetch": "^0.13.5",
|
|
63
|
+
"zod": "^3.24.2"
|
|
64
|
+
},
|
|
65
|
+
"files": [
|
|
66
|
+
"dist"
|
|
67
|
+
]
|
|
68
|
+
}
|