langflow-mcp-server 1.0.1 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/README.md +114 -5
  2. package/dist/__tests__/fixtures/build.d.ts +12 -0
  3. package/dist/__tests__/fixtures/build.d.ts.map +1 -0
  4. package/dist/__tests__/fixtures/build.js +61 -0
  5. package/dist/__tests__/fixtures/build.js.map +1 -0
  6. package/dist/__tests__/fixtures/folders.d.ts +6 -0
  7. package/dist/__tests__/fixtures/folders.d.ts.map +1 -0
  8. package/dist/__tests__/fixtures/folders.js +30 -0
  9. package/dist/__tests__/fixtures/folders.js.map +1 -0
  10. package/dist/__tests__/fixtures/knowledge-bases.d.ts +22 -0
  11. package/dist/__tests__/fixtures/knowledge-bases.d.ts.map +1 -0
  12. package/dist/__tests__/fixtures/knowledge-bases.js +51 -0
  13. package/dist/__tests__/fixtures/knowledge-bases.js.map +1 -0
  14. package/dist/__tests__/fixtures/projects.d.ts +6 -0
  15. package/dist/__tests__/fixtures/projects.d.ts.map +1 -0
  16. package/dist/__tests__/fixtures/projects.js +27 -0
  17. package/dist/__tests__/fixtures/projects.js.map +1 -0
  18. package/dist/__tests__/fixtures/run.d.ts +26 -0
  19. package/dist/__tests__/fixtures/run.d.ts.map +1 -0
  20. package/dist/__tests__/fixtures/run.js +67 -0
  21. package/dist/__tests__/fixtures/run.js.map +1 -0
  22. package/dist/__tests__/fixtures/variables.d.ts +6 -0
  23. package/dist/__tests__/fixtures/variables.d.ts.map +1 -0
  24. package/dist/__tests__/fixtures/variables.js +33 -0
  25. package/dist/__tests__/fixtures/variables.js.map +1 -0
  26. package/dist/mcp/server.d.ts.map +1 -1
  27. package/dist/mcp/server.js +181 -3
  28. package/dist/mcp/server.js.map +1 -1
  29. package/dist/mcp/tools.d.ts.map +1 -1
  30. package/dist/mcp/tools.js +546 -0
  31. package/dist/mcp/tools.js.map +1 -1
  32. package/dist/mcp/validation.d.ts +158 -0
  33. package/dist/mcp/validation.d.ts.map +1 -1
  34. package/dist/mcp/validation.js +123 -1
  35. package/dist/mcp/validation.js.map +1 -1
  36. package/dist/services/langflow-client.d.ts +29 -1
  37. package/dist/services/langflow-client.d.ts.map +1 -1
  38. package/dist/services/langflow-client.js +253 -0
  39. package/dist/services/langflow-client.js.map +1 -1
  40. package/dist/types/index.d.ts +112 -0
  41. package/dist/types/index.d.ts.map +1 -1
  42. package/dist/utils/logger.d.ts +1 -0
  43. package/dist/utils/logger.d.ts.map +1 -1
  44. package/dist/utils/logger.js +7 -2
  45. package/dist/utils/logger.js.map +1 -1
  46. package/package.json +1 -2
package/README.md CHANGED
@@ -11,9 +11,14 @@ A Model Context Protocol (MCP) server that provides AI assistants with comprehen
11
11
 
12
12
  langflow-mcp-server serves as a bridge between Langflow's workflow automation platform and AI models, enabling them to understand and work with Langflow flows effectively. It provides structured access to:
13
13
 
14
- - **Flow Management** - Create, read, update, and delete Langflow flows
14
+ - **Flow Management** - Create, read, update, delete, and execute Langflow flows
15
+ - **Flow Execution** - Run flows with inputs and trigger webhooks
16
+ - **Build Operations** - Compile, validate, and monitor flow builds
17
+ - **Import/Export** - Upload and download flows and projects
18
+ - **Organization** - Manage folders and projects
19
+ - **Configuration** - Manage global variables
20
+ - **Knowledge Bases** - Manage RAG document collections
15
21
  - **Component Discovery** - List all available Langflow components
16
- - **Workflow Automation** - Integrate Langflow with AI assistants like Claude
17
22
 
18
23
  ## Quick Start
19
24
 
@@ -102,9 +107,9 @@ Restart Claude Desktop after updating configuration.
102
107
 
103
108
  ## Available MCP Tools
104
109
 
105
- Once connected, Claude can use these tools:
110
+ Once connected, Claude can use these 35 tools:
106
111
 
107
- ### Flow Management
112
+ ### Flow Management (6 tools)
108
113
  - **`create_flow`** - Create a new Langflow flow
