@flutchai/flutch-sdk 0.1.4 → 0.1.6

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 (194) hide show
  1. package/README.md +237 -17
  2. package/dist/index.cjs +6887 -0
  3. package/dist/index.cjs.map +1 -0
  4. package/dist/index.d.cts +1560 -0
  5. package/dist/index.d.ts +1560 -27
  6. package/dist/index.js +6814 -47
  7. package/dist/index.js.map +1 -1
  8. package/package.json +67 -13
  9. package/dist/api/callback-token.guard.d.ts +0 -17
  10. package/dist/api/callback-token.guard.js +0 -80
  11. package/dist/api/callback-token.guard.js.map +0 -1
  12. package/dist/api/callback.controller.d.ts +0 -7
  13. package/dist/api/callback.controller.js +0 -44
  14. package/dist/api/callback.controller.js.map +0 -1
  15. package/dist/api/graph.controller.d.ts +0 -32
  16. package/dist/api/graph.controller.js +0 -187
  17. package/dist/api/graph.controller.js.map +0 -1
  18. package/dist/api/ui-dispatch.controller.d.ts +0 -34
  19. package/dist/api/ui-dispatch.controller.js +0 -178
  20. package/dist/api/ui-dispatch.controller.js.map +0 -1
  21. package/dist/bootstrap.d.ts +0 -4
  22. package/dist/bootstrap.js +0 -99
  23. package/dist/bootstrap.js.map +0 -1
  24. package/dist/callbacks/callback-acl.service.d.ts +0 -24
  25. package/dist/callbacks/callback-acl.service.js +0 -144
  26. package/dist/callbacks/callback-acl.service.js.map +0 -1
  27. package/dist/callbacks/callback-auditor.service.d.ts +0 -47
  28. package/dist/callbacks/callback-auditor.service.js +0 -286
  29. package/dist/callbacks/callback-auditor.service.js.map +0 -1
  30. package/dist/callbacks/callback-metrics.service.d.ts +0 -34
  31. package/dist/callbacks/callback-metrics.service.js +0 -216
  32. package/dist/callbacks/callback-metrics.service.js.map +0 -1
  33. package/dist/callbacks/callback-patch.service.d.ts +0 -13
  34. package/dist/callbacks/callback-patch.service.js +0 -51
  35. package/dist/callbacks/callback-patch.service.js.map +0 -1
  36. package/dist/callbacks/callback-rate-limiter.d.ts +0 -27
  37. package/dist/callbacks/callback-rate-limiter.js +0 -129
  38. package/dist/callbacks/callback-rate-limiter.js.map +0 -1
  39. package/dist/callbacks/callback-registry.d.ts +0 -7
  40. package/dist/callbacks/callback-registry.js +0 -29
  41. package/dist/callbacks/callback-registry.js.map +0 -1
  42. package/dist/callbacks/callback-store.d.ts +0 -19
  43. package/dist/callbacks/callback-store.js +0 -145
  44. package/dist/callbacks/callback-store.js.map +0 -1
  45. package/dist/callbacks/example.callback.d.ts +0 -2
  46. package/dist/callbacks/example.callback.js +0 -10
  47. package/dist/callbacks/example.callback.js.map +0 -1
  48. package/dist/callbacks/idempotency-manager.d.ts +0 -54
  49. package/dist/callbacks/idempotency-manager.js +0 -230
  50. package/dist/callbacks/idempotency-manager.js.map +0 -1
  51. package/dist/callbacks/index.d.ts +0 -13
  52. package/dist/callbacks/index.js +0 -30
  53. package/dist/callbacks/index.js.map +0 -1
  54. package/dist/callbacks/smart-callback.router.d.ts +0 -52
  55. package/dist/callbacks/smart-callback.router.js +0 -213
  56. package/dist/callbacks/smart-callback.router.js.map +0 -1
  57. package/dist/callbacks/telegram-patch.handler.d.ts +0 -6
  58. package/dist/callbacks/telegram-patch.handler.js +0 -24
  59. package/dist/callbacks/telegram-patch.handler.js.map +0 -1
  60. package/dist/callbacks/universal-callback.service.d.ts +0 -14
  61. package/dist/callbacks/universal-callback.service.js +0 -20
  62. package/dist/callbacks/universal-callback.service.js.map +0 -1
  63. package/dist/callbacks/web-patch.handler.d.ts +0 -6
  64. package/dist/callbacks/web-patch.handler.js +0 -24
  65. package/dist/callbacks/web-patch.handler.js.map +0 -1
  66. package/dist/core/abstract-graph.builder.d.ts +0 -128
  67. package/dist/core/abstract-graph.builder.js +0 -488
  68. package/dist/core/abstract-graph.builder.js.map +0 -1
  69. package/dist/core/builder-registry.service.d.ts +0 -6
  70. package/dist/core/builder-registry.service.js +0 -29
  71. package/dist/core/builder-registry.service.js.map +0 -1
  72. package/dist/core/universal-graph.module.d.ts +0 -10
  73. package/dist/core/universal-graph.module.js +0 -294
  74. package/dist/core/universal-graph.module.js.map +0 -1
  75. package/dist/decorators/callback.decorators.d.ts +0 -21
  76. package/dist/decorators/callback.decorators.js +0 -73
  77. package/dist/decorators/callback.decorators.js.map +0 -1
  78. package/dist/endpoint-registry/endpoint.decorators.d.ts +0 -35
  79. package/dist/endpoint-registry/endpoint.decorators.js +0 -115
  80. package/dist/endpoint-registry/endpoint.decorators.js.map +0 -1
  81. package/dist/endpoint-registry/endpoint.registry.d.ts +0 -44
  82. package/dist/endpoint-registry/endpoint.registry.js +0 -90
  83. package/dist/endpoint-registry/endpoint.registry.js.map +0 -1
  84. package/dist/endpoint-registry/index.d.ts +0 -3
  85. package/dist/endpoint-registry/index.js +0 -20
  86. package/dist/endpoint-registry/index.js.map +0 -1
  87. package/dist/endpoint-registry/ui-endpoints.discovery.d.ts +0 -11
  88. package/dist/endpoint-registry/ui-endpoints.discovery.js +0 -72
  89. package/dist/endpoint-registry/ui-endpoints.discovery.js.map +0 -1
  90. package/dist/engine/api-call-tracer.utils.d.ts +0 -8
  91. package/dist/engine/api-call-tracer.utils.js +0 -184
  92. package/dist/engine/api-call-tracer.utils.js.map +0 -1
  93. package/dist/engine/event-processor.utils.d.ts +0 -49
  94. package/dist/engine/event-processor.utils.js +0 -314
  95. package/dist/engine/event-processor.utils.js.map +0 -1
  96. package/dist/engine/graph-engine.factory.d.ts +0 -12
  97. package/dist/engine/graph-engine.factory.js +0 -43
  98. package/dist/engine/graph-engine.factory.js.map +0 -1
  99. package/dist/engine/langgraph-engine.d.ts +0 -14
  100. package/dist/engine/langgraph-engine.js +0 -261
  101. package/dist/engine/langgraph-engine.js.map +0 -1
  102. package/dist/interfaces/callback.interface.d.ts +0 -46
  103. package/dist/interfaces/callback.interface.js +0 -3
  104. package/dist/interfaces/callback.interface.js.map +0 -1
  105. package/dist/interfaces/graph-registry.interface.d.ts +0 -8
  106. package/dist/interfaces/graph-registry.interface.js +0 -3
  107. package/dist/interfaces/graph-registry.interface.js.map +0 -1
  108. package/dist/interfaces/graph-service.interface.d.ts +0 -43
  109. package/dist/interfaces/graph-service.interface.js +0 -9
  110. package/dist/interfaces/graph-service.interface.js.map +0 -1
  111. package/dist/interfaces/index.d.ts +0 -3
  112. package/dist/interfaces/index.js +0 -20
  113. package/dist/interfaces/index.js.map +0 -1
  114. package/dist/llm/index.d.ts +0 -6
  115. package/dist/llm/index.js +0 -23
  116. package/dist/llm/index.js.map +0 -1
  117. package/dist/llm/llm.initializer.d.ts +0 -14
  118. package/dist/llm/llm.initializer.js +0 -167
  119. package/dist/llm/llm.initializer.js.map +0 -1
  120. package/dist/llm/llm.interface.d.ts +0 -6
  121. package/dist/llm/llm.interface.js +0 -3
  122. package/dist/llm/llm.interface.js.map +0 -1
  123. package/dist/llm/llm.types.d.ts +0 -32
  124. package/dist/llm/llm.types.js +0 -3
  125. package/dist/llm/llm.types.js.map +0 -1
  126. package/dist/llm/model.initializer.d.ts +0 -45
  127. package/dist/llm/model.initializer.js +0 -630
  128. package/dist/llm/model.initializer.js.map +0 -1
  129. package/dist/llm/model.interface.d.ts +0 -38
  130. package/dist/llm/model.interface.js +0 -4
  131. package/dist/llm/model.interface.js.map +0 -1
  132. package/dist/llm/rerankers/voyageai-rerank.d.ts +0 -17
  133. package/dist/llm/rerankers/voyageai-rerank.js +0 -56
  134. package/dist/llm/rerankers/voyageai-rerank.js.map +0 -1
  135. package/dist/retriever/database-factory.d.ts +0 -15
  136. package/dist/retriever/database-factory.js +0 -83
  137. package/dist/retriever/database-factory.js.map +0 -1
  138. package/dist/retriever/index.d.ts +0 -2
  139. package/dist/retriever/index.js +0 -19
  140. package/dist/retriever/index.js.map +0 -1
  141. package/dist/retriever/retriever.client.d.ts +0 -28
  142. package/dist/retriever/retriever.client.js +0 -97
  143. package/dist/retriever/retriever.client.js.map +0 -1
  144. package/dist/retriever/retriever.service.d.ts +0 -25
  145. package/dist/retriever/retriever.service.js +0 -265
  146. package/dist/retriever/retriever.service.js.map +0 -1
  147. package/dist/retriever/types.d.ts +0 -22
  148. package/dist/retriever/types.js +0 -3
  149. package/dist/retriever/types.js.map +0 -1
  150. package/dist/schemas/graph-manifest.schema.d.ts +0 -134
  151. package/dist/schemas/graph-manifest.schema.js +0 -180
  152. package/dist/schemas/graph-manifest.schema.js.map +0 -1
  153. package/dist/schemas/index.d.ts +0 -1
  154. package/dist/schemas/index.js +0 -18
  155. package/dist/schemas/index.js.map +0 -1
  156. package/dist/shared-types/index.d.ts +0 -199
  157. package/dist/shared-types/index.js +0 -58
  158. package/dist/shared-types/index.js.map +0 -1
  159. package/dist/tools/index.d.ts +0 -3
  160. package/dist/tools/index.js +0 -20
  161. package/dist/tools/index.js.map +0 -1
  162. package/dist/tools/mcp-converter.d.ts +0 -15
  163. package/dist/tools/mcp-converter.js +0 -133
  164. package/dist/tools/mcp-converter.js.map +0 -1
  165. package/dist/tools/mcp-tool-filter.d.ts +0 -11
  166. package/dist/tools/mcp-tool-filter.js +0 -123
  167. package/dist/tools/mcp-tool-filter.js.map +0 -1
  168. package/dist/tools/mcp.interfaces.d.ts +0 -19
  169. package/dist/tools/mcp.interfaces.js +0 -3
  170. package/dist/tools/mcp.interfaces.js.map +0 -1
  171. package/dist/types/graph-types.d.ts +0 -82
  172. package/dist/types/graph-types.js +0 -6
  173. package/dist/types/graph-types.js.map +0 -1
  174. package/dist/utils/error.utils.d.ts +0 -18
  175. package/dist/utils/error.utils.js +0 -78
  176. package/dist/utils/error.utils.js.map +0 -1
  177. package/dist/utils/graph-type.utils.d.ts +0 -14
  178. package/dist/utils/graph-type.utils.js +0 -71
  179. package/dist/utils/graph-type.utils.js.map +0 -1
  180. package/dist/utils/index.d.ts +0 -1
  181. package/dist/utils/index.js +0 -18
  182. package/dist/utils/index.js.map +0 -1
  183. package/dist/utils/usage-recorder.d.ts +0 -23
  184. package/dist/utils/usage-recorder.js +0 -29
  185. package/dist/utils/usage-recorder.js.map +0 -1
  186. package/dist/versioning/index.d.ts +0 -2
  187. package/dist/versioning/index.js +0 -19
  188. package/dist/versioning/index.js.map +0 -1
  189. package/dist/versioning/versioned-graph.service.d.ts +0 -16
  190. package/dist/versioning/versioned-graph.service.js +0 -132
  191. package/dist/versioning/versioned-graph.service.js.map +0 -1
  192. package/dist/versioning/versioning.types.d.ts +0 -21
  193. package/dist/versioning/versioning.types.js +0 -3
  194. package/dist/versioning/versioning.types.js.map +0 -1
