@@ -110,6 +110,73 @@ export const DeleteProcessSchema = z.object({
110110 . describe ( "Unique identifier of the process to delete (UUID or slug)" ) ,
111111} ) ;
112112
113+ // Schema for updating a process
114+ export const UpdateProcessSchema = z . object ( {
115+ identifier : z
116+ . string ( )
117+ . describe ( "Unique identifier of the process to update (UUID or slug)" ) ,
118+ name : z
119+ . string ( )
120+ . optional ( )
121+ . describe (
122+ "The updated name of the process. This will be displayed in the UI and used for identification."
123+ ) ,
124+ slug : z
125+ . string ( )
126+ . optional ( )
127+ . describe (
128+ "The updated unique identifier for the process. Used in URLs and API calls. Must be URL-safe (lowercase, hyphens, no spaces)."
129+ ) ,
130+ description : z
131+ . string ( )
132+ . optional ( )
133+ . describe (
134+ "The updated detailed description of what the process does. This helps users understand the process purpose and functionality."
135+ ) ,
136+ readme : z
137+ . string ( )
138+ . optional ( )
139+ . describe (
140+ "The updated markdown documentation for the process. This can include usage instructions, examples, and additional context."
141+ ) ,
142+ sourceCode : z
143+ . string ( )
144+ . optional ( )
145+ . describe (
146+ "The updated source code of the process. This is the executable code that will run when the process is executed."
147+ ) ,
148+ parametersSchema : z
149+ . string ( )
150+ . optional ( )
151+ . describe (
152+ "The updated JSON Schema defining the input parameters for the process. This schema is used to generate forms in the UI and validate input data."
153+ ) ,
154+ webhook : z
155+ . record ( z . any ( ) )
156+ . optional ( )
157+ . describe (
158+ "Updated webhook configuration for the process. Defines how the process can be triggered via HTTP webhooks."
159+ ) ,
160+ settings : z
161+ . record ( z . any ( ) )
162+ . optional ( )
163+ . describe (
164+ "Updated process settings and configuration options. Includes publication settings, form configurations, and dependencies."
165+ ) ,
166+ manifest : z
167+ . record ( z . any ( ) )
168+ . optional ( )
169+ . describe (
170+ "Updated process manifest configuration. Contains metadata and configuration for the process deployment and execution."
171+ ) ,
172+ tags : z
173+ . array ( z . string ( ) )
174+ . optional ( )
175+ . describe (
176+ "Updated tags for categorizing and organizing processes. Used for filtering and grouping in the UI."
177+ ) ,
178+ } ) ;
179+
113180// Schema for getting process versions
114181export const GetProcessVersionsSchema = z . object ( {
115182 processId : z . string ( ) . describe ( "Process ID" ) ,
@@ -218,6 +285,7 @@ export const processesToolNames = {
218285 getProcesses : "get_processes" ,
219286 createProcess : "create_process" ,
220287 getProcess : "get_process" ,
288+ updateProcess : "update_process" ,
221289 deleteProcess : "delete_process" ,
222290 getProcessVersions : "get_process_versions" ,
223291 executeProcessAsync : "execute_process_async" ,
@@ -346,6 +414,74 @@ export const processesToolDefinitions = [
346414 required : [ "identifier" ] ,
347415 } ,
348416 } ,
417+ {
418+ name : processesToolNames . updateProcess ,
419+ title : "Update Process" ,
420+ description :
421+ "Updates an existing process with new configuration, source code, or metadata. All fields provided will replace the existing values." ,
422+ inputSchema : {
423+ type : "object" ,
424+ properties : {
425+ identifier : {
426+ type : "string" ,
427+ description :
428+ "Unique identifier of the process to update (UUID or slug)" ,
429+ } ,
430+ name : {
431+ type : "string" ,
432+ description :
433+ "The updated name of the process. This will be displayed in the UI and used for identification." ,
434+ } ,
435+ slug : {
436+ type : "string" ,
437+ description :
438+ "The updated unique identifier for the process. Used in URLs and API calls. Must be URL-safe (lowercase, hyphens, no spaces)." ,
439+ } ,
440+ description : {
441+ type : "string" ,
442+ description :
443+ "The updated detailed description of what the process does. This helps users understand the process purpose and functionality." ,
444+ } ,
445+ readme : {
446+ type : "string" ,
447+ description :
448+ "The updated markdown documentation for the process. This can include usage instructions, examples, and additional context." ,
449+ } ,
450+ sourceCode : {
451+ type : "string" ,
452+ description :
453+ "The updated source code of the process. This is the executable code that will run when the process is executed." ,
454+ } ,
455+ parametersSchema : {
456+ type : "string" ,
457+ description :
458+ "The updated JSON Schema defining the input parameters for the process. This schema is used to generate forms in the UI and validate input data." ,
459+ } ,
460+ webhook : {
461+ type : "object" ,
462+ description :
463+ "Updated webhook configuration for the process. Defines how the process can be triggered via HTTP webhooks." ,
464+ } ,
465+ settings : {
466+ type : "object" ,
467+ description :
468+ "Updated process settings and configuration options. Includes publication settings, form configurations, and dependencies." ,
469+ } ,
470+ manifest : {
471+ type : "object" ,
472+ description :
473+ "Updated process manifest configuration. Contains metadata and configuration for the process deployment and execution." ,
474+ } ,
475+ tags : {
476+ type : "array" ,
477+ items : { type : "string" } ,
478+ description :
479+ "Updated tags for categorizing and organizing processes. Used for filtering and grouping in the UI." ,
480+ } ,
481+ } ,
482+ required : [ "identifier" ] ,
483+ } ,
484+ } ,
349485 {
350486 name : processesToolNames . deleteProcess ,
351487 title : "Delete Process" ,
0 commit comments