flowengine-mcp-app 1.2.1 → 2.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/build/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  /**
3
- * FlowEngine MCP Server
3
+ * FlowEngine MCP Server - Modern MCP Apps Implementation
4
4
  * Manage your white-label automation platform from Claude
5
5
  *
6
6
  * Core Features:
package/build/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  /**
3
- * FlowEngine MCP Server
3
+ * FlowEngine MCP Server - Modern MCP Apps Implementation
4
4
  * Manage your white-label automation platform from Claude
5
5
  *
6
6
  * Core Features:
@@ -8,12 +8,13 @@
8
8
  * 2. Client Portals - Monitor and access client portals
9
9
  * 3. AI FlowBuilder - Create forms, chatbots, and UI components
10
10
  */
11
- import { Server } from '@modelcontextprotocol/sdk/server/index.js';
11
+ import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
12
12
  import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
13
- import { CallToolRequestSchema, ListResourcesRequestSchema, ListToolsRequestSchema, ReadResourceRequestSchema, } from '@modelcontextprotocol/sdk/types.js';
13
+ import { registerAppTool, registerAppResource, RESOURCE_MIME_TYPE } from '@modelcontextprotocol/ext-apps/server';
14
+ import { z } from 'zod';
14
15
  import { FlowEngineClient } from './client.js';
15
- import { renderUnifiedDashboard, renderPortalDetails as renderUnifiedPortalDetails } from './ui/dashboard.js';
16
- import { renderWidgetBuilder, renderWidgetDetails } from './ui/widgets.js';
16
+ import { renderUnifiedDashboard } from './ui/dashboard.js';
17
+ import { renderWidgetBuilder } from './ui/widgets.js';
17
18
  import { renderN8nViewer } from './ui/n8n-viewer.js';
18
19
  import { renderComponentViewer } from './ui/component-viewer.js';
19
20
  import { renderError } from './ui/base.js';
@@ -31,9 +32,10 @@ function ensureClient() {
31
32
  }
32
33
  return flowengine;
33
34
  }