@@ -1,199 +0,0 @@
1
- export interface IDeletionInfo {
2
- deletedAt: Date;
3
- deletedBy: string;
4
- reason?: string;
5
- }
6
- export interface IBaseEntity {
7
- id: string;
8
- version: number;
9
- createdAt?: Date;
10
- updatedAt?: Date;
11
- deletion?: IDeletionInfo;
12
- }
13
- export declare enum ModelProvider {
14
- FLUTCH = "flutch",
15
- FLUTCH_MISTRAL = "flutch-mistral",
16
- FLUTCH_OPENAI = "flutch-openai",
17
- FLUTCH_ANTHROPIC = "flutch-anthropic",
18
- MISTRAL = "mistral",
19
- OPENAI = "openai",
20
- ANTHROPIC = "anthropic",
21
- AWS = "aws",
22
- COHERE = "cohere",
23
- VOYAGEAI = "voyageai"
24
- }
25
- export declare enum ModelType {
26
- CHAT = "chat",
27
- RERANK = "rerank",
28
- EMBEDDING = "embedding",
29
- IMAGE = "image",
30
- SPEECH = "speech"
31
- }
32
- export declare enum ChatFeature {
33
- STREAMING = "streaming",
34
- TOOLS = "tools",
35
- VISION = "vision",
36
- FUNCTION_CALLING = "function_calling",
37
- JSON_MODE = "json_mode"
38
- }
39
- export interface IToolCatalog extends IBaseEntity {
40
- toolName: string;
41
- title: string;
42
- description?: string;
43
- category?: string;
44
- isActive: boolean;
45
- toolVersion?: string;
46
- configSchema?: IToolConfigOption[];
47
- }
48
- export interface IToolConfigOption {
49
- key: string;
50
- name: string;
51
- description?: string;
52
- type: "string" | "number" | "boolean" | "select" | "kbselect" | "modelSelector" | "text" | "textarea";
53
- required?: boolean;
54
- defaultValue?: any;
55
- options?: Array<{
56
- value: string;
57
- label: string;
58
- }>;
59
- params?: {
60
- isMulti?: boolean;
61
- minimum?: number;
62
- maximum?: number;
63
- placeholder?: string;
64
- maxLength?: number;
65
- modelType?: ModelType;
66
- provider?: ModelProvider;
67
- isActive?: boolean;
68
- };
69
- }
70
- export interface IAgentToolConfig {
71
- toolName: string;
72
- enabled: boolean;
73
- config?: Record<string, any>;
74
- }
75
- export interface IAgentToolConfiguration {
76
- toolName: string;
77
- enabled: boolean;
78
- config?: Record<string, any>;
79
- credentials?: Record<string, string>;
80
- useGlobalCredentials?: boolean;
81
- }
82
- export interface ISystemToolCredentials {
83
- toolName: string;
84
- credentials: Record<string, string>;
85
- createdBy: string;
86
- createdAt: Date;
87
- updatedAt: Date;
88
- }
89
- export interface IToolExecutionContext {
90
- toolName: string;
91
- config: Record<string, any>;
92
- credentials: Record<string, string>;
93
- agentId: string;
94
- userId: string;
95
- }
96
- export declare enum RetrieverSearchType {
97
- Search = "search",
98
- MMR = "mmr",
99
- Similarity = "similarity"
100
- }
101
- export declare enum AttachmentType {
102
- IMAGE = "image",
103
- VOICE = "voice",
104
- FILE = "file",
105
- BUTTON = "button",
106
- CITATION = "citation",
107
- SUGGESTION = "suggestion",
108
- WEBAPP = "webapp",
109
- SOURCE = "source",
110
- CARD = "card",
111
- CHART = "chart"
112
- }
113
- export interface IReasoningStep {
114
- index: number;
115
- type: "text" | "tool_call" | "tool_result" | "thinking" | "tool_use";
116
- text?: string;
117
- metadata?: Record<string, any>;
118
- }
119
- export interface IReasoningChain {
120
- steps: IReasoningStep[];
121
- isComplete: boolean;
122
- }
123
- export interface IToolCall {
124
- name: string;
125
- id?: string;
126
- input?: any;
127
- }
128
- export interface ITracingEvent {
129
- timestamp: string;
130
- type: string;
131
- data?: Record<string, any>;
132
- }
133
- export interface IAttachment {
134
- type: AttachmentType;
135
- value: any;
136
- metadata?: Record<string, any>;
137
- }
138
- export interface IUsageMetrics {
139
- promptTokens?: number;
140
- completionTokens?: number;
141
- totalTokens?: number;
142
- [key: string]: any;
143
- }
144
- export interface IStoredMessageContent {
145
- text?: string;
146
- attachments?: IAttachment[];
147
- metadata?: Record<string, any>;
148
- tracingEvents?: ITracingEvent[];
149
- reasoningChains?: IReasoningChain[];
150
- hasReasoningProcess?: boolean;
151
- currentToolCall?: IToolCall | null;
152
- }
153
- export declare enum StreamChannel {
154
- TEXT = "text",
155
- PROCESSING = "processing",
156
- TOOLS = "tools"
157
- }
158
- export interface IGraphTraceEvent {
159
- type: string;
160
- name?: string;
161
- channel?: string;
162
- nodeName?: string;
163
- timestamp: number;
164
- metadata?: Record<string, unknown>;
165
- data?: Record<string, unknown>;
166
- }
167
- export type CitationValue = {
168
- source: {
169
- url: string;
170
- title: string;
171
- type: "webpage" | "pdf" | "article";
172
- articleId?: string;
173
- knowledgeBaseId?: string;
174
- };
175
- };
176
- export type ChartType = "line" | "bar" | "pie" | "area";
177
- export interface IChartDataPoint {
178
- label: string;
179
- value: number;
180
- color?: string;
181
- }
182
- export interface IChartDataset {
183
- label: string;
184
- data: IChartDataPoint[];
185
- color?: string;
186
- }
187
- export interface IChartValue {
188
- type: ChartType;
189
- title: string;
190
- description?: string;
191
- datasets: IChartDataset[];
192
- options?: {
193
- showLegend?: boolean;
194
- showGrid?: boolean;
195
- currency?: boolean;
196
- percentage?: boolean;
197
- [key: string]: any;
198
- };
199
- }
@@ -1,58 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.StreamChannel = exports.AttachmentType = exports.RetrieverSearchType = exports.ChatFeature = exports.ModelType = exports.ModelProvider = void 0;
4
- var ModelProvider;
5
- (function (ModelProvider) {
6
- ModelProvider["FLUTCH"] = "flutch";
7
- ModelProvider["FLUTCH_MISTRAL"] = "flutch-mistral";
8
- ModelProvider["FLUTCH_OPENAI"] = "flutch-openai";
9
- ModelProvider["FLUTCH_ANTHROPIC"] = "flutch-anthropic";
10
- ModelProvider["MISTRAL"] = "mistral";
11
- ModelProvider["OPENAI"] = "openai";
12
- ModelProvider["ANTHROPIC"] = "anthropic";
13
- ModelProvider["AWS"] = "aws";
14
- ModelProvider["COHERE"] = "cohere";
15
- ModelProvider["VOYAGEAI"] = "voyageai";
16
- })(ModelProvider || (exports.ModelProvider = ModelProvider = {}));
17
- var ModelType;
18
- (function (ModelType) {
19
- ModelType["CHAT"] = "chat";
20
- ModelType["RERANK"] = "rerank";
21
- ModelType["EMBEDDING"] = "embedding";
22
- ModelType["IMAGE"] = "image";
23
- ModelType["SPEECH"] = "speech";
24
- })(ModelType || (exports.ModelType = ModelType = {}));
25
- var ChatFeature;
26
- (function (ChatFeature) {
27
- ChatFeature["STREAMING"] = "streaming";
28
- ChatFeature["TOOLS"] = "tools";
29
- ChatFeature["VISION"] = "vision";
30
- ChatFeature["FUNCTION_CALLING"] = "function_calling";
31
- ChatFeature["JSON_MODE"] = "json_mode";
32
- })(ChatFeature || (exports.ChatFeature = ChatFeature = {}));
33
- var RetrieverSearchType;
34
- (function (RetrieverSearchType) {
35
- RetrieverSearchType["Search"] = "search";
36
- RetrieverSearchType["MMR"] = "mmr";
37
- RetrieverSearchType["Similarity"] = "similarity";
38
- })(RetrieverSearchType || (exports.RetrieverSearchType = RetrieverSearchType = {}));
39
- var AttachmentType;
40
- (function (AttachmentType) {
41
- AttachmentType["IMAGE"] = "image";
42
- AttachmentType["VOICE"] = "voice";
43
- AttachmentType["FILE"] = "file";
44
- AttachmentType["BUTTON"] = "button";
45
- AttachmentType["CITATION"] = "citation";
46
- AttachmentType["SUGGESTION"] = "suggestion";
47
- AttachmentType["WEBAPP"] = "webapp";
48
- AttachmentType["SOURCE"] = "source";
49
- AttachmentType["CARD"] = "card";
50
- AttachmentType["CHART"] = "chart";
51
- })(AttachmentType || (exports.AttachmentType = AttachmentType = {}));
52
- var StreamChannel;
53
- (function (StreamChannel) {
54
- StreamChannel["TEXT"] = "text";
55
- StreamChannel["PROCESSING"] = "processing";
56
- StreamChannel["TOOLS"] = "tools";
57
- })(StreamChannel || (exports.StreamChannel = StreamChannel = {}));
58
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/shared-types/index.ts"],"names":[],"mappings":";;;AA0BA,IAAY,aAWX;AAXD,WAAY,aAAa;IACvB,kCAAiB,CAAA;IACjB,kDAAiC,CAAA;IACjC,gDAA+B,CAAA;IAC/B,sDAAqC,CAAA;IACrC,oCAAmB,CAAA;IACnB,kCAAiB,CAAA;IACjB,wCAAuB,CAAA;IACvB,4BAAW,CAAA;IACX,kCAAiB,CAAA;IACjB,sCAAqB,CAAA;AACvB,CAAC,EAXW,aAAa,6BAAb,aAAa,QAWxB;AAED,IAAY,SAMX;AAND,WAAY,SAAS;IACnB,0BAAa,CAAA;IACb,8BAAiB,CAAA;IACjB,oCAAuB,CAAA;IACvB,4BAAe,CAAA;IACf,8BAAiB,CAAA;AACnB,CAAC,EANW,SAAS,yBAAT,SAAS,QAMpB;AAED,IAAY,WAMX;AAND,WAAY,WAAW;IACrB,sCAAuB,CAAA;IACvB,8BAAe,CAAA;IACf,gCAAiB,CAAA;IACjB,oDAAqC,CAAA;IACrC,sCAAuB,CAAA;AACzB,CAAC,EANW,WAAW,2BAAX,WAAW,QAMtB;AAyHD,IAAY,mBAIX;AAJD,WAAY,mBAAmB;IAC7B,wCAAiB,CAAA;IACjB,kCAAW,CAAA;IACX,gDAAyB,CAAA;AAC3B,CAAC,EAJW,mBAAmB,mCAAnB,mBAAmB,QAI9B;AAMD,IAAY,cAWX;AAXD,WAAY,cAAc;IACxB,iCAAe,CAAA;IACf,iCAAe,CAAA;IACf,+BAAa,CAAA;IACb,mCAAiB,CAAA;IACjB,uCAAqB,CAAA;IACrB,2CAAyB,CAAA;IACzB,mCAAiB,CAAA;IACjB,mCAAiB,CAAA;IACjB,+BAAa,CAAA;IACb,iCAAe,CAAA;AACjB,CAAC,EAXW,cAAc,8BAAd,cAAc,QAWzB;AAgED,IAAY,aAIX;AAJD,WAAY,aAAa;IACvB,8BAAa,CAAA;IACb,0CAAyB,CAAA;IACzB,gCAAe,CAAA;AACjB,CAAC,EAJW,aAAa,6BAAb,aAAa,QAIxB"}
@@ -1,3 +0,0 @@
1
- export * from "./mcp.interfaces";
2
- export * from "./mcp-converter";
3
- export * from "./mcp-tool-filter";
@@ -1,20 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./mcp.interfaces"), exports);
18
- __exportStar(require("./mcp-converter"), exports);
19
- __exportStar(require("./mcp-tool-filter"), exports);
20
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,mDAAiC;AAGjC,kDAAgC;AAChC,oDAAkC"}
@@ -1,15 +0,0 @@
1
- import { StructuredTool } from "@langchain/core/tools";
2
- import { McpTool } from "./mcp.interfaces";
3
- type LangChainStructuredTool = StructuredTool<any, any, any, string>;
4
- export declare class McpConverter {
5
- private readonly logger;
6
- private readonly mcpRuntimeUrl;
7
- constructor(mcpRuntimeUrl?: string);
8
- private jsonSchemaToZod;
9
- private mapPrimitiveSchema;
10
- convertTool(mcpTool: McpTool): LangChainStructuredTool;
11
- convertTools(mcpTools: McpTool[]): Promise<LangChainStructuredTool[]>;
12
- fetchAndConvertTools(filter?: string): Promise<LangChainStructuredTool[]>;
13
- healthCheck(): Promise<boolean>;
14
- }
15
- export {};
@@ -1,133 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.McpConverter = void 0;
7
- const tools_1 = require("@langchain/core/tools");
8
- const zod_1 = require("zod");
9
- const axios_1 = __importDefault(require("axios"));
10
- const common_1 = require("@nestjs/common");
11
- class McpConverter {
12
- constructor(mcpRuntimeUrl = "http://localhost:3004") {
13
- this.logger = new common_1.Logger(McpConverter.name);
14
- this.mcpRuntimeUrl = mcpRuntimeUrl;
15
- }
16
- jsonSchemaToZod(jsonSchema) {
17
- var _a;
18
- if (!jsonSchema || typeof jsonSchema !== "object") {
19
- return zod_1.z.any();
20
- }
21
- if (jsonSchema.type !== "object") {
22
- return this.mapPrimitiveSchema(jsonSchema.type, true);
23
- }
24
- const properties = jsonSchema.properties || {};
25
- const required = Array.isArray(jsonSchema.required)
26
- ? jsonSchema.required
27
- : [];
28
- const zodShape = {};
29
- for (const [key, prop] of Object.entries(properties)) {
30
- const propDef = prop;
31
- const isRequired = required.includes(key);
32
- const schemaType = (_a = propDef === null || propDef === void 0 ? void 0 : propDef.type) !== null && _a !== void 0 ? _a : "any";
33
- const mappedType = this.mapPrimitiveSchema(schemaType, isRequired);
34
- zodShape[key] = mappedType;
35
- }
36
- const baseObject = zod_1.z.object(zodShape);
37
- const configuredObject = jsonSchema.additionalProperties === false
38
- ? baseObject.strict()
39
- : baseObject.passthrough();
40
- return configuredObject;
41
- }
42
- mapPrimitiveSchema(type, required) {
43
- const optionalize = (schema) => (required ? schema : schema.optional());
44
- switch (type) {
45
- case "string":
46
- return optionalize(zod_1.z.string());
47
- case "number":
48
- case "integer":
49
- return optionalize(zod_1.z.number());
50
- case "boolean":
51
- return optionalize(zod_1.z.boolean());
52
- case "array":
53
- return optionalize(zod_1.z.array(zod_1.z.any()));
54
- case "object":
55
- return optionalize(zod_1.z.record(zod_1.z.any()));
56
- default:
57
- return optionalize(zod_1.z.any());
58
- }
59
- }
60
- convertTool(mcpTool) {
61
- var _a, _b;
62
- const logger = this.logger;
63
- const mcpRuntimeUrl = this.mcpRuntimeUrl;
64
- const schema = this.jsonSchemaToZod(mcpTool.inputSchema);
65
- logger.debug(`🔧 [${mcpTool.name}] Original schema:`, JSON.stringify(mcpTool.inputSchema, null, 2));
66
- logger.debug(`🔧 [${mcpTool.name}] Using schema type: ${(_b = (_a = schema === null || schema === void 0 ? void 0 : schema._def) === null || _a === void 0 ? void 0 : _a.typeName) !== null && _b !== void 0 ? _b : "unknown"}`);
67
- return new tools_1.DynamicStructuredTool({
68
- name: mcpTool.name,
69
- description: mcpTool.description,
70
- schema,
71
- func: async (input) => {
72
- logger.log(`🔧 [${mcpTool.name}] LLM INPUT: ${JSON.stringify(input)}`);
73
- try {
74
- const request = {
75
- name: mcpTool.name,
76
- arguments: input !== null && input !== void 0 ? input : {},
77
- };
78
- logger.log(`🔧 [${mcpTool.name}] Calling MCP Runtime...`);
79
- const response = await axios_1.default.post(`${mcpRuntimeUrl}/tools/execute`, request, { timeout: 30000 });
80
- const result = response.data;
81
- logger.log(`🔧 [${mcpTool.name}] MCP Runtime response: success=${result.success}`);
82
- if (!result.success) {
83
- const errorMessage = result.error || "Tool execution failed";
84
- logger.error(`🔧 [${mcpTool.name}] MCP Runtime error: ${errorMessage}`);
85
- throw new Error(errorMessage);
86
- }
87
- const output = typeof result.result === "string"
88
- ? result.result
89
- : JSON.stringify(result.result, null, 2);
90
- logger.log(`🔧 [${mcpTool.name}] TOOL OUTPUT: ${output.length > 200 ? output.substring(0, 200) + "..." : output}`);
91
- return output;
92
- }
93
- catch (error) {
94
- logger.error(`🔧 [${mcpTool.name}] Exception during execution`, error);
95
- if (axios_1.default.isAxiosError(error)) {
96
- throw new Error(`MCP Runtime error: ${error.message}`);
97
- }
98
- throw error instanceof Error ? error : new Error(String(error));
99
- }
100
- },
101
- });
102
- }
103
- async convertTools(mcpTools) {
104
- return mcpTools.map(tool => this.convertTool(tool));
105
- }
106
- async fetchAndConvertTools(filter) {
107
- try {
108
- const params = filter ? { filter } : {};
109
- const response = await axios_1.default.get(`${this.mcpRuntimeUrl}/tools/list`, {
110
- params,
111
- timeout: 5000,
112
- });
113
- const mcpTools = response.data;
114
- this.logger.log(`Fetched ${mcpTools.length} tools from MCP Runtime`);
115
- return this.convertTools(mcpTools);
116
- }
117
- catch (error) {
118
- this.logger.error("Failed to fetch MCP tools:", error);
119
- throw new Error(`Cannot connect to MCP Runtime at ${this.mcpRuntimeUrl}`);
120
- }
121
- }
122
- async healthCheck() {
123
- try {
124
- const response = await axios_1.default.get(`${this.mcpRuntimeUrl}/tools/health/check`, { timeout: 5000 });
125
- return response.data.status === "ok";
126
- }
127
- catch (_a) {
128
- return false;
129
- }
130
- }
131
- }
132
- exports.McpConverter = McpConverter;
133
- //# sourceMappingURL=mcp-converter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mcp-converter.js","sourceRoot":"","sources":["../../src/tools/mcp-converter.ts"],"names":[],"mappings":"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"}
@@ -1,11 +0,0 @@
1
- import { StructuredTool } from "@langchain/core/tools";
2
- export declare class McpToolFilter {
3
- private readonly mcpRuntimeUrl;
4
- private readonly logger;
5
- private readonly mcpConverter;
6
- constructor(mcpRuntimeUrl?: string);
7
- getFilteredTools(enabledTools?: string[]): Promise<StructuredTool[]>;
8
- getAllTools(): Promise<StructuredTool[]>;
9
- isHealthy(): Promise<boolean>;
10
- getAvailableToolNames(): Promise<string[]>;
11
- }
@@ -1,123 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.McpToolFilter = void 0;
7
- const common_1 = require("@nestjs/common");
8
- const axios_1 = __importDefault(require("axios"));
9
- const mcp_converter_1 = require("./mcp-converter");
10
- class McpToolFilter {
11
- constructor(mcpRuntimeUrl = process.env.MCP_RUNTIME_URL ||
12
- "http://localhost:3004") {
13
- this.mcpRuntimeUrl = mcpRuntimeUrl;
14
- this.logger = new common_1.Logger(McpToolFilter.name);
15
- this.mcpConverter = new mcp_converter_1.McpConverter(this.mcpRuntimeUrl);
16
- }
17
- async getFilteredTools(enabledTools = []) {
18
- this.logger.debug(`[DEBUG] Getting filtered tools. Enabled: ${enabledTools.join(", ")}`);
19
- this.logger.debug(`[DEBUG] MCP Runtime URL: ${this.mcpRuntimeUrl}`);
20
- if (enabledTools.length === 0) {
21
- this.logger.debug("No tools enabled, returning empty array");
22
- return [];
23
- }
24
- try {
25
- const filterParam = enabledTools.join(",");
26
- this.logger.debug(`[DEBUG] Making HTTP request to: ${this.mcpRuntimeUrl}/tools/list with filter: ${filterParam}`);
27
- const response = await axios_1.default.get(`${this.mcpRuntimeUrl}/tools/list`, {
28
- params: { filter: filterParam },
29
- timeout: 5000,
30
- });
31
- this.logger.debug(`[DEBUG] HTTP response status: ${response.status}, data length: ${Array.isArray(response.data) ? response.data.length : "not array"}`);
32
- const filteredTools = Array.isArray(response.data)
33
- ? response.data
34
- : [];
35
- this.logger.debug(`Retrieved ${filteredTools.length} filtered MCP tools for: ${enabledTools.join(", ")}`);
36
- const mcpClient = {
37
- getTools: async () => filteredTools,
38
- executeTool: async (name, args) => {
39
- this.logger.debug(`[DEBUG] Executing tool ${name} with args:`, args);
40
- const response = await axios_1.default.post(`${this.mcpRuntimeUrl}/tools/execute`, {
41
- name,
42
- arguments: args || {},
43
- });
44
- return response.data;
45
- },
46
- isHealthy: async () => true,
47
- };
48
- this.logger.log(`🚀 [McpToolFilter] Converting ${filteredTools.length} tools using new McpConverter`);
49
- const tools = await this.mcpConverter.convertTools(filteredTools);
50
- this.logger.log(`🚀 [McpToolFilter] Converted tools: ${tools.map(t => t.name).join(", ")}`);
51
- this.logger.log(`Configured ${tools.length} tools from MCP runtime: ${filteredTools.map(t => t.name).join(", ")}`);
52
- return tools;
53
- }
54
- catch (error) {
55
- const errorMessage = error instanceof Error ? error.message : String(error);
56
- this.logger.warn(`[DEBUG] Failed to fetch tools from MCP runtime (${this.mcpRuntimeUrl}): ${errorMessage}`);
57
- this.logger.warn(`[DEBUG] Error details:`, {
58
- error,
59
- stack: error instanceof Error ? error.stack : "no stack",
60
- });
61
- return [];
62
- }
63
- }
64
- async getAllTools() {
65
- try {
66
- const response = await axios_1.default.get(`${this.mcpRuntimeUrl}/tools/list`, {
67
- timeout: 5000,
68
- });
69
- const allTools = Array.isArray(response.data)
70
- ? response.data
71
- : [];
72
- this.logger.debug(`Retrieved ${allTools.length} total MCP tools`);
73
- const mcpClient = {
74
- getTools: async () => allTools,
75
- executeTool: async (name, args) => {
76
- const response = await axios_1.default.post(`${this.mcpRuntimeUrl}/tools/execute`, {
77
- name,
78
- arguments: args || {},
79
- });
80
- return response.data;
81
- },
82
- isHealthy: async () => true,
83
- };
84
- const tools = await this.mcpConverter.convertTools(allTools);
85
- this.logger.log(`Configured ${tools.length} tools from MCP runtime`);
86
- return tools;
87
- }
88
- catch (error) {
89
- const errorMessage = error instanceof Error ? error.message : String(error);
90
- this.logger.warn(`Failed to fetch all tools from MCP runtime (${this.mcpRuntimeUrl}): ${errorMessage}`);
91
- return [];
92
- }
93
- }
94
- async isHealthy() {
95
- try {
96
- const response = await axios_1.default.get(`${this.mcpRuntimeUrl}/tools/health/check`, {
97
- timeout: 3000,
98
- });
99
- return response.data.status === "ok";
100
- }
101
- catch (error) {
102
- this.logger.warn(`MCP runtime health check failed: ${error instanceof Error ? error.message : String(error)}`);
103
- return false;
104
- }
105
- }
106
- async getAvailableToolNames() {
107
- try {
108
- const response = await axios_1.default.get(`${this.mcpRuntimeUrl}/tools/list`, {
109
- timeout: 5000,
110
- });
111
- const tools = Array.isArray(response.data)
112
- ? response.data
113
- : [];
114
- return tools.map(tool => tool.name);
115
- }
116
- catch (error) {
117
- this.logger.warn(`Failed to fetch tool names: ${error instanceof Error ? error.message : String(error)}`);
118
- return [];
119
- }
120
- }
121
- }
122
- exports.McpToolFilter = McpToolFilter;
123
- //# sourceMappingURL=mcp-tool-filter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mcp-tool-filter.js","sourceRoot":"","sources":["../../src/tools/mcp-tool-filter.ts"],"names":[],"mappings":"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"}
@@ -1,19 +0,0 @@
1
- export interface McpTool {
2
- name: string;
3
- description: string;
4
- inputSchema: {
5
- type: "object";
6
- properties: Record<string, any>;
7
- required?: string[];
8
- };
9
- }
10
- export interface ToolExecutionResult {
11
- success: boolean;
12
- result?: any;
13
- error?: string;
14
- }
15
- export interface McpRuntimeClient {
16
- getTools(): Promise<McpTool[]>;
17
- executeTool(name: string, args: any): Promise<ToolExecutionResult>;
18
- isHealthy(): Promise<boolean>;
19
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=mcp.interfaces.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mcp.interfaces.js","sourceRoot":"","sources":["../../src/tools/mcp.interfaces.ts"],"names":[],"mappings":""}