n8n-nodes-vercel-ai-sdk-universal-temp 0.3.8 → 0.3.10

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 (81) hide show
  1. package/dist/nodes/UniversalAI/UniversalAI.node.d.ts +0 -1
  2. package/dist/nodes/UniversalAI/UniversalAI.node.js +13 -18
  3. package/dist/nodes/UniversalAI/UniversalAI.node.js.map +1 -1
  4. package/dist/nodes/UniversalAI/providers/google.d.ts +1 -1
  5. package/dist/nodes/UniversalAI/providers/google.js +1 -1
  6. package/dist/nodes/UniversalAI/providers/google.js.map +1 -1
  7. package/dist/nodes/UniversalAI/providers/index.js +0 -4
  8. package/dist/nodes/UniversalAI/providers/index.js.map +1 -1
  9. package/dist/nodes/UniversalAI/providers/openaicompatible.d.ts +1 -1
  10. package/dist/nodes/UniversalAI/providers/openaicompatible.js +1 -1
  11. package/dist/nodes/UniversalAI/providers/openaicompatible.js.map +1 -1
  12. package/dist/nodes/UniversalAI/providers/strategy.d.ts +1 -1
  13. package/dist/nodes/UniversalAI/providers/types.d.ts +1 -1
  14. package/dist/nodes/UniversalAgent/UniversalAgent.node.d.ts +3 -0
  15. package/dist/nodes/UniversalAgent/UniversalAgent.node.js +17 -0
  16. package/dist/nodes/UniversalAgent/UniversalAgent.node.js.map +1 -1
  17. package/dist/nodes/UniversalAgent/UniversalAgentDescription.js +1438 -166
  18. package/dist/nodes/UniversalAgent/UniversalAgentDescription.js.map +1 -1
  19. package/dist/nodes/UniversalAgent/handlers/access-tokens.handler.d.ts +2 -0
  20. package/dist/nodes/UniversalAgent/handlers/access-tokens.handler.js +52 -0
  21. package/dist/nodes/UniversalAgent/handlers/access-tokens.handler.js.map +1 -0
  22. package/dist/nodes/UniversalAgent/handlers/agent-blocks.handler.d.ts +2 -0
  23. package/dist/nodes/UniversalAgent/handlers/agent-blocks.handler.js +114 -0
  24. package/dist/nodes/UniversalAgent/handlers/agent-blocks.handler.js.map +1 -0
  25. package/dist/nodes/UniversalAgent/handlers/agent.handler.js +203 -71
  26. package/dist/nodes/UniversalAgent/handlers/agent.handler.js.map +1 -1
  27. package/dist/nodes/UniversalAgent/handlers/chat.handler.js +55 -7
  28. package/dist/nodes/UniversalAgent/handlers/chat.handler.js.map +1 -1
  29. package/dist/nodes/UniversalAgent/handlers/identity.handler.js +19 -8
  30. package/dist/nodes/UniversalAgent/handlers/identity.handler.js.map +1 -1
  31. package/dist/nodes/UniversalAgent/handlers/mcp.handler.js +171 -26
  32. package/dist/nodes/UniversalAgent/handlers/mcp.handler.js.map +1 -1
  33. package/dist/nodes/UniversalAgent/handlers/messages.handler.d.ts +2 -0
  34. package/dist/nodes/UniversalAgent/handlers/messages.handler.js +59 -0
  35. package/dist/nodes/UniversalAgent/handlers/messages.handler.js.map +1 -0
  36. package/dist/nodes/UniversalAgent/handlers/passages.handler.d.ts +2 -0
  37. package/dist/nodes/UniversalAgent/handlers/passages.handler.js +88 -0
  38. package/dist/nodes/UniversalAgent/handlers/passages.handler.js.map +1 -0
  39. package/dist/nodes/UniversalAgent/handlers/templates.handler.js +22 -0
  40. package/dist/nodes/UniversalAgent/handlers/templates.handler.js.map +1 -1
  41. package/dist/nodes/UniversalAgent/handlers/tools.handler.js +54 -66
  42. package/dist/nodes/UniversalAgent/handlers/tools.handler.js.map +1 -1
  43. package/dist/nodes/UniversalAgent/handlers/utils.js +3 -4
  44. package/dist/nodes/UniversalAgent/handlers/utils.js.map +1 -1
  45. package/dist/nodes/UniversalEmbedding/UniversalEmbedding.node.js +25 -7
  46. package/dist/nodes/UniversalEmbedding/UniversalEmbedding.node.js.map +1 -1
  47. package/dist/nodes/UniversalImageGen/UniversalImageGen.node.js +1 -1
  48. package/dist/nodes/UniversalImageGen/UniversalImageGen.node.js.map +1 -1
  49. package/dist/nodes/UniversalSpeechGen/UniversalSpeechGen.node.d.ts +2 -2
  50. package/dist/nodes/UniversalSpeechGen/UniversalSpeechGen.node.js +5 -12
  51. package/dist/nodes/UniversalSpeechGen/UniversalSpeechGen.node.js.map +1 -1
  52. package/dist/nodes/shared/descriptions.js +20 -3
  53. package/dist/nodes/shared/descriptions.js.map +1 -1
  54. package/dist/nodes/shared/helpers.js +0 -12
  55. package/dist/nodes/shared/helpers.js.map +1 -1
  56. package/dist/nodes/shared/letta/client.d.ts +67 -19
  57. package/dist/nodes/shared/letta/client.js +353 -114
  58. package/dist/nodes/shared/letta/client.js.map +1 -1
  59. package/dist/nodes/shared/letta/load-options.d.ts +3 -0
  60. package/dist/nodes/shared/letta/load-options.js +93 -0
  61. package/dist/nodes/shared/letta/load-options.js.map +1 -1
  62. package/dist/nodes/shared/providers/factory.d.ts +0 -1
  63. package/dist/nodes/shared/providers/factory.js +35 -15
  64. package/dist/nodes/shared/providers/factory.js.map +1 -1
  65. package/dist/nodes/shared/providers/registry.js +1 -20
  66. package/dist/nodes/shared/providers/registry.js.map +1 -1
  67. package/dist/nodes/shared/types.d.ts +1 -1
  68. package/index.js +33 -0
  69. package/package.json +13 -13
  70. package/dist/credentials/GeminiCliApi.credentials.d.ts +0 -8
  71. package/dist/credentials/GeminiCliApi.credentials.js +0 -71
  72. package/dist/credentials/GeminiCliApi.credentials.js.map +0 -1
  73. package/dist/nodes/UniversalAI/providers/gemini-cli.d.ts +0 -5
  74. package/dist/nodes/UniversalAI/providers/gemini-cli.js +0 -12
  75. package/dist/nodes/UniversalAI/providers/gemini-cli.js.map +0 -1
  76. package/dist/nodes/UniversalAI/providers/letta.d.ts +0 -16
  77. package/dist/nodes/UniversalAI/providers/letta.js +0 -77
  78. package/dist/nodes/UniversalAI/providers/letta.js.map +0 -1
  79. package/dist/nodes/shared/providers/gemini-cli.d.ts +0 -2
  80. package/dist/nodes/shared/providers/gemini-cli.js +0 -180
  81. package/dist/nodes/shared/providers/gemini-cli.js.map +0 -1
@@ -37,6 +37,10 @@ exports.UNIVERSAL_AGENT_DESCRIPTION = {
37
37
  name: 'Agent',
38
38
  value: 'agent',
39
39
  },