109
114
  - **`list_flows`** - List all flows with pagination and filtering
110
115
  - **`get_flow`** - Get details of a specific flow by ID
@@ -112,7 +117,49 @@ Once connected, Claude can use these tools:
112
117
  - **`delete_flow`** - Delete a single flow
113
118
  - **`delete_flows`** - Delete multiple flows at once
114
119
 
115
- ### Component Discovery
120
+ ### Flow Execution (2 tools)
121
+ - **`run_flow`** - Execute a flow with input configuration (supports streaming)
122
+ - **`trigger_webhook`** - Trigger a flow via webhook endpoint
123
+
124
+ ### Import/Export (3 tools)
125
+ - **`upload_flow`** - Upload a flow from JSON data
126
+ - **`download_flows`** - Download multiple flows as JSON export
127
+ - **`get_basic_examples`** - Get pre-built example flows
128
+
129
+ ### Folder Management (5 tools)
130
+ - **`list_folders`** - List all folders with pagination
131
+ - **`create_folder`** - Create a new folder
132
+ - **`get_folder`** - Get folder details by ID
133
+ - **`update_folder`** - Update folder name, description, or parent
134
+ - **`delete_folder`** - Delete a folder
135
+
136
+ ### Project Management (7 tools)
137
+ - **`list_projects`** - List all projects with pagination
138
+ - **`create_project`** - Create a new project
139
+ - **`get_project`** - Get project details by ID
140
+ - **`update_project`** - Update project name or description
141
+ - **`delete_project`** - Delete a project
142
+ - **`upload_project`** - Upload a project from JSON data
143
+ - **`download_project`** - Download a project as JSON export
144
+
145
+ ### Variable Management (4 tools)
146
+ - **`list_variables`** - List all global variables
147
+ - **`create_variable`** - Create a new variable
148
+ - **`update_variable`** - Update variable properties
149
+ - **`delete_variable`** - Delete a variable
150
+
151
+ ### Build Operations (3 tools)
152
+ - **`build_flow`** - Build/compile a flow and return job_id for async execution
153
+ - **`get_build_status`** - Poll build status and events for a specific job
154
+ - **`cancel_build`** - Cancel a running build job
155
+
156
+ ### Knowledge Base Management (4 tools)
157
+ - **`list_knowledge_bases`** - List all available knowledge bases
158
+ - **`get_knowledge_base`** - Get detailed information about a specific knowledge base
159
+ - **`delete_knowledge_base`** - Delete a specific knowledge base
160
+ - **`bulk_delete_knowledge_bases`** - Delete multiple knowledge bases at once
161
+
162
+ ### Component Discovery (1 tool)
116
163
  - **`list_components`** - List all available Langflow components
117
164
 
118
165
  ## Example Usage
@@ -141,6 +188,68 @@ update_flow({
141
188
  name: "Updated Flow Name"
142
189
  })
143
190
 
191
+ // Execute a flow
192
+ run_flow({
193
+ flow_id_or_name: "my-flow-name",
194
+ input_request: {
195
+ input_value: "Hello World",
196
+ output_type: "chat",
197
+ input_type: "chat"
198
+ },
199
+ stream: false
200
+ })
201
+
202
+ // Trigger via webhook
203
+ trigger_webhook({
204
+ flow_id_or_name: "my-flow",
205
+ input_request: {
206
+ input_value: "Process this data"
207
+ }
208
+ })
209
+
210
+ // Build a flow (compile/validate)
211
+ build_flow({
212
+ flow_id: "flow-uuid-here",
213
+ log_builds: true,
214
+ event_delivery: "polling"
215
+ })
216
+
217
+ // Check build status
218
+ get_build_status({
219
+ job_id: "job-uuid-from-build",
220
+ event_delivery: "polling"
221
+ })
222
+
223
+ // List knowledge bases (RAG)
224
+ list_knowledge_bases()
225
+
226
+ // Get knowledge base details
227
+ get_knowledge_base({
228
+ kb_name: "my-documents"
229
+ })
230
+
231
+ // Create a folder
232
+ create_folder({
233
+ name: "My Flows",
234
+ description: "Organized flows"
235
+ })
236
+
237
+ // Create a project
238
+ create_project({
239
+ name: "My Project",
240
+ description: "Project description"
241
+ })
242
+
243
+ // Manage variables
244
+ create_variable({
245
+ name: "API_KEY",
246
+ value: "secret-key",
247
+ type: "string"
248
+ })
249
+
250
+ // Get basic examples
251
+ get_basic_examples()
252
+
144
253
  // List all components
145
254
  list_components()