34
- const server = new Server({
35
+ // Initialize MCP Server with modern API
36
+ const server = new McpServer({
35
37
  name: 'flowengine-mcp',
36
- version: '1.0.0',
38
+ version: '2.0.1',
37
39
  }, {
38
40
  capabilities: {
39
41
  resources: {},
@@ -41,473 +43,297 @@ const server = new Server({
41
43
  },
42
44
  });
43
45
  /**
44
- * Interactive UI Resources (MCP Apps)
45
- *
46
- * How to use UI resources:
47
- * 1. Ask Claude: "Show me the FlowEngine client portals dashboard"
48
- * 2. Ask Claude: "Show me the AI FlowBuilder"
49
- * 3. Ask Claude: "Show me my FlowEngine instances"
50
- *
51
- * These commands will display interactive HTML dashboards.
52
- * If UI resources don't work, use the regular tools:
53
- * - flowengine_list_portals
54
- * - flowengine_list_components
55
- * - flowengine_list_instances
46
+ * ===========================
47
+ * APP RESOURCES (UI Components)
48
+ * ===========================
56
49
  */
57
- server.setRequestHandler(ListResourcesRequestSchema, async () => {
50
+ // Dashboard Resource (Portals + Instances)
51
+ registerAppResource(server, 'FlowEngine Dashboard', 'ui://flowengine/dashboard', {
52
+ description: 'INTERACTIVE UI APP: Shows live dashboard with all portals, instances, storage stats, and management controls. USE THIS UI when user asks for: dashboard, portals, instances, client accounts, portal management, or "show me FlowEngine". This provides a rich visual interface instead of JSON data.',
53
+ }, async () => {
54
+ try {
55
+ const portals = await ensureClient().getClientInstances();
56
+ const html = renderUnifiedDashboard(portals);
57
+ return {
58
+ contents: [{
59
+ uri: 'ui://flowengine/dashboard',
60
+ mimeType: RESOURCE_MIME_TYPE,
61
+ text: html,
62
+ }],
63
+ };
64
+ }
65
+ catch (error) {
66
+ const html = renderError(error.message || 'Failed to load dashboard');
67
+ return {
68
+ contents: [{
69
+ uri: 'ui://flowengine/dashboard',
70
+ mimeType: RESOURCE_MIME_TYPE,
71
+ text: html,
72
+ }],
73
+ };
74
+ }
75
+ });
76
+ // n8n Workflow Viewer Resource
77
+ registerAppResource(server, 'n8n Workflow Viewer', 'ui://flowengine/workflow-viewer', {
78
+ description: 'INTERACTIVE UI APP: Full-screen n8n workflow visualization with interactive demo. USE THIS UI when user asks to: view workflow, show n8n workflow, visualize automation, or preview workflow. Shows live workflow editor with share/export capabilities.',
79
+ }, async () => {
80
+ const html = renderN8nViewer();
58
81
  return {
59
- resources: [
60
- {
61
- uri: 'ui://flowengine/dashboard',
62
- name: 'FlowEngine Dashboard',
63
- description: 'INTERACTIVE UI APP: Shows live dashboard with all portals, instances, storage stats, and management controls. USE THIS UI when user asks for: dashboard, portals, instances, client accounts, portal management, or "show me FlowEngine". This provides a rich visual interface instead of JSON data.',
64
- mimeType: 'text/html;profile=mcp-app',
65
- },
66
- {
82
+ contents: [{
67
83
  uri: 'ui://flowengine/workflow-viewer',
68
- name: 'n8n Workflow Viewer',
69
- description: 'INTERACTIVE UI APP: Full-screen n8n workflow visualization with interactive demo. USE THIS UI when user asks to: view workflow, show n8n workflow, visualize automation, or preview workflow. Shows live workflow editor with share/export capabilities.',
70
- mimeType: 'text/html;profile=mcp-app',
71
- },
72
- {
84
+ mimeType: RESOURCE_MIME_TYPE,
85
+ text: html,
86
+ }],
87
+ };
88
+ });
89
+ // UI Component Viewer Resource
90
+ registerAppResource(server, 'UI Component Viewer', 'ui://flowengine/component-viewer', {
91
+ description: 'INTERACTIVE UI APP: Live preview of forms, chatbots, widgets and UI components. USE THIS UI when user asks to: preview component, show chatbot, view form, see widget, or display UI component. Interactive preview with embed codes.',
92
+ }, async () => {
93
+ const html = renderComponentViewer();
94
+ return {
95
+ contents: [{
73
96
  uri: 'ui://flowengine/component-viewer',
74
- name: 'UI Component Viewer',
75
- description: 'INTERACTIVE UI APP: Live preview of forms, chatbots, widgets and UI components. USE THIS UI when user asks to: preview component, show chatbot, view form, see widget, or display UI component. Interactive preview with embed codes.',
76
- mimeType: 'text/html;profile=mcp-app',
77
- },
78
- {
79
- uri: 'ui://flowengine/ui-builder',
80
- name: 'AI FlowBuilder Dashboard',
81
- description: 'INTERACTIVE UI APP: Dashboard for building and managing all UI components (forms, chatbots, widgets). USE THIS UI when user asks for: UI builder, component builder, create form, build chatbot, or manage components. Shows component gallery with creation tools.',
82
- mimeType: 'text/html;profile=mcp-app',
83
- },
84
- ],
97
+ mimeType: RESOURCE_MIME_TYPE,
98
+ text: html,
99
+ }],
85
100
  };
86
101
  });
87
- /**
88
- * Render Resources
89
- */
90
- server.setRequestHandler(ReadResourceRequestSchema, async (request) => {
91
- const uri = request.params.uri;
102
+ // AI FlowBuilder Dashboard Resource
103
+ registerAppResource(server, 'AI FlowBuilder Dashboard', 'ui://flowengine/ui-builder', {
104
+ description: 'INTERACTIVE UI APP: Dashboard for building and managing all UI components (forms, chatbots, widgets). USE THIS UI when user asks for: UI builder, component builder, create form, build chatbot, or manage components. Shows component gallery with creation tools.',
105
+ }, async () => {
92
106
  try {
93
- // Unified Dashboard (Portals + Instances)
94
- if (uri === 'ui://flowengine/dashboard') {
95
- const portals = await ensureClient().getClientInstances();
96
- const html = renderUnifiedDashboard(portals);
97
- return {
98
- contents: [{ uri, mimeType: 'text/html;profile=mcp-app', text: html }],
99
- };
100
- }
101
- // n8n Workflow Viewer
102
- if (uri === 'ui://flowengine/workflow-viewer') {
103
- // Default empty workflow - can be passed workflow data from MCP
104
- const html = renderN8nViewer();
105
- return {
106
- contents: [{ uri, mimeType: 'text/html;profile=mcp-app', text: html }],
107
- };
108
- }
109
- // UI Component Viewer
110
- if (uri === 'ui://flowengine/component-viewer') {
111
- // Default empty component - can be passed component data from MCP
112
- const html = renderComponentViewer();
113
- return {
114
- contents: [{ uri, mimeType: 'text/html;profile=mcp-app', text: html }],
115
- };
116
- }
117
- // Portal/Instance Details
118
- if (uri.startsWith('ui://flowengine/portal/')) {
119
- const portalId = uri.split('/').pop() || '';
120
- const portals = await ensureClient().getClientInstances();
121
- const portal = portals.find((p) => p.id === portalId);
122
- if (!portal) {
123
- throw new Error('Portal not found');
124
- }
125
- const html = renderUnifiedPortalDetails(portal);
126
- return {
127
- contents: [{ uri, mimeType: 'text/html;profile=mcp-app', text: html }],
128
- };
129
- }
130
- // AI FlowBuilder (UI Components)
131
- if (uri === 'ui://flowengine/ui-builder') {
132
- const widgets = await ensureClient().getWidgets();
133
- const html = renderWidgetBuilder(widgets);
134
- return {
135
- contents: [{ uri, mimeType: 'text/html;profile=mcp-app', text: html }],
136
- };
137
- }
138
- // Widget Details
139
- if (uri.startsWith('ui://flowengine/widget/')) {
140
- const widgetId = uri.split('/').pop() || '';
141
- const widget = await ensureClient().getWidget(widgetId);
142
- const html = renderWidgetDetails(widget);
143
- return {
144
- contents: [{ uri, mimeType: 'text/html;profile=mcp-app', text: html }],
145
- };
146
- }
147
- throw new Error(`Unknown resource: ${uri}`);
107
+ const widgets = await ensureClient().getWidgets();
108
+ const html = renderWidgetBuilder(widgets);
109
+ return {
110
+ contents: [{
111
+ uri: 'ui://flowengine/ui-builder',
112
+ mimeType: RESOURCE_MIME_TYPE,
113
+ text: html,
114
+ }],
115
+ };
148
116
  }
149
117
  catch (error) {
150
- const html = renderError(error.message || 'An error occurred');
118
+ const html = renderError(error.message || 'Failed to load UI builder');
151
119
  return {
152
- contents: [{ uri, mimeType: 'text/html;profile=mcp-app', text: html }],
120
+ contents: [{
121
+ uri: 'ui://flowengine/ui-builder',
122
+ mimeType: RESOURCE_MIME_TYPE,
123
+ text: html,
124
+ }],
153
125
  };
154
126
  }
155
127
  });
156
128
  /**
157
- * Available Tools
129
+ * ===========================
130
+ * TOOLS WITH UI (MCP Apps)
131
+ * ===========================
158
132
  */
159
- server.setRequestHandler(ListToolsRequestSchema, async () => {
133
+ // Instance Management - List with UI
134
+ registerAppTool(server, 'flowengine_list_instances', {
135
+ description: 'Show the FlowEngine Dashboard with interactive UI displaying all portals, instances, storage stats, and management controls. Use this when user wants to see the dashboard, view portals, check instances, or get an overview of FlowEngine. Renders a visual dashboard interface instead of JSON.',
136
+ inputSchema: z.object({}),
137
+ _meta: {
138
+ ui: {
139
+ resourceUri: 'ui://flowengine/dashboard',
140
+ },
141
+ },
142
+ }, async () => {
143
+ const instances = await ensureClient().getInstances();
144
+ return {
145
+ content: [{
146
+ type: 'text',
147
+ text: JSON.stringify(instances, null, 2),
148
+ }],
149
+ };
150
+ });
151
+ // Portal Management - List with UI
152
+ registerAppTool(server, 'flowengine_list_portals', {
153
+ description: 'Show the FlowEngine Dashboard with interactive UI displaying all client portals, instances, and management controls. Use this when user wants to see portals, view client accounts, check portal status, or manage portals. Renders a visual dashboard interface instead of JSON.',
154
+ inputSchema: z.object({}),
155
+ _meta: {
156
+ ui: {
157
+ resourceUri: 'ui://flowengine/dashboard',
158
+ },
159
+ },
160
+ }, async () => {
161
+ const portals = await ensureClient().getClientInstances();
160
162
  return {
161
- tools: [
162
- // Instance Management Tools
163
- {
164
- name: 'flowengine_list_instances',
165
- description: 'Show the FlowEngine Dashboard with interactive UI displaying all portals, instances, storage stats, and management controls. Use this when user wants to see the dashboard, view portals, check instances, or get an overview of FlowEngine. Renders a visual dashboard interface instead of JSON.',
166
- inputSchema: {
167
- type: 'object',
168
- properties: {},
169
- },
170
- _meta: {
171
- ui: {
172
- resourceUri: 'ui://flowengine/dashboard',
173
- },
174
- },
175
- },
176
- {
177
- name: 'flowengine_get_instance_status',
178
- description: 'Get health and status information for a specific instance',
179
- inputSchema: {
180
- type: 'object',
181
- properties: {
182
- instanceId: {
183
- type: 'string',
184
- description: 'The instance ID to check',
185
- },
186
- },
187
- required: ['instanceId'],
188
- },
189
- },
190
- {
191
- name: 'flowengine_create_instance',
192
- description: 'Provision a new FlowEngine instance for a client',
193
- inputSchema: {
194
- type: 'object',
195
- properties: {
196
- data: {
197
- type: 'object',
198
- description: 'Instance configuration with client info and settings',
199
- },
200
- },
201
- required: ['data'],
202
- },
203
- },
204
- {
205
- name: 'flowengine_update_instance',
206
- description: 'Update instance settings and configuration',
207
- inputSchema: {
208
- type: 'object',
209
- properties: {
210
- data: {
211
- type: 'object',
212
- description: 'Updated instance configuration',
213
- },
214
- },
215
- required: ['data'],
216
- },
217
- },
218
- {
219
- name: 'flowengine_delete_instance',
220
- description: 'Permanently delete a FlowEngine instance',
221
- inputSchema: {
222
- type: 'object',
223
- properties: {
224
- instanceId: {
225
- type: 'string',
226
- description: 'The instance ID to delete',
227
- },
228
- },
229
- required: ['instanceId'],
230
- },
231
- },
232
- // Portal Tools
233
- {
234
- name: 'flowengine_list_portals',
235
- description: 'Show the FlowEngine Dashboard with interactive UI displaying all client portals, instances, and management controls. Use this when user wants to see portals, view client accounts, check portal status, or manage portals. Renders a visual dashboard interface instead of JSON.',
236
- inputSchema: {
237
- type: 'object',
238
- properties: {},
239
- },
240
- _meta: {
241
- ui: {
242
- resourceUri: 'ui://flowengine/dashboard',
243
- },
244
- },
245
- },
246
- // UI Component Tools (AI FlowBuilder)
247
- {
248
- name: 'flowengine_list_components',
249
- description: 'Show the AI FlowBuilder Dashboard with interactive UI displaying all forms, chatbots, widgets, and UI components. Use this when user wants to see the UI builder, view components, manage forms/chatbots, or build UI elements. Renders a component gallery interface instead of JSON. Optionally filter by instanceId.',
250
- inputSchema: {
251
- type: 'object',
252
- properties: {
253
- instanceId: {
254
- type: 'string',
255
- description: 'Optional: Filter by instance ID',
256
- },
257
- },
258
- },
259
- _meta: {
260
- ui: {
261
- resourceUri: 'ui://flowengine/ui-builder',
262
- },
263
- },
264
- },
265
- {
266
- name: 'flowengine_get_component',
267
- description: 'Get detailed configuration for a specific UI component',
268
- inputSchema: {
269
- type: 'object',
270
- properties: {
271
- componentId: {
272
- type: 'string',
273
- description: 'The component ID',
274
- },
275
- },
276
- required: ['componentId'],
277
- },
278
- },
279
- {
280
- name: 'flowengine_create_component',
281
- description: 'Create a new UI component using AI FlowBuilder (form, chatbot, or widget)',
282
- inputSchema: {
283
- type: 'object',
284
- properties: {
285
- data: {
286
- type: 'object',
287
- description: 'Component configuration with type, name, and settings',
288
- },
289
- },
290
- required: ['data'],
291
- },
292
- },
293
- {
294
- name: 'flowengine_update_component',
295
- description: 'Update an existing UI component configuration',
296
- inputSchema: {
297
- type: 'object',
298
- properties: {
299
- componentId: {
300
- type: 'string',
301
- description: 'The component ID to update',
302
- },
303
- data: {
304
- type: 'object',
305
- description: 'Updated component configuration',
306
- },
307
- },
308
- required: ['componentId', 'data'],
309
- },
310
- },
311
- {
312
- name: 'flowengine_delete_component',
313
- description: 'Delete a UI component',
314
- inputSchema: {
315
- type: 'object',
316
- properties: {
317
- componentId: {
318
- type: 'string',
319
- description: 'The component ID to delete',
320
- },
321
- },
322
- required: ['componentId'],
323
- },
324
- },
325
- ],
163
+ content: [{
164
+ type: 'text',
165
+ text: JSON.stringify(portals, null, 2),
166
+ }],
167
+ };
168
+ });
169
+ // UI Components - List with UI
170
+ registerAppTool(server, 'flowengine_list_components', {
171
+ description: 'Show the AI FlowBuilder Dashboard with interactive UI displaying all forms, chatbots, widgets, and UI components. Use this when user wants to see the UI builder, view components, manage forms/chatbots, or build UI elements. Renders a component gallery interface instead of JSON. Optionally filter by instanceId.',
172
+ inputSchema: z.object({
173
+ instanceId: z.string().optional(),
174
+ }),
175
+ _meta: {
176
+ ui: {
177
+ resourceUri: 'ui://flowengine/ui-builder',
178
+ },
179
+ },
180
+ }, async (args) => {
181
+ const instanceId = args ? args.instanceId : undefined;
182
+ const widgets = await ensureClient().getWidgets(instanceId);
183
+ return {
184
+ content: [{
185
+ type: 'text',
186
+ text: JSON.stringify(widgets, null, 2),
187
+ }],
326
188
  };
327
189
  });
328
190
  /**
329
- * Handle Tool Calls
191
+ * ===========================
192
+ * REGULAR TOOLS (No UI)
193
+ * ===========================
330
194
  */
331
- server.setRequestHandler(CallToolRequestSchema, async (request) => {
332
- const { name, arguments: args } = request.params;
333
- try {
334
- switch (name) {
335
- // Instance Management
336
- case 'flowengine_list_instances': {
337
- const instances = await ensureClient().getInstances();
338
- return {
339
- content: [
340
- {
341
- type: 'text',
342
- text: JSON.stringify(instances, null, 2),
343
- },
344
- ],
345
- };
346
- }
347
- case 'flowengine_get_instance_status': {
348
- if (!args)
349
- throw new Error('Missing arguments');
350
- const instanceId = args.instanceId;
351
- const status = await ensureClient().getInstanceStatus(instanceId);
352
- return {
353
- content: [
354
- {
355
- type: 'text',
356
- text: JSON.stringify(status, null, 2),
357
- },
358
- ],
359
- };
360
- }
361
- case 'flowengine_create_instance': {
362
- if (!args)
363
- throw new Error('Missing arguments');
364
- const data = args.data;
365
- const result = await ensureClient().provisionInstance(data);
366
- return {
367
- content: [
368
- {
369
- type: 'text',
370
- text: `Instance created successfully. ID: ${result.instanceId || result.id || 'N/A'}`,
371
- },
372
- ],
373
- };
374
- }
375
- case 'flowengine_update_instance': {
376
- if (!args)
377
- throw new Error('Missing arguments');
378
- const data = args.data;
379
- await ensureClient().updateInstance(data);
380
- return {
381
- content: [
382
- {
383
- type: 'text',
384
- text: 'Instance updated successfully',
385
- },
386
- ],
387
- };
388
- }
389
- case 'flowengine_delete_instance': {
390
- if (!args)
391
- throw new Error('Missing arguments');
392
- const instanceId = args.instanceId;
393
- await ensureClient().deleteInstance(instanceId);
394
- return {
395
- content: [
396
- {
397
- type: 'text',
398
- text: 'Instance deleted successfully',
399
- },
400
- ],
401
- };
402
- }
403
- // Portals
404
- case 'flowengine_list_portals': {
405
- const portals = await ensureClient().getClientInstances();
406
- return {
407
- content: [
408
- {
409
- type: 'text',
410
- text: JSON.stringify(portals, null, 2),
411
- },
412
- ],
413
- };
414
- }
415
- // UI Components (AI FlowBuilder)
416
- case 'flowengine_list_components': {
417
- const instanceId = args ? args.instanceId : undefined;
418
- const widgets = await ensureClient().getWidgets(instanceId);
419
- return {
420
- content: [
421
- {
422
- type: 'text',
423
- text: JSON.stringify(widgets, null, 2),
424
- },
425
- ],
426
- };
427
- }
428
- case 'flowengine_get_component': {
429
- if (!args)
430
- throw new Error('Missing arguments');
431
- const componentId = args.componentId;
432
- const widget = await ensureClient().getWidget(componentId);
433
- return {
434
- content: [
435
- {
436
- type: 'text',
437
- text: JSON.stringify(widget, null, 2),
438
- },
439
- ],
440
- };
441
- }
442
- case 'flowengine_create_component': {
443
- if (!args)
444
- throw new Error('Missing arguments');
445
- const data = args.data;
446
- const result = await ensureClient().createWidget(data);
447
- return {
448
- content: [
449
- {
450
- type: 'text',
451
- text: `Component created successfully. ID: ${result.id || result.widgetId || 'N/A'}`,
452
- },
453
- ],
454
- };
455
- }
456
- case 'flowengine_update_component': {
457
- if (!args)
458
- throw new Error('Missing arguments');
459
- const componentId = args.componentId;
460
- const data = args.data;
461
- await ensureClient().updateWidget(componentId, data);
462
- return {
463
- content: [
464
- {
465
- type: 'text',
466
- text: 'Component updated successfully',
467
- },
468
- ],
469
- };
470
- }
471
- case 'flowengine_delete_component': {
472
- if (!args)
473
- throw new Error('Missing arguments');
474
- const componentId = args.componentId;
475
- await ensureClient().deleteWidget(componentId);
476
- return {
477
- content: [
478
- {
479
- type: 'text',
480
- text: 'Component deleted successfully',
481
- },
482
- ],
483
- };
484
- }
485
- default:
486
- throw new Error(`Unknown tool: ${name}`);
487
- }
488
- }
489
- catch (error) {
490
- return {
491
- content: [
492
- {
493
- type: 'text',
494
- text: `Error: ${error.message}`,
495
- },
496
- ],
497
- isError: true,
498
- };
499
- }
195
+ // Get Instance Status
196
+ server.registerTool('flowengine_get_instance_status', {
197
+ description: 'Get health and status information for a specific instance',
198
+ inputSchema: z.object({
199
+ instanceId: z.string(),
200
+ }),
201
+ }, async (args) => {
202
+ const instanceId = args.instanceId;
203
+ const status = await ensureClient().getInstanceStatus(instanceId);
204
+ return {
205
+ content: [{
206
+ type: 'text',
207
+ text: JSON.stringify(status, null, 2),
208
+ }],
209
+ };
210
+ });
211
+ // Create Instance
212
+ server.registerTool('flowengine_create_instance', {
213
+ description: 'Provision a new FlowEngine instance for a client',
214
+ inputSchema: z.object({
215
+ data: z.any(),
216
+ }),
217
+ }, async (args) => {
218
+ const data = args.data;
219
+ const result = await ensureClient().provisionInstance(data);
220
+ return {
221
+ content: [{
222
+ type: 'text',
223
+ text: `Instance created successfully. ID: ${result.instanceId || result.id || 'N/A'}`,
224
+ }],
225
+ };
226
+ });
227
+ // Update Instance
228
+ server.registerTool('flowengine_update_instance', {
229
+ description: 'Update instance settings and configuration',
230
+ inputSchema: z.object({
231
+ data: z.any().describe('Updated instance configuration'),
232
+ }),
233
+ }, async (args) => {
234
+ const data = args.data;
235
+ await ensureClient().updateInstance(data);
236
+ return {
237
+ content: [{
238
+ type: 'text',
239
+ text: 'Instance updated successfully',
240
+ }],
241
+ };
242
+ });
243
+ // Delete Instance
244
+ server.registerTool('flowengine_delete_instance', {
245
+ description: 'Permanently delete a FlowEngine instance',
246
+ inputSchema: z.object({
247
+ instanceId: z.string().describe('The instance ID to delete'),
248
+ }),
249
+ }, async (args) => {
250
+ const instanceId = args.instanceId;
251
+ await ensureClient().deleteInstance(instanceId);
252
+ return {
253
+ content: [{
254
+ type: 'text',
255
+ text: 'Instance deleted successfully',
256
+ }],
257
+ };
258
+ });
259
+ // Get Component
260
+ server.registerTool('flowengine_get_component', {
261
+ description: 'Get detailed configuration for a specific UI component',
262
+ inputSchema: z.object({
263
+ componentId: z.string().describe('The component ID'),
264
+ }),
265
+ }, async (args) => {
266
+ const componentId = args.componentId;
267
+ const widget = await ensureClient().getWidget(componentId);
268
+ return {
269
+ content: [{
270
+ type: 'text',
271
+ text: JSON.stringify(widget, null, 2),
272
+ }],
273
+ };
274
+ });
275
+ // Create Component
276
+ server.registerTool('flowengine_create_component', {
277
+ description: 'Create a new UI component using AI FlowBuilder (form, chatbot, or widget)',
278
+ inputSchema: z.object({
279
+ data: z.any().describe('Component configuration with type, name, and settings'),
280
+ }),
281
+ }, async (args) => {
282
+ const data = args.data;
283
+ const result = await ensureClient().createWidget(data);
284
+ return {
285
+ content: [{
286
+ type: 'text',
287
+ text: `Component created successfully. ID: ${result.id || result.widgetId || 'N/A'}`,
288
+ }],
289
+ };
290
+ });
291
+ // Update Component
292
+ server.registerTool('flowengine_update_component', {
293
+ description: 'Update an existing UI component configuration',
294
+ inputSchema: z.object({
295
+ componentId: z.string().describe('The component ID to update'),
296
+ data: z.any().describe('Updated component configuration'),
297
+ }),
298
+ }, async (args) => {
299
+ const componentId = args.componentId;
300
+ const data = args.data;
301
+ await ensureClient().updateWidget(componentId, data);
302
+ return {
303
+ content: [{
304
+ type: 'text',
305
+ text: 'Component updated successfully',
306
+ }],
307
+ };
308
+ });
309
+ // Delete Component
310
+ server.registerTool('flowengine_delete_component', {
311
+ description: 'Delete a UI component',
312
+ inputSchema: z.object({
313
+ componentId: z.string().describe('The component ID to delete'),
314
+ }),
315
+ }, async (args) => {
316
+ const componentId = args.componentId;
317
+ await ensureClient().deleteWidget(componentId);
318
+ return {
319
+ content: [{
320
+ type: 'text',
321
+ text: 'Component deleted successfully',
322
+ }],
323
+ };
500
324
  });
501
325
  /**
502
- * Start Server
326
+ * ===========================
327
+ * SERVER STARTUP
328
+ * ===========================
503
329
  */
504
330
  async function main() {
505
331
  const transport = new StdioServerTransport();
506
- await server.connect(transport);
507
- console.error('FlowEngine MCP Server running');
332
+ await server.server.connect(transport);
333
+ console.error('FlowEngine MCP Server (Modern API) running on stdio');
508
334
  }
509
335
  main().catch((error) => {
510
- console.error('Fatal error:', error);
336
+ console.error('Fatal error in MCP server:', error);
511
337
  process.exit(1);
512
338
  });
513
339
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "flowengine-mcp-app",
3
- "version": "1.2.1",
4
- "description": "FlowEngine Model Context Protocol server for Claude. Manage n8n workflows, build UI components, configure client portals, and provision instances directly from Claude Desktop, VSCode, or CLI.",
3
+ "version": "2.0.1",
4
+ "description": "FlowEngine Model Context Protocol server for Claude. Manage n8n workflows, build UI components, configure client portals, and provision instances directly from Claude Desktop, VSCode, or CLI. Built with modern MCP Apps API.",
5
5
  "type": "module",
6
6
  "bin": {
7
7
  "flowengine-mcp": "./build/index.js"
@@ -31,6 +31,7 @@
31
31
  "flowengine",
32
32
  "mcp",
33
33
  "mcp-app",
34
+ "mcp-apps",
34
35
  "model-context-protocol",
35
36
  "claude",
36
37
  "automation",
@@ -43,7 +44,7 @@
43
44
  "license": "MIT",
44
45
  "dependencies": {
45
46
  "@modelcontextprotocol/ext-apps": "^1.0.1",
46
- "@modelcontextprotocol/sdk": "^1.0.4"
47
+ "@modelcontextprotocol/sdk": "^1.25.0"
47
48
  },
48
49
  "devDependencies": {
49
50
  "@types/node": "^22.10.5",