40
+ {
41
+ name: 'Agent Block',
42
+ value: 'agentBlock',
43
+ },
40
44
  {
41
45
  name: 'Archive',
42
46
  value: 'archive',
@@ -85,6 +89,18 @@ exports.UNIVERSAL_AGENT_DESCRIPTION = {
85
89
  name: 'Tag',
86
90
  value: 'tag',
87
91
  },
92
+ {
93
+ name: 'Message',
94
+ value: 'message',
95
+ },
96
+ {
97
+ name: 'Passage',
98
+ value: 'passage',
99
+ },
100
+ {
101
+ name: 'Access Token',
102
+ value: 'accessToken',
103
+ },
88
104
  {
89
105
  name: 'Template',
90
106
  value: 'template',
@@ -97,6 +113,145 @@ exports.UNIVERSAL_AGENT_DESCRIPTION = {
97
113
  default: 'chat',
98
114
  required: true,
99
115
  },
116
+ {
117
+ displayName: 'Operation',
118
+ name: 'operation',
119
+ type: 'options',
120
+ noDataExpression: true,
121
+ displayOptions: {
122
+ show: {
123
+ resource: ['agentBlock'],
124
+ },
125
+ },
126
+ options: [
127
+ {
128
+ name: 'List',
129
+ value: 'list',
130
+ action: 'List agent blocks',
131
+ },
132
+ {
133
+ name: 'Get',
134
+ value: 'get',
135
+ action: 'Get an agent block',
136
+ },
137
+ {
138
+ name: 'Update',
139
+ value: 'update',
140
+ action: 'Update an agent block',
141
+ },
142
+ {
143
+ name: 'Attach',
144
+ value: 'attach',
145
+ action: 'Attach a block to an agent',
146
+ },
147
+ {
148
+ name: 'Detach',
149
+ value: 'detach',
150
+ action: 'Detach a block from an agent',
151
+ },
152
+ ],
153
+ default: 'list',
154
+ },
155
+ {
156
+ displayName: 'Agent ID',
157
+ name: 'agentId',
158
+ type: 'options',
159
+ typeOptions: {
160
+ loadOptionsMethod: 'getLettaAgents',
161
+ },
162
+ default: '',
163
+ required: true,
164
+ displayOptions: {
165
+ show: {
166
+ resource: ['agentBlock'],
167
+ },
168
+ },
169
+ description: 'Agent to operate on',
170
+ },
171
+ {
172
+ displayName: 'Block Label',
173
+ name: 'blockLabel',
174
+ type: 'options',
175
+ options: [
176
+ { name: 'Human', value: 'human' },
177
+ { name: 'Persona', value: 'persona' },
178
+ ],
179
+ default: 'human',
180
+ required: true,
181
+ displayOptions: {
182
+ show: {
183
+ resource: ['agentBlock'],
184
+ operation: ['get', 'update'],
185
+ },
186
+ },
187
+ description: 'Core-memory block label',
188
+ },
189
+ {
190
+ displayName: 'Value',
191
+ name: 'value',
192
+ type: 'string',
193
+ default: '',
194
+ typeOptions: {
195
+ rows: 4,
196
+ },
197
+ displayOptions: {
198
+ show: {
199
+ resource: ['agentBlock'],
200
+ operation: ['update'],
201
+ },
202
+ },
203
+ description: 'New value for the block',
204
+ },
205
+ {
206
+ displayName: 'Limit',
207
+ name: 'limit',
208
+ type: 'number',
209
+ default: 50,
210
+ typeOptions: {
211
+ minValue: 1,
212
+ },
213
+ displayOptions: {
214
+ show: {
215
+ resource: ['agentBlock'],
216
+ operation: ['list'],
217
+ },
218
+ },
219
+ description: 'Max number of blocks to return',
220
+ },
221
+ {
222
+ displayName: 'Order',
223
+ name: 'order',
224
+ type: 'options',
225
+ options: [
226
+ { name: 'Newest First', value: 'desc' },
227
+ { name: 'Oldest First', value: 'asc' },
228
+ ],
229
+ default: 'desc',
230
+ displayOptions: {
231
+ show: {
232
+ resource: ['agentBlock'],
233
+ operation: ['list'],
234
+ },
235
+ },
236
+ description: 'Sort order',
237
+ },
238
+ {
239
+ displayName: 'Block ID',
240
+ name: 'blockId',
241
+ type: 'options',
242
+ typeOptions: {
243
+ loadOptionsMethod: 'getLettaBlocks',
244
+ },
245
+ default: '',
246
+ required: true,
247
+ displayOptions: {
248
+ show: {
249
+ resource: ['agentBlock'],
250
+ operation: ['attach', 'detach'],
251
+ },
252
+ },
253
+ description: 'Block to attach/detach (by ID)',
254
+ },
100
255
  {
101
256
  displayName: 'Agent',
102
257
  name: 'agentId',
@@ -138,6 +293,215 @@ exports.UNIVERSAL_AGENT_DESCRIPTION = {
138
293
  },
139
294
  description: 'The message to send to the agent',
140
295
  },
296
+ {
297
+ displayName: 'Images',
298
+ name: 'images',
299
+ type: 'fixedCollection',
300
+ typeOptions: {
301
+ multipleValues: true,
302
+ },
303
+ default: {},
304
+ displayOptions: {
305
+ show: {
306
+ resource: ['chat'],
307
+ },
308
+ },
309
+ options: [
310
+ {
311
+ name: 'image',
312
+ displayName: 'Image',
313
+ values: [
314
+ {
315
+ displayName: 'Type',
316
+ name: 'type',
317
+ type: 'options',
318
+ options: [
319
+ {
320
+ name: 'Image URL',
321
+ value: 'url',
322
+ },
323
+ {
324
+ name: 'Binary File',
325
+ value: 'binary',
326
+ },
327
+ ],
328
+ default: 'url',
329
+ description: 'How to provide the image',
330
+ },
331
+ {
332
+ displayName: 'Image URL',
333
+ name: 'url',
334
+ type: 'string',
335
+ default: '',
336
+ displayOptions: {
337
+ show: {
338
+ type: ['url'],
339
+ },
340
+ },
341
+ description: 'The URL of the image',
342
+ },
343
+ {
344
+ displayName: 'Input Binary Field',
345
+ name: 'binaryPropertyName',
346
+ type: 'string',
347
+ default: 'data',
348
+ displayOptions: {
349
+ show: {
350
+ type: ['binary'],
351
+ },
352
+ },
353
+ description: 'The name of the binary property containing the image',
354
+ },
355
+ ],
356
+ },
357
+ ],
358
+ description: 'Images to send with the message (requires a vision-capable model)',
359
+ },
360
+ {
361
+ displayName: 'Max Steps',
362
+ name: 'maxSteps',
363
+ type: 'number',
364
+ default: 100,
365
+ typeOptions: {
366
+ minValue: 1,
367
+ maxValue: 1000,
368
+ },
369
+ displayOptions: {
370
+ show: {
371
+ resource: ['chat'],
372
+ },
373
+ },
374
+ description: 'Maximum number of steps the agent can take',
375
+ },
376
+ {
377
+ displayName: 'Enable Thinking',
378
+ name: 'enableThinking',
379
+ type: 'options',
380
+ default: 'auto',
381
+ options: [
382
+ { name: 'Auto', value: 'auto' },
383
+ { name: 'True', value: 'true' },
384
+ { name: 'False', value: 'false' },
385
+ ],
386
+ displayOptions: {
387
+ show: {
388
+ resource: ['chat'],
389
+ },
390
+ },
391
+ description: 'If set to True, enables reasoning before responses or tool calls from the agent',
392
+ },
393
+ {
394
+ displayName: 'Include Return Message Types',
395
+ name: 'includeReturnMessageTypes',
396
+ type: 'multiOptions',
397
+ default: [],
398
+ options: [
399
+ { name: 'System Message', value: 'system_message' },
400
+ { name: 'User Message', value: 'user_message' },
401
+ { name: 'Assistant Message', value: 'assistant_message' },
402
+ { name: 'Reasoning Message', value: 'reasoning_message' },
403
+ { name: 'Hidden Reasoning Message', value: 'hidden_reasoning_message' },
404
+ { name: 'Tool Call Message', value: 'tool_call_message' },
405
+ { name: 'Tool Return Message', value: 'tool_return_message' },
406
+ { name: 'Approval Request Message', value: 'approval_request_message' },
407
+ { name: 'Approval Response Message', value: 'approval_response_message' },
408
+ ],
409
+ displayOptions: {
410
+ show: {
411
+ resource: ['chat'],
412
+ },
413
+ },
414
+ description: 'Only return specified message types in the response. If empty returns all message types.',
415
+ },
416
+ {
417
+ displayName: 'Streaming',
418
+ name: 'streaming',
419
+ type: 'boolean',
420
+ default: false,
421
+ displayOptions: {
422
+ show: {
423
+ resource: ['chat'],
424
+ },
425
+ },
426
+ description: 'If enabled, use the streaming endpoint (Server-Sent Events)',
427
+ },
428
+ {
429
+ displayName: 'Stream Tokens',
430
+ name: 'streamTokens',
431
+ type: 'boolean',
432
+ default: false,
433
+ displayOptions: {
434
+ show: {
435
+ resource: ['chat'],
436
+ streaming: [true],
437
+ },
438
+ },
439
+ description: 'Stream individual tokens rather than per step (only used when streaming=true)',
440
+ },
441
+ {
442
+ displayName: 'Include Pings',
443
+ name: 'includePings',
444
+ type: 'boolean',
445
+ default: false,
446
+ displayOptions: {
447
+ show: {
448
+ resource: ['chat'],
449
+ streaming: [true],
450
+ },
451
+ },
452
+ description: 'Include keepalive ping messages to prevent connection timeouts (only used when streaming=true)',
453
+ },
454
+ {
455
+ displayName: 'Background',
456
+ name: 'background',
457
+ type: 'boolean',
458
+ default: false,
459
+ displayOptions: {
460
+ show: {
461
+ resource: ['chat'],
462
+ streaming: [true],
463
+ },
464
+ },
465
+ description: 'Process the request in the background (only used when streaming=true)',
466
+ },
467
+ {
468
+ displayName: 'Use Assistant Message (Legacy)',
469
+ name: 'useAssistantMessage',
470
+ type: 'boolean',
471
+ default: false,
472
+ displayOptions: {
473
+ show: {
474
+ resource: ['chat'],
475
+ },
476
+ },
477
+ description: 'Whether the server should parse specific tool call arguments as AssistantMessage objects (legacy, deprecated for letta_v1_agent onward)',
478
+ },
479
+ {
480
+ displayName: 'Assistant Message Tool Name (Legacy)',
481
+ name: 'assistantMessageToolName',
482
+ type: 'string',
483
+ default: '',
484
+ displayOptions: {
485
+ show: {
486
+ resource: ['chat'],
487
+ useAssistantMessage: [true],
488
+ },
489
+ },
490
+ description: 'The name of the designated message tool (legacy)',
491
+ },
492
+ {
493
+ displayName: 'Assistant Message Tool Kwarg (Legacy)',
494
+ name: 'assistantMessageToolKwarg',
495
+ type: 'string',
496
+ default: '',
497
+ displayOptions: {
498
+ show: {
499
+ resource: ['chat'],
500
+ useAssistantMessage: [true],
501
+ },
502
+ },
503
+ description: 'The name of the message argument in the designated message tool (legacy)',
504
+ },
141
505
  {
142
506
  displayName: 'Operation',
143
507
  name: 'operation',
@@ -191,6 +555,12 @@ exports.UNIVERSAL_AGENT_DESCRIPTION = {
191
555
  description: 'Import an agent from a file',
192
556
  action: 'Import an agent',
193
557
  },
558
+ {
559
+ name: 'Run Tool',
560
+ value: 'runTool',
561
+ description: 'Run a tool on an agent',
562
+ action: 'Run a tool on an agent',
563
+ },
194
564
  ],
195
565
  default: 'list',
196
566
  },
@@ -272,12 +642,27 @@ exports.UNIVERSAL_AGENT_DESCRIPTION = {
272
642
  description: 'The embedding model to use',
273
643
  },
274
644
  {
275
- displayName: 'System Prompt',
276
- name: 'system',
277
- type: 'string',
278
- typeOptions: {
279
- rows: 4,
280
- },
645
+ displayName: 'Anthropic Effort',
646
+ name: 'anthropicEffort',
647
+ type: 'options',
648
+ options: [
649
+ {
650
+ name: 'None',
651
+ value: '',
652
+ },
653
+ {
654
+ name: 'Low',
655
+ value: 'low',
656
+ },
657
+ {
658
+ name: 'Medium',
659
+ value: 'medium',
660
+ },
661
+ {
662
+ name: 'High',
663
+ value: 'high',
664
+ },
665
+ ],
281
666
  default: '',
282
667
  displayOptions: {
283
668
  show: {
@@ -285,28 +670,89 @@ exports.UNIVERSAL_AGENT_DESCRIPTION = {
285
670
  operation: ['create', 'update'],
286
671
  },
287
672
  },
288
- description: 'The system prompt for the agent',
673
+ description: 'Effort level for Anthropic models that support it (controls token spending). Leave empty to use provider default.',
289
674
  },
290
675
  {
291
- displayName: 'Agent Type',
292
- name: 'agent_type',
676
+ displayName: 'Response Format',
677
+ name: 'responseFormatType',
293
678
  type: 'options',
294
679
  options: [
295
680
  {
296
- name: 'Letta V1 Agent',
297
- value: 'letta_v1_agent',
681
+ name: 'None',
682
+ value: '',
298
683
  },
299
684
  {
300
- name: 'MemGPT Agent',
301
- value: 'memgpt_agent',
685
+ name: 'Text',
686
+ value: 'text',
302
687
  },
303
688
  {
304
- name: 'MemGPT V2 Agent',
305
- value: 'memgpt_v2_agent',
689
+ name: 'JSON Object',
690
+ value: 'json_object',
306
691
  },
307
692
  {
308
- name: 'React Agent',
309
- value: 'react_agent',
693
+ name: 'JSON Schema',
694
+ value: 'json_schema',
695
+ },
696
+ ],
697
+ default: '',
698
+ displayOptions: {
699
+ show: {
700
+ resource: ['agent'],
701
+ operation: ['create', 'update'],
702
+ },
703
+ },
704
+ description: 'Controls the response format (structured outputs). For JSON Schema, provide a schema below.',
705
+ },
706
+ {
707
+ displayName: 'Response Format JSON Schema',
708
+ name: 'responseFormatJsonSchema',
709
+ type: 'json',
710
+ default: '{}',
711
+ displayOptions: {
712
+ show: {
713
+ resource: ['agent'],
714
+ operation: ['create', 'update'],
715
+ responseFormatType: ['json_schema'],
716
+ },
717
+ },
718
+ description: 'JSON schema object to enforce for structured output.',
719
+ },
720
+ {
721
+ displayName: 'System Prompt',
722
+ name: 'system',
723
+ type: 'string',
724
+ typeOptions: {
725
+ rows: 4,
726
+ },
727
+ default: '',
728
+ displayOptions: {
729
+ show: {
730
+ resource: ['agent'],
731
+ operation: ['create', 'update'],
732
+ },
733
+ },
734
+ description: 'The system prompt for the agent',
735
+ },
736
+ {
737
+ displayName: 'Agent Type',
738
+ name: 'agent_type',
739
+ type: 'options',
740
+ options: [
741
+ {
742
+ name: 'Letta V1 Agent',
743
+ value: 'letta_v1_agent',
744
+ },
745
+ {
746
+ name: 'MemGPT Agent',
747
+ value: 'memgpt_agent',
748
+ },
749
+ {
750
+ name: 'MemGPT V2 Agent',
751
+ value: 'memgpt_v2_agent',
752
+ },
753
+ {
754
+ name: 'React Agent',
755
+ value: 'react_agent',
310
756
  },
311
757
  {
312
758
  name: 'Sleeptime Agent',
@@ -377,31 +823,77 @@ exports.UNIVERSAL_AGENT_DESCRIPTION = {
377
823
  },
378
824
  description: 'Whether to enable sleep-time for the agent',
379
825
  },
826
+ {
827
+ displayName: 'Context Window Limit',
828
+ name: 'contextWindowLimit',
829
+ type: 'number',
830
+ default: 0,
831
+ displayOptions: {
832
+ show: {
833
+ resource: ['agent'],
834
+ operation: ['create', 'update'],
835
+ },
836
+ },
837
+ description: 'The maximum context window size for the agent (0 for model default)',
838
+ },
839
+ {
840
+ displayName: 'Enable Parallel Tool Calls',
841
+ name: 'parallelToolCalls',
842
+ type: 'boolean',
843
+ default: false,
844
+ displayOptions: {
845
+ show: {
846
+ resource: ['agent'],
847
+ operation: ['create', 'update'],
848
+ },
849
+ },
850
+ description: 'Whether to enable parallel tool calling',
851
+ },
380
852
  {
381
853
  displayName: 'Tags',
382
854
  name: 'tags',
383
- type: 'string',
384
- default: '',
855
+ type: 'fixedCollection',
856
+ typeOptions: {
857
+ multipleValues: true,
858
+ },
859
+ default: {},
385
860
  displayOptions: {
386
861
  show: {
387
862
  resource: ['agent'],
388
863
  operation: ['create', 'update'],
389
864
  },
390
865
  },
391
- description: 'Comma-separated list of tags',
866
+ options: [
867
+ {
868
+ name: 'tag',
869
+ displayName: 'Tag',
870
+ values: [
871
+ {
872
+ displayName: 'Value',
873
+ name: 'value',
874
+ type: 'string',
875
+ default: '',
876
+ },
877
+ ],
878
+ },
879
+ ],
880
+ description: 'Tags associated with the agent',
392
881
  },
393
882
  {
394
- displayName: 'Source IDs',
395
- name: 'source_ids',
396
- type: 'string',
397
- default: '',
883
+ displayName: 'Folder IDs',
884
+ name: 'folderIds',
885
+ type: 'multiOptions',
886
+ default: [],
887
+ typeOptions: {
888
+ loadOptionsMethod: 'getLettaFolders',
889
+ },
398
890
  displayOptions: {
399
891
  show: {
400
892
  resource: ['agent'],
401
893
  operation: ['create', 'update'],
402
894
  },
403
895
  },
404
- description: 'Comma-separated list of source IDs',
896
+ description: 'Folders to attach to the agent',
405
897
  },
406
898
  {
407
899
  displayName: 'Secrets',
@@ -441,6 +933,86 @@ exports.UNIVERSAL_AGENT_DESCRIPTION = {
441
933
  ],
442
934
  description: 'Secrets to attach to the agent',
443
935
  },
936
+ {
937
+ displayName: 'Compaction Settings',
938
+ name: 'compactionSettings',
939
+ type: 'fixedCollection',
940
+ typeOptions: {
941
+ multipleValues: false,
942
+ },
943
+ default: {},
944
+ displayOptions: {
945
+ show: {
946
+ resource: ['agent'],
947
+ operation: ['create', 'update'],
948
+ },
949
+ },
950
+ options: [
951
+ {
952
+ name: 'settings',
953
+ displayName: 'Settings',
954
+ values: [
955
+ {
956
+ displayName: 'Prompt',
957
+ name: 'prompt',
958
+ type: 'string',
959
+ default: '',
960
+ description: 'Prompt to use for summarization/compaction',
961
+ typeOptions: {
962
+ rows: 3,
963
+ },
964
+ },
965
+ {
966
+ displayName: 'Prompt Acknowledgement',
967
+ name: 'promptAcknowledgement',
968
+ type: 'string',
969
+ default: '',
970
+ description: 'Acknowledgement post-prompt to help prevent non-summary outputs',
971
+ },
972
+ {
973
+ displayName: 'Mode',
974
+ name: 'mode',
975
+ type: 'options',
976
+ options: [
977
+ { name: 'All', value: 'all' },
978
+ { name: 'Sliding Window', value: 'sliding_window' },
979
+ ],
980
+ default: 'all',
981
+ description: 'Summarization technique',
982
+ },
983
+ {
984
+ displayName: 'Clip Chars',
985
+ name: 'clipChars',
986
+ type: 'number',
987
+ default: 0,
988
+ description: 'Max length of the summary in characters (0 to disable clipping)',
989
+ },
990
+ {
991
+ displayName: 'Sliding Window Percentage',
992
+ name: 'slidingWindowPercentage',
993
+ type: 'number',
994
+ default: 0,
995
+ description: 'Percentage of the context window to keep post-compaction (0 to ignore)',
996
+ },
997
+ {
998
+ displayName: 'Max Output Tokens',
999
+ name: 'maxOutputTokens',
1000
+ type: 'number',
1001
+ default: 0,
1002
+ description: 'Max tokens for the compaction model output (0 to use provider default)',
1003
+ },
1004
+ {
1005
+ displayName: 'Parallel Tool Calls',
1006
+ name: 'parallelToolCalls',
1007
+ type: 'boolean',
1008
+ default: false,
1009
+ description: 'Whether to enable parallel tool calling for compaction model',
1010
+ },
1011
+ ],
1012
+ },
1013
+ ],
1014
+ description: 'Compaction (summarization) settings for long conversations',
1015
+ },
444
1016
  {
445
1017
  displayName: 'JSON Parameters',
446
1018
  name: 'jsonParameters',
@@ -498,28 +1070,34 @@ exports.UNIVERSAL_AGENT_DESCRIPTION = {
498
1070
  {
499
1071
  displayName: 'Block IDs',
500
1072
  name: 'blockIds',
501
- type: 'string',
502
- default: '',
1073
+ type: 'multiOptions',
1074
+ default: [],
1075
+ typeOptions: {
1076
+ loadOptionsMethod: 'getLettaBlocks',
1077
+ },
503
1078
  displayOptions: {
504
1079
  show: {
505
1080
  resource: ['agent'],
506
1081
  operation: ['create', 'update'],
507
1082
  },
508
1083
  },
509
- description: 'Comma-separated list of existing block IDs to attach',
1084
+ description: 'Blocks to attach to the agent',
510
1085
  },
511
1086
  {
512
- displayName: 'Tools',
513
- name: 'tools',
514
- type: 'string',
515
- default: '',
1087
+ displayName: 'Tool IDs',
1088
+ name: 'toolIds',
1089
+ type: 'multiOptions',
1090
+ default: [],
1091
+ typeOptions: {
1092
+ loadOptionsMethod: 'getLettaTools',
1093
+ },
516
1094
  displayOptions: {
517
1095
  show: {
518
1096
  resource: ['agent'],
519
1097
  operation: ['create', 'update'],
520
1098
  },
521
1099
  },
522
- description: 'Comma-separated list of tool names to attach to the agent',
1100
+ description: 'Tools to attach to the agent',
523
1101
  },
524
1102
  {
525
1103
  displayName: 'Operation',
@@ -856,6 +1434,18 @@ exports.UNIVERSAL_AGENT_DESCRIPTION = {
856
1434
  description: 'List all templates',
857
1435
  action: 'List all templates',
858
1436
  },
1437
+ {
1438
+ name: 'Update',
1439
+ value: 'update',
1440
+ description: 'Update a template',
1441
+ action: 'Update a template',
1442
+ },
1443
+ {
1444
+ name: 'Create Agent From Template',
1445
+ value: 'createAgent',
1446
+ description: 'Create an agent from a template',
1447
+ action: 'Create an agent from a template',
1448
+ },
859
1449
  ],
860
1450
  default: 'list',
861
1451
  },
@@ -868,24 +1458,11 @@ exports.UNIVERSAL_AGENT_DESCRIPTION = {
868
1458
  displayOptions: {
869
1459
  show: {
870
1460
  resource: ['template'],
871
- operation: ['delete', 'get'],
1461
+ operation: ['delete', 'get', 'update', 'createAgent'],
872
1462
  },
873
1463
  },
874
1464
  description: 'ID of the template',
875
1465
  },
876
- {
877
- displayName: 'JSON Parameters',
878
- name: 'jsonParameters',
879
- type: 'json',
880
- default: '{}',
881
- displayOptions: {
882
- show: {
883
- resource: ['archive', 'batch', 'group', 'run', 'step', 'template'],
884
- operation: ['create', 'update', 'list'],
885
- },
886
- },
887
- description: 'Additional parameters to pass to the API in JSON format.',
888
- },
889
1466
  {
890
1467
  displayName: 'Operation',
891
1468
  name: 'operation',
@@ -893,148 +1470,400 @@ exports.UNIVERSAL_AGENT_DESCRIPTION = {
893
1470
  noDataExpression: true,
894
1471
  displayOptions: {
895
1472
  show: {
896
- resource: ['block'],
1473
+ resource: ['message'],
897
1474
  },
898
1475
  },
899
1476
  options: [
900
- {
901
- name: 'Create',
902
- value: 'create',
903
- description: 'Create a new block',
904
- action: 'Create a block',
905
- },
906
- {
907
- name: 'Delete',
908
- value: 'delete',
909
- description: 'Delete a block',
910
- action: 'Delete a block',
911
- },
912
- {
913
- name: 'Get',
914
- value: 'get',
915
- description: 'Get block details',
916
- action: 'Get block details',
917
- },
918
1477
  {
919
1478
  name: 'List',
920
1479
  value: 'list',
921
- description: 'List all blocks',
922
- action: 'List all blocks',
1480
+ description: 'List messages',
1481
+ action: 'List messages',
923
1482
  },
924
1483
  {
925
- name: 'Update',
926
- value: 'update',
927
- description: 'Update a block',
928
- action: 'Update a block',
1484
+ name: 'Search',
1485
+ value: 'search',
1486
+ description: 'Search messages',
1487
+ action: 'Search messages',
929
1488
  },
930
1489
  ],
931
1490
  default: 'list',
932
1491
  },
933
1492
  {
934
- displayName: 'Block ID',
935
- name: 'blockId',
936
- type: 'string',
937
- default: '',
938
- required: true,
939
- displayOptions: {
940
- show: {
941
- resource: ['block'],
942
- operation: ['delete', 'get', 'update'],
943
- },
1493
+ displayName: 'Agent ID',
1494
+ name: 'agentId',
1495
+ type: 'options',
1496
+ typeOptions: {
1497
+ loadOptionsMethod: 'getLettaAgents',
944
1498
  },
945
- description: 'ID of the block to operate on',
946
- },
947
- {
948
- displayName: 'Label',
949
- name: 'label',
950
- type: 'string',
951
1499
  default: '',
952
- required: true,
953
1500
  displayOptions: {
954
1501
  show: {
955
- resource: ['block'],
956
- operation: ['create', 'update'],
1502
+ resource: ['message'],
1503
+ operation: ['list', 'search'],
957
1504
  },
958
1505
  },
959
- description: 'Label for the memory block',
1506
+ description: 'Filter by Agent ID',
960
1507
  },
961
1508
  {
962
- displayName: 'Value',
963
- name: 'value',
1509
+ displayName: 'Query',
1510
+ name: 'query',
964
1511
  type: 'string',
965
1512
  default: '',
966
- required: true,
967
1513
  displayOptions: {
968
1514
  show: {
969
- resource: ['block'],
970
- operation: ['create', 'update'],
1515
+ resource: ['message'],
1516
+ operation: ['search'],
971
1517
  },
972
1518
  },
973
- typeOptions: {
974
- rows: 4,
975
- },
976
- description: 'Content of the memory block',
1519
+ description: 'Text query for search',
977
1520
  },
978
1521
  {
979
1522
  displayName: 'Operation',
980
- name: 'toolsOperation',
1523
+ name: 'operation',
981
1524
  type: 'options',
982
1525
  noDataExpression: true,
983
1526
  displayOptions: {
984
1527
  show: {
985
- resource: ['tool'],
1528
+ resource: ['passage'],
986
1529
  },
987
1530
  },
988
1531
  options: [
989
- {
990
- name: 'Create',
991
- value: 'create',
992
- description: 'Create a new tool',
993
- action: 'Create a tool',
994
- },
995
- {
996
- name: 'Delete',
997
- value: 'delete',
998
- description: 'Delete a tool',
999
- action: 'Delete a tool',
1000
- },
1001
- {
1002
- name: 'Get',
1003
- value: 'get',
1004
- description: 'Get tool details',
1005
- action: 'Get tool details',
1006
- },
1007
1532
  {
1008
1533
  name: 'List',
1009
1534
  value: 'list',
1010
- description: 'List all tools',
1011
- action: 'List all tools',
1535
+ description: 'List passages',
1536
+ action: 'List passages',
1012
1537
  },
1013
1538
  {
1014
- name: 'Update',
1015
- value: 'update',
1016
- description: 'Update a tool',
1017
- action: 'Update a tool',
1539
+ name: 'Search',
1540
+ value: 'search',
1541
+ description: 'Search passages',
1542
+ action: 'Search passages',
1018
1543
  },
1019
1544
  {
1020
- name: 'Upsert',
1021
- value: 'upsert',
1022
- description: 'Create or update a tool',
1023
- action: 'Upsert a tool',
1545
+ name: 'Create',
1546
+ value: 'create',
1547
+ description: 'Create a passage',
1548
+ action: 'Create a passage',
1024
1549
  },
1025
1550
  {
1026
- name: 'Upsert Base Tools',
1027
- value: 'upsertBase',
1028
- description: 'Upsert base tools',
1029
- action: 'Upsert base tools',
1551
+ name: 'Delete',
1552
+ value: 'delete',
1553
+ description: 'Delete a passage',
1554
+ action: 'Delete a passage',
1030
1555
  },
1031
1556
  ],
1032
1557
  default: 'list',
1033
1558
  },
1559
+ {
1560
+ displayName: 'Agent ID',
1561
+ name: 'agentId',
1562
+ type: 'options',
1563
+ typeOptions: {
1564
+ loadOptionsMethod: 'getLettaAgents',
1565
+ },
1566
+ default: '',
1567
+ displayOptions: {
1568
+ show: {
1569
+ resource: ['passage'],
1570
+ },
1571
+ },
1572
+ description: 'Agent ID (required for most passage operations)',
1573
+ },
1574
+ {
1575
+ displayName: 'Passage ID',
1576
+ name: 'passageId',
1577
+ type: 'string',
1578
+ default: '',
1579
+ displayOptions: {
1580
+ show: {
1581
+ resource: ['passage'],
1582
+ operation: ['delete'],
1583
+ },
1584
+ },
1585
+ description: 'ID of the passage to delete',
1586
+ },
1587
+ {
1588
+ displayName: 'Text',
1589
+ name: 'text',
1590
+ type: 'string',
1591
+ default: '',
1592
+ displayOptions: {
1593
+ show: {
1594
+ resource: ['passage'],
1595
+ operation: ['create'],
1596
+ },
1597
+ },
1598
+ description: 'Text content of the passage',
1599
+ },
1600
+ {
1601
+ displayName: 'Query',
1602
+ name: 'query',
1603
+ type: 'string',
1604
+ default: '',
1605
+ displayOptions: {
1606
+ show: {
1607
+ resource: ['passage'],
1608
+ operation: ['search'],
1609
+ },
1610
+ },
1611
+ description: 'Text query for search',
1612
+ },
1613
+ {
1614
+ displayName: 'Operation',
1615
+ name: 'operation',
1616
+ type: 'options',
1617
+ noDataExpression: true,
1618
+ displayOptions: {
1619
+ show: {
1620
+ resource: ['accessToken'],
1621
+ },
1622
+ },
1623
+ options: [
1624
+ {
1625
+ name: 'Create',
1626
+ value: 'create',
1627
+ description: 'Create an access token',
1628
+ action: 'Create an access token',
1629
+ },
1630
+ {
1631
+ name: 'List',
1632
+ value: 'list',
1633
+ description: 'List access tokens',
1634
+ action: 'List access tokens',
1635
+ },
1636
+ {
1637
+ name: 'Delete',
1638
+ value: 'delete',
1639
+ description: 'Delete an access token',
1640
+ action: 'Delete an access token',
1641
+ },
1642
+ ],
1643
+ default: 'list',
1644
+ },
1645
+ {
1646
+ displayName: 'Token ID',
1647
+ name: 'tokenId',
1648
+ type: 'string',
1649
+ default: '',
1650
+ displayOptions: {
1651
+ show: {
1652
+ resource: ['accessToken'],
1653
+ operation: ['delete'],
1654
+ },
1655
+ },
1656
+ description: 'ID of the token to delete',
1657
+ },
1658
+ {
1659
+ displayName: 'JSON Parameters',
1660
+ name: 'jsonParameters',
1661
+ type: 'json',
1662
+ default: '{}',
1663
+ displayOptions: {
1664
+ show: {
1665
+ resource: ['archive', 'batch', 'group', 'run', 'step', 'template', 'message', 'passage', 'accessToken'],
1666
+ operation: ['create', 'update', 'list', 'search', 'createAgent'],
1667
+ },
1668
+ },
1669
+ description: 'Additional parameters to pass to the API in JSON format.',
1670
+ },
1671
+ {
1672
+ displayName: 'Operation',
1673
+ name: 'operation',
1674
+ type: 'options',
1675
+ noDataExpression: true,
1676
+ displayOptions: {
1677
+ show: {
1678
+ resource: ['block'],
1679
+ },
1680
+ },
1681
+ options: [
1682
+ {
1683
+ name: 'Create',
1684
+ value: 'create',
1685
+ description: 'Create a new block',
1686
+ action: 'Create a block',
1687
+ },
1688
+ {
1689
+ name: 'Delete',
1690
+ value: 'delete',
1691
+ description: 'Delete a block',
1692
+ action: 'Delete a block',
1693
+ },
1694
+ {
1695
+ name: 'Get',
1696
+ value: 'get',
1697
+ description: 'Get block details',
1698
+ action: 'Get block details',
1699
+ },
1700
+ {
1701
+ name: 'List',
1702
+ value: 'list',
1703
+ description: 'List all blocks',
1704
+ action: 'List all blocks',
1705
+ },
1706
+ {
1707
+ name: 'Update',
1708
+ value: 'update',
1709
+ description: 'Update a block',
1710
+ action: 'Update a block',
1711
+ },
1712
+ ],
1713
+ default: 'list',
1714
+ },
1715
+ {
1716
+ displayName: 'Block ID',
1717
+ name: 'blockId',
1718
+ type: 'string',
1719
+ default: '',
1720
+ required: true,
1721
+ displayOptions: {
1722
+ show: {
1723
+ resource: ['block'],
1724
+ operation: ['delete', 'get', 'update'],
1725
+ },
1726
+ },
1727
+ description: 'ID of the block to operate on',
1728
+ },
1729
+ {
1730
+ displayName: 'Label',
1731
+ name: 'label',
1732
+ type: 'string',
1733
+ default: '',
1734
+ required: true,
1735
+ displayOptions: {
1736
+ show: {
1737
+ resource: ['block'],
1738
+ operation: ['create', 'update'],
1739
+ },
1740
+ },
1741
+ description: 'Label for the memory block',
1742
+ },
1743
+ {
1744
+ displayName: 'Value',
1745
+ name: 'value',
1746
+ type: 'string',
1747
+ default: '',
1748
+ required: true,
1749
+ displayOptions: {
1750
+ show: {
1751
+ resource: ['block'],
1752
+ operation: ['create', 'update'],
1753
+ },
1754
+ },
1755
+ typeOptions: {
1756
+ rows: 4,
1757
+ },
1758
+ description: 'Content of the memory block',
1759
+ },
1760
+ {
1761
+ displayName: 'Operation',
1762
+ name: 'toolsOperation',
1763
+ type: 'options',
1764
+ noDataExpression: true,
1765
+ displayOptions: {
1766
+ show: {
1767
+ resource: ['tool'],
1768
+ },
1769
+ },
1770
+ options: [
1771
+ {
1772
+ name: 'Create',
1773
+ value: 'create',
1774
+ description: 'Create a new tool',
1775
+ action: 'Create a tool',
1776
+ },
1777
+ {
1778
+ name: 'Delete',
1779
+ value: 'delete',
1780
+ description: 'Delete a tool',
1781
+ action: 'Delete a tool',
1782
+ },
1783
+ {
1784
+ name: 'Get',
1785
+ value: 'get',
1786
+ description: 'Get tool details',
1787
+ action: 'Get tool details',
1788
+ },
1789
+ {
1790
+ name: 'List',
1791
+ value: 'list',
1792
+ description: 'List all tools',
1793
+ action: 'List all tools',
1794
+ },
1795
+ {
1796
+ name: 'Update',
1797
+ value: 'update',
1798
+ description: 'Update a tool',
1799
+ action: 'Update a tool',
1800
+ },
1801
+ {
1802
+ name: 'Upsert',
1803
+ value: 'upsert',
1804
+ description: 'Create or update a tool',
1805
+ action: 'Upsert a tool',
1806
+ },
1807
+ {
1808
+ name: 'Search',
1809
+ value: 'search',
1810
+ description: 'Search tools using semantic search',
1811
+ action: 'Search tools',
1812
+ },
1813
+ ],
1814
+ default: 'list',
1815
+ },
1816
+ {
1817
+ displayName: 'Search Query',
1818
+ name: 'toolSearchQuery',
1819
+ type: 'string',
1820
+ default: '',
1821
+ displayOptions: {
1822
+ show: {
1823
+ resource: ['tool'],
1824
+ toolsOperation: ['search'],
1825
+ },
1826
+ },
1827
+ description: 'Text to search for',
1828
+ },
1829
+ {
1830
+ displayName: 'Limit',
1831
+ name: 'toolSearchLimit',
1832
+ type: 'number',
1833
+ default: 10,
1834
+ displayOptions: {
1835
+ show: {
1836
+ resource: ['tool'],
1837
+ toolsOperation: ['search'],
1838
+ },
1839
+ },
1840
+ description: 'Max number of results',
1841
+ },
1842
+ {
1843
+ displayName: 'Search Mode',
1844
+ name: 'toolSearchMode',
1845
+ type: 'options',
1846
+ options: [
1847
+ { name: 'Hybrid', value: 'hybrid' },
1848
+ { name: 'Vector', value: 'vector' },
1849
+ { name: 'Full Text', value: 'fts' },
1850
+ ],
1851
+ default: 'hybrid',
1852
+ displayOptions: {
1853
+ show: {
1854
+ resource: ['tool'],
1855
+ toolsOperation: ['search'],
1856
+ },
1857
+ },
1858
+ description: 'Search algorithm to use',
1859
+ },
1034
1860
  {
1035
1861
  displayName: 'Tool ID',
1036
1862
  name: 'toolId',
1037
- type: 'string',
1863
+ type: 'options',
1864
+ typeOptions: {
1865
+ loadOptionsMethod: 'getLettaTools',
1866
+ },
1038
1867
  default: '',
1039
1868
  required: true,
1040
1869
  displayOptions: {
@@ -1060,17 +1889,48 @@ exports.UNIVERSAL_AGENT_DESCRIPTION = {
1060
1889
  description: 'Name of the tool',
1061
1890
  },
1062
1891
  {
1063
- displayName: 'Tags',
1064
- name: 'toolTags',
1892
+ displayName: 'Tool Name',
1893
+ name: 'agentToolName',
1065
1894
  type: 'string',
1066
1895
  default: '',
1896
+ required: true,
1897
+ displayOptions: {
1898
+ show: {
1899
+ resource: ['agent'],
1900
+ operation: ['runTool'],
1901
+ },
1902
+ },
1903
+ description: 'Name of the tool to run',
1904
+ },
1905
+ {
1906
+ displayName: 'Tags',
1907
+ name: 'toolTags',
1908
+ type: 'fixedCollection',
1909
+ typeOptions: {
1910
+ multipleValues: true,
1911
+ },
1912
+ default: {},
1067
1913
  displayOptions: {
1068
1914
  show: {
1069
1915
  resource: ['tool'],
1070
1916
  toolsOperation: ['create', 'update', 'upsert'],
1071
1917
  },
1072
1918
  },
1073
- description: 'Comma-separated list of tags',
1919
+ options: [
1920
+ {
1921
+ name: 'tag',
1922
+ displayName: 'Tag',
1923
+ values: [
1924
+ {
1925
+ displayName: 'Value',
1926
+ name: 'value',
1927
+ type: 'string',
1928
+ default: '',
1929
+ },
1930
+ ],
1931
+ },
1932
+ ],
1933
+ description: 'Tags associated with the tool',
1074
1934
  },
1075
1935
  {
1076
1936
  displayName: 'Source Code',
@@ -1084,23 +1944,164 @@ exports.UNIVERSAL_AGENT_DESCRIPTION = {
1084
1944
  toolsOperation: ['create', 'update', 'upsert'],
1085
1945
  },
1086
1946
  },
1087
- typeOptions: {
1088
- rows: 10,
1089
- },
1090
- description: 'Python source code for the tool',
1947
+ typeOptions: {
1948
+ rows: 10,
1949
+ },
1950
+ description: 'Python source code for the tool',
1951
+ },
1952
+ {
1953
+ displayName: 'Description',
1954
+ name: 'toolDescription',
1955
+ type: 'string',
1956
+ default: '',
1957
+ displayOptions: {
1958
+ show: {
1959
+ resource: ['tool'],
1960
+ toolsOperation: ['create', 'update', 'upsert'],
1961
+ },
1962
+ },
1963
+ description: 'Optional description for the tool',
1964
+ },
1965
+ {
1966
+ displayName: 'Source Type',
1967
+ name: 'toolSourceType',
1968
+ type: 'string',
1969
+ default: '',
1970
+ displayOptions: {
1971
+ show: {
1972
+ resource: ['tool'],
1973
+ toolsOperation: ['create', 'update', 'upsert'],
1974
+ },
1975
+ },
1976
+ description: 'The type of the source code',
1977
+ },
1978
+ {
1979
+ displayName: 'Return Char Limit',
1980
+ name: 'toolReturnCharLimit',
1981
+ type: 'number',
1982
+ default: 2000,
1983
+ displayOptions: {
1984
+ show: {
1985
+ resource: ['tool'],
1986
+ toolsOperation: ['create', 'update', 'upsert'],
1987
+ },
1988
+ },
1989
+ description: 'The maximum number of characters in the response',
1990
+ },
1991
+ {
1992
+ displayName: 'Default Requires Approval',
1993
+ name: 'toolDefaultRequiresApproval',
1994
+ type: 'boolean',
1995
+ default: false,
1996
+ displayOptions: {
1997
+ show: {
1998
+ resource: ['tool'],
1999
+ toolsOperation: ['create', 'update', 'upsert'],
2000
+ },
2001
+ },
2002
+ description: 'Whether executing this tool requires approval by default',
2003
+ },
2004
+ {
2005
+ displayName: 'Enable Parallel Execution',
2006
+ name: 'toolEnableParallelExecution',
2007
+ type: 'boolean',
2008
+ default: false,
2009
+ displayOptions: {
2010
+ show: {
2011
+ resource: ['tool'],
2012
+ toolsOperation: ['create', 'update', 'upsert'],
2013
+ },
2014
+ },
2015
+ description: 'Whether to allow this tool to be executed concurrently with other tools',
2016
+ },
2017
+ {
2018
+ displayName: 'Arg JSON Schema',
2019
+ name: 'toolArgsJsonSchema',
2020
+ type: 'json',
2021
+ default: '{}',
2022
+ displayOptions: {
2023
+ show: {
2024
+ resource: ['tool'],
2025
+ toolsOperation: ['create', 'update', 'upsert'],
2026
+ },
2027
+ },
2028
+ description: 'The JSON schema for the tool arguments',
2029
+ },
2030
+ {
2031
+ displayName: 'NPM Requirements',
2032
+ name: 'toolNpmRequirements',
2033
+ type: 'fixedCollection',
2034
+ typeOptions: {
2035
+ multipleValues: true,
2036
+ },
2037
+ default: {},
2038
+ displayOptions: {
2039
+ show: {
2040
+ resource: ['tool'],
2041
+ toolsOperation: ['create', 'update', 'upsert'],
2042
+ },
2043
+ },
2044
+ options: [
2045
+ {
2046
+ name: 'requirement',
2047
+ displayName: 'Requirement',
2048
+ values: [
2049
+ {
2050
+ displayName: 'Name',
2051
+ name: 'name',
2052
+ type: 'string',
2053
+ default: '',
2054
+ description: 'Name of the NPM package',
2055
+ },
2056
+ {
2057
+ displayName: 'Version',
2058
+ name: 'version',
2059
+ type: 'string',
2060
+ default: '',
2061
+ description: 'Version of the NPM package',
2062
+ },
2063
+ ],
2064
+ },
2065
+ ],
2066
+ description: 'NPM packages required by this tool',
1091
2067
  },
1092
2068
  {
1093
- displayName: 'Description',
1094
- name: 'toolDescription',
1095
- type: 'string',
1096
- default: '',
2069
+ displayName: 'PIP Requirements',
2070
+ name: 'toolPipRequirements',
2071
+ type: 'fixedCollection',
2072
+ typeOptions: {
2073
+ multipleValues: true,
2074
+ },
2075
+ default: {},
1097
2076
  displayOptions: {
1098
2077
  show: {
1099
2078
  resource: ['tool'],
1100
2079
  toolsOperation: ['create', 'update', 'upsert'],
1101
2080
  },
1102
2081
  },
1103
- description: 'Optional description for the tool',
2082
+ options: [
2083
+ {
2084
+ name: 'requirement',
2085
+ displayName: 'Requirement',
2086
+ values: [
2087
+ {
2088
+ displayName: 'Name',
2089
+ name: 'name',
2090
+ type: 'string',
2091
+ default: '',
2092
+ description: 'Name of the PIP package',
2093
+ },
2094
+ {
2095
+ displayName: 'Version',
2096
+ name: 'version',
2097
+ type: 'string',
2098
+ default: '',
2099
+ description: 'Version of the PIP package',
2100
+ },
2101
+ ],
2102
+ },
2103
+ ],
2104
+ description: 'PIP packages required by this tool',
1104
2105
  },
1105
2106
  {
1106
2107
  displayName: 'Operation',
@@ -1298,10 +2299,22 @@ exports.UNIVERSAL_AGENT_DESCRIPTION = {
1298
2299
  },
1299
2300
  options: [
1300
2301
  {
1301
- name: 'Add',
1302
- value: 'add',
1303
- description: 'Add an MCP server',
1304
- action: 'Add an MCP server',
2302
+ name: 'Create',
2303
+ value: 'create',
2304
+ description: 'Create an MCP server',
2305
+ action: 'Create an MCP server',
2306
+ },
2307
+ {
2308
+ name: 'Delete',
2309
+ value: 'delete',
2310
+ description: 'Delete an MCP server',
2311
+ action: 'Delete an MCP server',
2312
+ },
2313
+ {
2314
+ name: 'Get',
2315
+ value: 'get',
2316
+ description: 'Get an MCP server',
2317
+ action: 'Get an MCP server',
1305
2318
  },
1306
2319
  {
1307
2320
  name: 'List',
@@ -1310,55 +2323,314 @@ exports.UNIVERSAL_AGENT_DESCRIPTION = {
1310
2323
  action: 'List MCP servers',
1311
2324
  },
1312
2325
  {
1313
- name: 'Remove',
1314
- value: 'remove',
1315
- description: 'Remove an MCP server',
1316
- action: 'Remove an MCP server',
2326
+ name: 'Refresh',
2327
+ value: 'refresh',
2328
+ description: 'Refresh tools for an MCP server',
2329
+ action: 'Refresh an MCP server',
2330
+ },
2331
+ {
2332
+ name: 'Update',
2333
+ value: 'update',
2334
+ description: 'Update an MCP server',
2335
+ action: 'Update an MCP server',
2336
+ },
2337
+ {
2338
+ name: 'List Tools',
2339
+ value: 'listTools',
2340
+ description: 'List tools for a specific MCP server',
2341
+ action: 'List MCP server tools',
2342
+ },
2343
+ {
2344
+ name: 'Get Tool',
2345
+ value: 'getTool',
2346
+ description: 'Get a specific MCP tool by ID',
2347
+ action: 'Get an MCP server tool',
1317
2348
  },
1318
2349
  ],
1319
2350
  default: 'list',
1320
2351
  },
2352
+ {
2353
+ displayName: 'Server ID',
2354
+ name: 'serverId',
2355
+ type: 'string',
2356
+ default: '',
2357
+ required: true,
2358
+ displayOptions: {
2359
+ show: {
2360
+ resource: ['mcpServer'],
2361
+ operation: ['get', 'update', 'delete', 'refresh', 'listTools', 'getTool'],
2362
+ },
2363
+ },
2364
+ description: 'ID of the MCP server (mcp_server_id)',
2365
+ },
1321
2366
  {
1322
2367
  displayName: 'Server Name',
1323
- name: 'name',
2368
+ name: 'serverName',
1324
2369
  type: 'string',
1325
2370
  default: '',
1326
2371
  required: true,
1327
2372
  displayOptions: {
1328
2373
  show: {
1329
2374
  resource: ['mcpServer'],
1330
- operation: ['add'],
2375
+ operation: ['create'],
2376
+ },
2377
+ },
2378
+ description: 'The name of the MCP server (server_name)',
2379
+ },
2380
+ {
2381
+ displayName: 'Server Name',
2382
+ name: 'serverName',
2383
+ type: 'string',
2384
+ default: '',
2385
+ required: false,
2386
+ displayOptions: {
2387
+ show: {
2388
+ resource: ['mcpServer'],
2389
+ operation: ['update'],
2390
+ },
2391
+ },
2392
+ description: 'The name of the MCP server (server_name)',
2393
+ },
2394
+ {
2395
+ displayName: 'MCP Server Type',
2396
+ name: 'mcpServerType',
2397
+ type: 'options',
2398
+ default: 'streamable_http',
2399
+ options: [
2400
+ { name: 'Streamable HTTP', value: 'streamable_http' },
2401
+ { name: 'SSE', value: 'sse' },
2402
+ { name: 'Stdio', value: 'stdio' },
2403
+ ],
2404
+ displayOptions: {
2405
+ show: {
2406
+ resource: ['mcpServer'],
2407
+ operation: ['create', 'update'],
1331
2408
  },
1332
2409
  },
1333
- description: 'Name for the MCP server',
2410
+ description: 'The MCP server transport type',
1334
2411
  },
1335
2412
  {
1336
2413
  displayName: 'Server URL',
1337
- name: 'url',
2414
+ name: 'serverUrl',
1338
2415
  type: 'string',
1339
2416
  default: '',
1340
2417
  required: true,
1341
2418
  displayOptions: {
1342
2419
  show: {
1343
2420
  resource: ['mcpServer'],
1344
- operation: ['add'],
2421
+ operation: ['create'],
2422
+ mcpServerType: ['sse', 'streamable_http'],
1345
2423
  },
1346
2424
  },
1347
- description: 'URL of the MCP server',
2425
+ description: 'The URL of the MCP server (server_url)',
1348
2426
  },
1349
2427
  {
1350
- displayName: 'Server ID',
1351
- name: 'serverId',
2428
+ displayName: 'Server URL',
2429
+ name: 'serverUrl',
2430
+ type: 'string',
2431
+ default: '',
2432
+ required: false,
2433
+ displayOptions: {
2434
+ show: {
2435
+ resource: ['mcpServer'],
2436
+ operation: ['update'],
2437
+ mcpServerType: ['sse', 'streamable_http'],
2438
+ },
2439
+ },
2440
+ description: 'The URL of the MCP server (server_url)',
2441
+ },
2442
+ {
2443
+ displayName: 'Auth Header',
2444
+ name: 'authHeader',
2445
+ type: 'string',
2446
+ default: '',
2447
+ displayOptions: {
2448
+ show: {
2449
+ resource: ['mcpServer'],
2450
+ operation: ['create', 'update'],
2451
+ mcpServerType: ['sse', 'streamable_http'],
2452
+ },
2453
+ },
2454
+ description: "The name of the authentication header (e.g. 'Authorization')",
2455
+ },
2456
+ {
2457
+ displayName: 'Auth Token',
2458
+ name: 'authToken',
2459
+ type: 'string',
2460
+ default: '',
2461
+ typeOptions: {
2462
+ password: true,
2463
+ },
2464
+ displayOptions: {
2465
+ show: {
2466
+ resource: ['mcpServer'],
2467
+ operation: ['create', 'update'],
2468
+ mcpServerType: ['sse', 'streamable_http'],
2469
+ },
2470
+ },
2471
+ description: 'The authentication token or API key value',
2472
+ },
2473
+ {
2474
+ displayName: 'Custom Headers',
2475
+ name: 'customHeaders',
2476
+ type: 'fixedCollection',
2477
+ typeOptions: {
2478
+ multipleValues: true,
2479
+ },
2480
+ default: {},
2481
+ displayOptions: {
2482
+ show: {
2483
+ resource: ['mcpServer'],
2484
+ operation: ['create', 'update'],
2485
+ mcpServerType: ['sse', 'streamable_http'],
2486
+ },
2487
+ },
2488
+ options: [
2489
+ {
2490
+ name: 'header',
2491
+ displayName: 'Header',
2492
+ values: [
2493
+ {
2494
+ displayName: 'Key',
2495
+ name: 'key',
2496
+ type: 'string',
2497
+ default: '',
2498
+ },
2499
+ {
2500
+ displayName: 'Value',
2501
+ name: 'value',
2502
+ type: 'string',
2503
+ default: '',
2504
+ },
2505
+ ],
2506
+ },
2507
+ ],
2508
+ description: 'Custom HTTP headers to include with requests',
2509
+ },
2510
+ {
2511
+ displayName: 'Command',
2512
+ name: 'stdioCommand',
2513
+ type: 'string',
2514
+ default: '',
2515
+ required: true,
2516
+ displayOptions: {
2517
+ show: {
2518
+ resource: ['mcpServer'],
2519
+ operation: ['create'],
2520
+ mcpServerType: ['stdio'],
2521
+ },
2522
+ },
2523
+ description: 'The command to run (stdio MCP server)',
2524
+ },
2525
+ {
2526
+ displayName: 'Command',
2527
+ name: 'stdioCommand',
2528
+ type: 'string',
2529
+ default: '',
2530
+ required: false,
2531
+ displayOptions: {
2532
+ show: {
2533
+ resource: ['mcpServer'],
2534
+ operation: ['update'],
2535
+ mcpServerType: ['stdio'],
2536
+ },
2537
+ },
2538
+ description: 'The command to run (stdio MCP server)',
2539
+ },
2540
+ {
2541
+ displayName: 'Args',
2542
+ name: 'stdioArgs',
2543
+ type: 'fixedCollection',
2544
+ typeOptions: {
2545
+ multipleValues: true,
2546
+ },
2547
+ default: {},
2548
+ displayOptions: {
2549
+ show: {
2550
+ resource: ['mcpServer'],
2551
+ operation: ['create', 'update'],
2552
+ mcpServerType: ['stdio'],
2553
+ },
2554
+ },
2555
+ options: [
2556
+ {
2557
+ name: 'arg',
2558
+ displayName: 'Arg',
2559
+ values: [
2560
+ {
2561
+ displayName: 'Value',
2562
+ name: 'value',
2563
+ type: 'string',
2564
+ default: '',
2565
+ },
2566
+ ],
2567
+ },
2568
+ ],
2569
+ description: 'Arguments to pass to the command',
2570
+ },
2571
+ {
2572
+ displayName: 'Env',
2573
+ name: 'stdioEnv',
2574
+ type: 'fixedCollection',
2575
+ typeOptions: {
2576
+ multipleValues: true,
2577
+ },
2578
+ default: {},
2579
+ displayOptions: {
2580
+ show: {
2581
+ resource: ['mcpServer'],
2582
+ operation: ['create', 'update'],
2583
+ mcpServerType: ['stdio'],
2584
+ },
2585
+ },
2586
+ options: [
2587
+ {
2588
+ name: 'env',
2589
+ displayName: 'Env Var',
2590
+ values: [
2591
+ {
2592
+ displayName: 'Key',
2593
+ name: 'key',
2594
+ type: 'string',
2595
+ default: '',
2596
+ },
2597
+ {
2598
+ displayName: 'Value',
2599
+ name: 'value',
2600
+ type: 'string',
2601
+ default: '',
2602
+ },
2603
+ ],
2604
+ },
2605
+ ],
2606
+ description: 'Environment variables to set',
2607
+ },
2608
+ {
2609
+ displayName: 'Tool ID',
2610
+ name: 'toolId',
1352
2611
  type: 'string',
1353
2612
  default: '',
1354
2613
  required: true,
1355
2614
  displayOptions: {
1356
2615
  show: {
1357
2616
  resource: ['mcpServer'],
1358
- operation: ['remove'],
2617
+ operation: ['getTool'],
2618
+ },
2619
+ },
2620
+ description: 'The tool ID to retrieve',
2621
+ },
2622
+ {
2623
+ displayName: 'Agent ID',
2624
+ name: 'agentId',
2625
+ type: 'string',
2626
+ default: '',
2627
+ displayOptions: {
2628
+ show: {
2629
+ resource: ['mcpServer'],
2630
+ operation: ['refresh'],
1359
2631
  },
1360
2632
  },
1361
- description: 'ID of the server to remove',
2633
+ description: 'Optional agent_id used when refreshing MCP server tools',
1362
2634
  },
1363
2635
  {
1364
2636
  displayName: 'Operation',