146
255
  ```
@@ -0,0 +1,12 @@
1
+ import { BuildFlowRequest, BuildFlowParams, BuildFlowResponse, BuildStatusResponse, CancelBuildResponse } from '../../types';
2
+ export declare const mockBuildFlowRequest: BuildFlowRequest;
3
+ export declare const mockBuildFlowParams: BuildFlowParams;
4
+ export declare const mockMinimalBuildRequest: BuildFlowRequest;
5
+ export declare const mockMinimalBuildParams: BuildFlowParams;
6
+ export declare const mockBuildFlowResponse: BuildFlowResponse;
7
+ export declare const mockBuildStatusResponse: BuildStatusResponse;
8
+ export declare const mockCompletedBuildStatus: BuildStatusResponse;
9
+ export declare const mockFailedBuildStatus: BuildStatusResponse;
10
+ export declare const mockCancelBuildResponse: CancelBuildResponse;
11
+ export declare const mockCancelBuildAlreadyCompleted: CancelBuildResponse;
12
+ //# sourceMappingURL=build.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../../src/__tests__/fixtures/build.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAE7H,eAAO,MAAM,oBAAoB,EAAE,gBAUlC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,eAMjC,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,gBAAqB,CAAC;AAE5D,eAAO,MAAM,sBAAsB,EAAE,eAAoB,CAAC;AAE1D,eAAO,MAAM,qBAAqB,EAAE,iBAEnC,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,mBAMrC,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,mBAOtC,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,mBAQnC,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,mBAIrC,CAAC;AAEF,eAAO,MAAM,+BAA+B,EAAE,mBAI7C,CAAC"}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.mockCancelBuildAlreadyCompleted = exports.mockCancelBuildResponse = exports.mockFailedBuildStatus = exports.mockCompletedBuildStatus = exports.mockBuildStatusResponse = exports.mockBuildFlowResponse = exports.mockMinimalBuildParams = exports.mockMinimalBuildRequest = exports.mockBuildFlowParams = exports.mockBuildFlowRequest = void 0;
4
+ exports.mockBuildFlowRequest = {
5
+ inputs: {
6
+ input1: 'test value',
7
+ input2: 123
8
+ },
9
+ data: {
10
+ nodes: [],
11
+ edges: []
12
+ },
13
+ files: ['file1.txt', 'file2.json']
14
+ };
15
+ exports.mockBuildFlowParams = {
16
+ stop_component_id: '123e4567-e89b-12d3-a456-426614174010',
17
+ start_component_id: '123e4567-e89b-12d3-a456-426614174011',
18
+ log_builds: true,
19
+ flow_name: 'Test Build Flow',
20
+ event_delivery: 'polling'
21
+ };
22
+ exports.mockMinimalBuildRequest = {};
23
+ exports.mockMinimalBuildParams = {};
24
+ exports.mockBuildFlowResponse = {
25
+ job_id: 'job-123e4567-e89b-12d3-a456-426614174020'
26
+ };
27
+ exports.mockBuildStatusResponse = {
28
+ status: 'running',
29
+ progress: 50,
30
+ message: 'Building flow components',
31
+ job_id: 'job-123e4567-e89b-12d3-a456-426614174020',
32
+ started_at: '2024-01-01T10:00:00Z'
33
+ };
34
+ exports.mockCompletedBuildStatus = {
35
+ status: 'completed',
36
+ progress: 100,
37
+ message: 'Build completed successfully',
38
+ job_id: 'job-123e4567-e89b-12d3-a456-426614174020',
39
+ started_at: '2024-01-01T10:00:00Z',
40
+ completed_at: '2024-01-01T10:05:00Z'
41
+ };
42
+ exports.mockFailedBuildStatus = {
43
+ status: 'failed',
44
+ progress: 75,
45
+ message: 'Build failed due to validation error',
46
+ job_id: 'job-123e4567-e89b-12d3-a456-426614174020',
47
+ started_at: '2024-01-01T10:00:00Z',
48
+ failed_at: '2024-01-01T10:03:00Z',
49
+ error: 'Component validation failed'
50
+ };
51
+ exports.mockCancelBuildResponse = {
52
+ success: true,
53
+ message: 'Build job cancelled successfully',
54
+ cancelled: true
55
+ };
56
+ exports.mockCancelBuildAlreadyCompleted = {
57
+ success: false,
58
+ message: 'Cannot cancel completed build job',
59
+ cancelled: false
60
+ };
61
+ //# sourceMappingURL=build.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build.js","sourceRoot":"","sources":["../../../src/__tests__/fixtures/build.ts"],"names":[],"mappings":";;;AAEa,QAAA,oBAAoB,GAAqB;IACpD,MAAM,EAAE;QACN,MAAM,EAAE,YAAY;QACpB,MAAM,EAAE,GAAG;KACZ;IACD,IAAI,EAAE;QACJ,KAAK,EAAE,EAAE;QACT,KAAK,EAAE,EAAE;KACV;IACD,KAAK,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC;CACnC,CAAC;AAEW,QAAA,mBAAmB,GAAoB;IAClD,iBAAiB,EAAE,sCAAsC;IACzD,kBAAkB,EAAE,sCAAsC;IAC1D,UAAU,EAAE,IAAI;IAChB,SAAS,EAAE,iBAAiB;IAC5B,cAAc,EAAE,SAAS;CAC1B,CAAC;AAEW,QAAA,uBAAuB,GAAqB,EAAE,CAAC;AAE/C,QAAA,sBAAsB,GAAoB,EAAE,CAAC;AAE7C,QAAA,qBAAqB,GAAsB;IACtD,MAAM,EAAE,0CAA0C;CACnD,CAAC;AAEW,QAAA,uBAAuB,GAAwB;IAC1D,MAAM,EAAE,SAAS;IACjB,QAAQ,EAAE,EAAE;IACZ,OAAO,EAAE,0BAA0B;IACnC,MAAM,EAAE,0CAA0C;IAClD,UAAU,EAAE,sBAAsB;CACnC,CAAC;AAEW,QAAA,wBAAwB,GAAwB;IAC3D,MAAM,EAAE,WAAW;IACnB,QAAQ,EAAE,GAAG;IACb,OAAO,EAAE,8BAA8B;IACvC,MAAM,EAAE,0CAA0C;IAClD,UAAU,EAAE,sBAAsB;IAClC,YAAY,EAAE,sBAAsB;CACrC,CAAC;AAEW,QAAA,qBAAqB,GAAwB;IACxD,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,EAAE;IACZ,OAAO,EAAE,sCAAsC;IAC/C,MAAM,EAAE,0CAA0C;IAClD,UAAU,EAAE,sBAAsB;IAClC,SAAS,EAAE,sBAAsB;IACjC,KAAK,EAAE,6BAA6B;CACrC,CAAC;AAEW,QAAA,uBAAuB,GAAwB;IAC1D,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,kCAAkC;IAC3C,SAAS,EAAE,IAAI;CAChB,CAAC;AAEW,QAAA,+BAA+B,GAAwB;IAClE,OAAO,EAAE,KAAK;IACd,OAAO,EAAE,mCAAmC;IAC5C,SAAS,EAAE,KAAK;CACjB,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { FolderRead, FolderCreate, FolderUpdate } from '../../types';
2
+ export declare const mockFolderCreate: FolderCreate;
3
+ export declare const mockFolderRead: FolderRead;
4
+ export declare const mockFolderUpdate: FolderUpdate;
5
+ export declare const mockFoldersList: FolderRead[];
6
+ //# sourceMappingURL=folders.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"folders.d.ts","sourceRoot":"","sources":["../../../src/__tests__/fixtures/folders.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAErE,eAAO,MAAM,gBAAgB,EAAE,YAI9B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,UAO5B,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,YAG9B,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,UAAU,EAQvC,CAAC"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.mockFoldersList = exports.mockFolderUpdate = exports.mockFolderRead = exports.mockFolderCreate = void 0;
4
+ exports.mockFolderCreate = {
5
+ name: 'Test Folder',
6
+ description: 'A test folder for unit testing',
7
+ parent_id: '123e4567-e89b-12d3-a456-426614174000'
8
+ };
9
+ exports.mockFolderRead = {
10
+ id: '123e4567-e89b-12d3-a456-426614174001',
11
+ name: 'Test Folder',
12
+ description: 'A test folder for unit testing',
13
+ parent_id: '123e4567-e89b-12d3-a456-426614174000',
14
+ created_at: '2024-01-01T00:00:00Z',
15
+ updated_at: '2024-01-01T00:00:00Z'
16
+ };
17
+ exports.mockFolderUpdate = {
18
+ name: 'Updated Folder',
19
+ description: 'Updated description'
20
+ };
21
+ exports.mockFoldersList = [
22
+ exports.mockFolderRead,
23
+ {
24
+ ...exports.mockFolderRead,
25
+ id: '123e4567-e89b-12d3-a456-426614174002',
26
+ name: 'Test Folder 2',
27
+ parent_id: undefined
28
+ }
29
+ ];
30
+ //# sourceMappingURL=folders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"folders.js","sourceRoot":"","sources":["../../../src/__tests__/fixtures/folders.ts"],"names":[],"mappings":";;;AAEa,QAAA,gBAAgB,GAAiB;IAC5C,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE,gCAAgC;IAC7C,SAAS,EAAE,sCAAsC;CAClD,CAAC;AAEW,QAAA,cAAc,GAAe;IACxC,EAAE,EAAE,sCAAsC;IAC1C,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE,gCAAgC;IAC7C,SAAS,EAAE,sCAAsC;IACjD,UAAU,EAAE,sBAAsB;IAClC,UAAU,EAAE,sBAAsB;CACnC,CAAC;AAEW,QAAA,gBAAgB,GAAiB;IAC5C,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE,qBAAqB;CACnC,CAAC;AAEW,QAAA,eAAe,GAAiB;IAC3C,sBAAc;IACd;QACE,GAAG,sBAAc;QACjB,EAAE,EAAE,sCAAsC;QAC1C,IAAI,EAAE,eAAe;QACrB,SAAS,EAAE,SAAS;KACrB;CACF,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { KnowledgeBaseInfo } from '../../types';
2
+ export declare const mockKnowledgeBaseInfo: KnowledgeBaseInfo;
3
+ export declare const mockKnowledgeBasesList: KnowledgeBaseInfo[];
4
+ export declare const mockEmptyKnowledgeBasesList: KnowledgeBaseInfo[];
5
+ export declare const mockBulkDeleteResponse: {
6
+ deleted: number;
7
+ failed: number;
8
+ errors: never[];
9
+ };
10
+ export declare const mockPartialBulkDeleteResponse: {
11
+ deleted: number;
12
+ failed: number;
13
+ errors: {
14
+ kb_name: string;
15
+ error: string;
16
+ }[];
17
+ };
18
+ export declare const mockDeleteResponse: {
19
+ success: boolean;
20
+ message: string;
21
+ };
22
+ //# sourceMappingURL=knowledge-bases.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"knowledge-bases.d.ts","sourceRoot":"","sources":["../../../src/__tests__/fixtures/knowledge-bases.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD,eAAO,MAAM,qBAAqB,EAAE,iBAOnC,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,iBAAiB,EAkBrD,CAAC;AAEF,eAAO,MAAM,2BAA2B,EAAE,iBAAiB,EAAO,CAAC;AAEnE,eAAO,MAAM,sBAAsB;;;;CAIlC,CAAC;AAEF,eAAO,MAAM,6BAA6B;;;;;;;CASzC,CAAC;AAEF,eAAO,MAAM,kBAAkB;;;CAG9B,CAAC"}
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.mockDeleteResponse = exports.mockPartialBulkDeleteResponse = exports.mockBulkDeleteResponse = exports.mockEmptyKnowledgeBasesList = exports.mockKnowledgeBasesList = exports.mockKnowledgeBaseInfo = void 0;
4
+ exports.mockKnowledgeBaseInfo = {
5
+ name: 'test-kb',
6
+ description: 'Test Knowledge Base',
7
+ created_at: '2024-01-01T00:00:00Z',
8
+ updated_at: '2024-01-01T00:00:00Z',
9
+ documents_count: 10,
10
+ size_bytes: 1024000
11
+ };
12
+ exports.mockKnowledgeBasesList = [
13
+ exports.mockKnowledgeBaseInfo,
14
+ {
15
+ name: 'production-kb',
16
+ description: 'Production Knowledge Base',
17
+ created_at: '2024-01-02T00:00:00Z',
18
+ updated_at: '2024-01-02T00:00:00Z',
19
+ documents_count: 50,
20
+ size_bytes: 5120000
21
+ },
22
+ {
23
+ name: 'dev-kb',
24
+ description: 'Development Knowledge Base',
25
+ created_at: '2024-01-03T00:00:00Z',
26
+ updated_at: '2024-01-03T00:00:00Z',
27
+ documents_count: 5,
28
+ size_bytes: 512000
29
+ }
30
+ ];
31
+ exports.mockEmptyKnowledgeBasesList = [];
32
+ exports.mockBulkDeleteResponse = {
33
+ deleted: 2,
34
+ failed: 0,
35
+ errors: []
36
+ };
37
+ exports.mockPartialBulkDeleteResponse = {
38
+ deleted: 1,
39
+ failed: 1,
40
+ errors: [
41
+ {
42
+ kb_name: 'non-existent-kb',
43
+ error: 'Knowledge base not found'
44
+ }
45
+ ]
46
+ };
47
+ exports.mockDeleteResponse = {
48
+ success: true,
49
+ message: 'Knowledge base deleted successfully'
50
+ };
51
+ //# sourceMappingURL=knowledge-bases.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"knowledge-bases.js","sourceRoot":"","sources":["../../../src/__tests__/fixtures/knowledge-bases.ts"],"names":[],"mappings":";;;AAEa,QAAA,qBAAqB,GAAsB;IACtD,IAAI,EAAE,SAAS;IACf,WAAW,EAAE,qBAAqB;IAClC,UAAU,EAAE,sBAAsB;IAClC,UAAU,EAAE,sBAAsB;IAClC,eAAe,EAAE,EAAE;IACnB,UAAU,EAAE,OAAO;CACpB,CAAC;AAEW,QAAA,sBAAsB,GAAwB;IACzD,6BAAqB;IACrB;QACE,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,2BAA2B;QACxC,UAAU,EAAE,sBAAsB;QAClC,UAAU,EAAE,sBAAsB;QAClC,eAAe,EAAE,EAAE;QACnB,UAAU,EAAE,OAAO;KACpB;IACD;QACE,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,4BAA4B;QACzC,UAAU,EAAE,sBAAsB;QAClC,UAAU,EAAE,sBAAsB;QAClC,eAAe,EAAE,CAAC;QAClB,UAAU,EAAE,MAAM;KACnB;CACF,CAAC;AAEW,QAAA,2BAA2B,GAAwB,EAAE,CAAC;AAEtD,QAAA,sBAAsB,GAAG;IACpC,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,CAAC;IACT,MAAM,EAAE,EAAE;CACX,CAAC;AAEW,QAAA,6BAA6B,GAAG;IAC3C,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,CAAC;IACT,MAAM,EAAE;QACN;YACE,OAAO,EAAE,iBAAiB;YAC1B,KAAK,EAAE,0BAA0B;SAClC;KACF;CACF,CAAC;AAEW,QAAA,kBAAkB,GAAG;IAChC,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,qCAAqC;CAC/C,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { ProjectRead, ProjectCreate, ProjectUpdate } from '../../types';
2
+ export declare const mockProjectCreate: ProjectCreate;
3
+ export declare const mockProjectRead: ProjectRead;
4
+ export declare const mockProjectUpdate: ProjectUpdate;
5
+ export declare const mockProjectsList: ProjectRead[];
6
+ //# sourceMappingURL=projects.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projects.d.ts","sourceRoot":"","sources":["../../../src/__tests__/fixtures/projects.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAExE,eAAO,MAAM,iBAAiB,EAAE,aAG/B,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,WAM7B,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,aAG/B,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,WAAW,EAOzC,CAAC"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.mockProjectsList = exports.mockProjectUpdate = exports.mockProjectRead = exports.mockProjectCreate = void 0;
4
+ exports.mockProjectCreate = {
5
+ name: 'Test Project',
6
+ description: 'A test project for unit testing'
7
+ };
8
+ exports.mockProjectRead = {
9
+ id: '123e4567-e89b-12d3-a456-426614174001',
10
+ name: 'Test Project',
11
+ description: 'A test project for unit testing',
12
+ created_at: '2024-01-01T00:00:00Z',
13
+ updated_at: '2024-01-01T00:00:00Z'
14
+ };
15
+ exports.mockProjectUpdate = {
16
+ name: 'Updated Project',
17
+ description: 'Updated description'
18
+ };
19
+ exports.mockProjectsList = [
20
+ exports.mockProjectRead,
21
+ {
22
+ ...exports.mockProjectRead,
23
+ id: '123e4567-e89b-12d3-a456-426614174002',
24
+ name: 'Test Project 2'
25
+ }
26
+ ];
27
+ //# sourceMappingURL=projects.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projects.js","sourceRoot":"","sources":["../../../src/__tests__/fixtures/projects.ts"],"names":[],"mappings":";;;AAEa,QAAA,iBAAiB,GAAkB;IAC9C,IAAI,EAAE,cAAc;IACpB,WAAW,EAAE,iCAAiC;CAC/C,CAAC;AAEW,QAAA,eAAe,GAAgB;IAC1C,EAAE,EAAE,sCAAsC;IAC1C,IAAI,EAAE,cAAc;IACpB,WAAW,EAAE,iCAAiC;IAC9C,UAAU,EAAE,sBAAsB;IAClC,UAAU,EAAE,sBAAsB;CACnC,CAAC;AAEW,QAAA,iBAAiB,GAAkB;IAC9C,IAAI,EAAE,iBAAiB;IACvB,WAAW,EAAE,qBAAqB;CACnC,CAAC;AAEW,QAAA,gBAAgB,GAAkB;IAC7C,uBAAe;IACf;QACE,GAAG,uBAAe;QAClB,EAAE,EAAE,sCAAsC;QAC1C,IAAI,EAAE,gBAAgB;KACvB;CACF,CAAC"}
@@ -0,0 +1,26 @@
1
+ import { RunFlowRequest, RunResponse, SimplifiedAPIRequest } from '../../types';
2
+ export declare const mockRunFlowRequest: RunFlowRequest;
3
+ export declare const mockRunResponse: RunResponse;
4
+ export declare const mockWebhookRequest: SimplifiedAPIRequest;
5
+ export declare const mockWebhookResponse: {
6
+ result: string;
7
+ data: {
8
+ message: string;
9
+ };
10
+ };
11
+ export declare const mockUploadFile: {
12
+ name: string;
13
+ content: string;
14
+ };
15
+ export declare const mockDownloadResponse: {
16
+ flows: {
17
+ id: string;
18
+ name: string;
19
+ data: {
20
+ nodes: never[];
21
+ edges: never[];
22
+ };
23
+ }[];
24
+ format: string;
25
+ };
26
+ //# sourceMappingURL=run.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../src/__tests__/fixtures/run.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEhF,eAAO,MAAM,kBAAkB,EAAE,cAShC,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,WAoB7B,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,oBAOhC,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;;;CAK/B,CAAC;AAEF,eAAO,MAAM,cAAc;;;CAO1B,CAAC;AAEF,eAAO,MAAM,oBAAoB;;;;;;;;;;CAShC,CAAC"}
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.mockDownloadResponse = exports.mockUploadFile = exports.mockWebhookResponse = exports.mockWebhookRequest = exports.mockRunResponse = exports.mockRunFlowRequest = void 0;
4
+ exports.mockRunFlowRequest = {
5
+ input_value: 'test input',
6
+ output_type: 'chat',
7
+ input_type: 'text',
8
+ tweaks: {
9
+ 'component-1': {
10
+ parameter: 'value'
11
+ }
12
+ }
13
+ };
14
+ exports.mockRunResponse = {
15
+ session_id: 'session-123',
16
+ outputs: [
17
+ {
18
+ inputs: { input: 'test input' },
19
+ outputs: [
20
+ {
21
+ results: {
22
+ message: {
23
+ text: 'test output'
24
+ }
25
+ },
26
+ artifacts: {},
27
+ messages: [],
28
+ component_display_name: 'ChatOutput',
29
+ component_id: 'ChatOutput-123'
30
+ }
31
+ ]
32
+ }
33
+ ]
34
+ };
35
+ exports.mockWebhookRequest = {
36
+ input_value: 'webhook test input',
37
+ tweaks: {
38
+ 'component-1': {
39
+ parameter: 'value'
40
+ }
41
+ }
42
+ };
43
+ exports.mockWebhookResponse = {
44
+ result: 'success',
45
+ data: {
46
+ message: 'Webhook triggered successfully'
47
+ }
48
+ };
49
+ exports.mockUploadFile = {
50
+ name: 'test-flow.json',
51
+ content: JSON.stringify({
52
+ name: 'Uploaded Flow',
53
+ description: 'Flow from upload',
54
+ data: { nodes: [], edges: [] }
55
+ })
56
+ };
57
+ exports.mockDownloadResponse = {
58
+ flows: [
59
+ {
60
+ id: '123e4567-e89b-12d3-a456-426614174001',
61
+ name: 'Flow 1',
62
+ data: { nodes: [], edges: [] }
63
+ }
64
+ ],
65
+ format: 'json'
66
+ };
67
+ //# sourceMappingURL=run.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../../src/__tests__/fixtures/run.ts"],"names":[],"mappings":";;;AAEa,QAAA,kBAAkB,GAAmB;IAChD,WAAW,EAAE,YAAY;IACzB,WAAW,EAAE,MAAM;IACnB,UAAU,EAAE,MAAM;IAClB,MAAM,EAAE;QACN,aAAa,EAAE;YACb,SAAS,EAAE,OAAO;SACnB;KACF;CACF,CAAC;AAEW,QAAA,eAAe,GAAgB;IAC1C,UAAU,EAAE,aAAa;IACzB,OAAO,EAAE;QACP;YACE,MAAM,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE;YAC/B,OAAO,EAAE;gBACP;oBACE,OAAO,EAAE;wBACP,OAAO,EAAE;4BACP,IAAI,EAAE,aAAa;yBACpB;qBACF;oBACD,SAAS,EAAE,EAAE;oBACb,QAAQ,EAAE,EAAE;oBACZ,sBAAsB,EAAE,YAAY;oBACpC,YAAY,EAAE,gBAAgB;iBAC/B;aACF;SACF;KACF;CACF,CAAC;AAEW,QAAA,kBAAkB,GAAyB;IACtD,WAAW,EAAE,oBAAoB;IACjC,MAAM,EAAE;QACN,aAAa,EAAE;YACb,SAAS,EAAE,OAAO;SACnB;KACF;CACF,CAAC;AAEW,QAAA,mBAAmB,GAAG;IACjC,MAAM,EAAE,SAAS;IACjB,IAAI,EAAE;QACJ,OAAO,EAAE,gCAAgC;KAC1C;CACF,CAAC;AAEW,QAAA,cAAc,GAAG;IAC5B,IAAI,EAAE,gBAAgB;IACtB,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC;QACtB,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,kBAAkB;QAC/B,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;KAC/B,CAAC;CACH,CAAC;AAEW,QAAA,oBAAoB,GAAG;IAClC,KAAK,EAAE;QACL;YACE,EAAE,EAAE,sCAAsC;YAC1C,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;SAC/B;KACF;IACD,MAAM,EAAE,MAAM;CACf,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { VariableRead, VariableCreate, VariableUpdate } from '../../types';
2
+ export declare const mockVariableCreate: VariableCreate;
3
+ export declare const mockVariableRead: VariableRead;
4
+ export declare const mockVariableUpdate: VariableUpdate;
5
+ export declare const mockVariablesList: VariableRead[];
6
+ //# sourceMappingURL=variables.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"variables.d.ts","sourceRoot":"","sources":["../../../src/__tests__/fixtures/variables.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE3E,eAAO,MAAM,kBAAkB,EAAE,cAKhC,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,YAQ9B,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,cAIhC,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,YAAY,EAQ3C,CAAC"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.mockVariablesList = exports.mockVariableUpdate = exports.mockVariableRead = exports.mockVariableCreate = void 0;
4
+ exports.mockVariableCreate = {
5
+ name: 'TEST_VAR',
6
+ value: 'test_value',
7
+ type: 'string',
8
+ default_fields: ['field1', 'field2']
9
+ };
10
+ exports.mockVariableRead = {
11
+ id: '123e4567-e89b-12d3-a456-426614174001',
12
+ name: 'TEST_VAR',
13
+ value: 'test_value',
14
+ type: 'string',
15
+ default_fields: ['field1', 'field2'],
16
+ created_at: '2024-01-01T00:00:00Z',
17
+ updated_at: '2024-01-01T00:00:00Z'
18
+ };
19
+ exports.mockVariableUpdate = {
20
+ name: 'UPDATED_VAR',
21
+ value: 'updated_value',
22
+ type: 'string'
23
+ };
24
+ exports.mockVariablesList = [
25
+ exports.mockVariableRead,
26
+ {
27
+ ...exports.mockVariableRead,
28
+ id: '123e4567-e89b-12d3-a456-426614174002',
29
+ name: 'TEST_VAR_2',
30
+ value: 'test_value_2'
31
+ }
32
+ ];
33
+ //# sourceMappingURL=variables.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"variables.js","sourceRoot":"","sources":["../../../src/__tests__/fixtures/variables.ts"],"names":[],"mappings":";;;AAEa,QAAA,kBAAkB,GAAmB;IAChD,IAAI,EAAE,UAAU;IAChB,KAAK,EAAE,YAAY;IACnB,IAAI,EAAE,QAAQ;IACd,cAAc,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;CACrC,CAAC;AAEW,QAAA,gBAAgB,GAAiB;IAC5C,EAAE,EAAE,sCAAsC;IAC1C,IAAI,EAAE,UAAU;IAChB,KAAK,EAAE,YAAY;IACnB,IAAI,EAAE,QAAQ;IACd,cAAc,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACpC,UAAU,EAAE,sBAAsB;IAClC,UAAU,EAAE,sBAAsB;CACnC,CAAC;AAEW,QAAA,kBAAkB,GAAmB;IAChD,IAAI,EAAE,aAAa;IACnB,KAAK,EAAE,eAAe;IACtB,IAAI,EAAE,QAAQ;CACf,CAAC;AAEW,QAAA,iBAAiB,GAAmB;IAC/C,wBAAgB;IAChB;QACE,GAAG,wBAAgB;QACnB,EAAE,EAAE,sCAAsC;QAC1C,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,cAAc;KACtB;CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AAqBA,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAA+B;;IAmC7C,OAAO,CAAC,qBAAqB;IAW7B,OAAO,CAAC,mBAAmB;IAwC3B,OAAO,CAAC,aAAa;IA4Ef,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;IAMpB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAIhC"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AAmDA,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAA+B;;IAwD7C,OAAO,CAAC,qBAAqB;IAW7B,OAAO,CAAC,mBAAmB;IA0C3B,OAAO,CAAC,aAAa;IAkRf,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;IAMpB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAIhC"}