{
  "name": "Agents Conductor",
  "description": "Module for Agents orchestration This is a BETA version.",
  "version": "0.2.0",
  "vendor": "Mulesoft",
  "supportedJavaVersions": [
    "17"
  ],
  "category": "SELECT",
  "xmlDsl": {
    "prefix": "agents-conductor",
    "namespace": "http://www.mulesoft.org/schema/mule/agents-conductor",
    "schemaLocation": "http://www.mulesoft.org/schema/mule/agents-conductor/current/mule-agents-conductor.xsd",
    "schemaVersion": "0.2.0",
    "xsdFileName": "mule-agents-conductor.xsd"
  },
  "resources": [],
  "subTypes": [
    {
      "baseType": {
        "format": "java",
        "type": "@ref:com.mulesoft.modules.agent.conductor.api.model.llm.LLMSettings"
      },
      "subTypes": [
        {
          "format": "java",
          "type": "@ref:com.mulesoft.modules.agent.conductor.api.model.llm.einstein.EinsteinSettings"
        }
      ]
    }
  ],
  "privilegedPackages": [],
  "privilegedArtifacts": [],
  "externalLibraries": [],
  "importedTypes": [
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "org.mule.runtime.api.store.ObjectStore",
        "extensibleType": {},
        "typeAlias": {
          "value": "ObjectStore"
        },
        "classInformation": {
          "classname": "org.mule.runtime.api.store.ObjectStore",
          "hasDefaultConstructor": false,
          "isInterface": true,
          "isInstantiable": false,
          "isAbstract": true,
          "isFinal": false,
          "implementedInterfaces": [],
          "parent": "",
          "genericTypes": [],
          "isMap": false
        }
      },
      "fields": []
    }
  ],
  "configurations": [
    {
      "stereotype": {
        "type": "CONFIG",
        "namespace": "AGENTS-CONDUCTOR",
        "parent": {
          "type": "MODULE_CONFIG",
          "namespace": "MULE"
        }
      },
      "parameterGroupModels": [
        {
          "parameters": [
            {
              "type": {
                "format": "java",
                "type": "Number",
                "annotations": {
                  "classInformation": {
                    "classname": "java.lang.Integer",
                    "hasDefaultConstructor": false,
                    "isInterface": false,
                    "isInstantiable": false,
                    "isAbstract": false,
                    "isFinal": true,
                    "implementedInterfaces": [],
                    "parent": "java.lang.Number",
                    "genericTypes": [],
                    "isMap": false
                  },
                  "int": {}
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "fieldValueProviderModels": [],
              "expressionSupport": "NOT_SUPPORTED",
              "defaultValue": "25",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1
              },
              "allowedStereotypeModels": [],
              "semanticTerms": [],
              "name": "maxNumberOfLoops",
              "displayModel": {
                "displayName": "Max Number of Loops",
                "summary": "The maximum number of iterations to control the flow\u0027s execution."
              },
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Number",
                "annotations": {
                  "classInformation": {
                    "classname": "java.lang.Integer",
                    "hasDefaultConstructor": false,
                    "isInterface": false,
                    "isInstantiable": false,
                    "isAbstract": false,
                    "isFinal": true,
                    "implementedInterfaces": [],
                    "parent": "java.lang.Number",
                    "genericTypes": [],
                    "isMap": false
                  },
                  "int": {}
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "fieldValueProviderModels": [],
              "expressionSupport": "NOT_SUPPORTED",
              "defaultValue": "3",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 2
              },
              "allowedStereotypeModels": [],
              "semanticTerms": [],
              "name": "maxConsecutiveErrors",
              "displayModel": {
                "displayName": "Max Consecutive Errors",
                "summary": "The maximum number of errors that the orchestrator will attempt to self-heal before returning a failed status."
              },
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "@ref:org.mule.runtime.api.store.ObjectStore"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "fieldValueProviderModels": [],
              "expressionSupport": "NOT_SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": true,
                "allowsReferences": true,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 3
              },
              "allowedStereotypeModels": [
                {
                  "type": "OBJECT_STORE",
                  "namespace": "OS"
                }
              ],
              "semanticTerms": [],
              "name": "conversationStateObjectStore",
              "displayModel": {
                "displayName": "Conversation State ObjectStore",
                "summary": "Object Store for managing the state of task execution."
              },
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": true,
              "isConfigOverride": false,
              "isComponentId": true,
              "fieldValueProviderModels": [],
              "expressionSupport": "NOT_SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 4
              },
              "allowedStereotypeModels": [],
              "semanticTerms": [],
              "name": "name",
              "description": "The identifier of this element used to reference it in other components",
              "modelProperties": {}
            }
          ],
          "exclusiveParametersModels": [],
          "layoutModel": {
            "password": false,
            "text": false,
            "query": false,
            "order": 1
          },
          "showInDsl": false,
          "name": "General",
          "description": "",
          "modelProperties": {}
        }
      ],
      "externalLibraryModels": [],
      "operations": [
        {
          "blocking": false,
          "executionType": "CPU_LITE",
          "output": {
            "type": {
              "format": "java",
              "type": "@ref:com.mulesoft.modules.agent.conductor.api.model.Orchestration"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "outputAttributes": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "transactional": false,
          "requiresConnection": false,
          "supportsStreaming": false,
          "notifications": [],
          "nestedComponents": [
            {
              "minOccurs": 0,
              "errors": [],
              "semanticTerms": [],
              "visibility": "PUBLIC",
              "parameterGroupModels": [
                {
                  "parameters": [
                    {
                      "type": {
                        "format": "java",
                        "type": "String"
                      },
                      "hasDynamicType": false,
                      "required": true,
                      "isConfigOverride": false,
                      "isComponentId": false,
                      "fieldValueProviderModels": [],
                      "expressionSupport": "SUPPORTED",
                      "role": "BEHAVIOUR",
                      "dslConfiguration": {
                        "allowsInlineDefinition": true,
                        "allowsReferences": true,
                        "allowTopLevelDefinition": false
                      },
                      "allowedStereotypeModels": [],
                      "semanticTerms": [],
                      "name": "name",
                      "description": "",
                      "modelProperties": {}
                    },
                    {
                      "type": {
                        "format": "java",
                        "type": "String"
                      },
                      "hasDynamicType": false,
                      "required": true,
                      "isConfigOverride": false,
                      "isComponentId": false,
                      "fieldValueProviderModels": [],
                      "expressionSupport": "SUPPORTED",
                      "role": "BEHAVIOUR",
                      "dslConfiguration": {
                        "allowsInlineDefinition": true,
                        "allowsReferences": true,
                        "allowTopLevelDefinition": false
                      },
                      "allowedStereotypeModels": [],
                      "semanticTerms": [],
                      "name": "description",
                      "description": "",
                      "modelProperties": {}
                    },
                    {
                      "type": {
                        "format": "java",
                        "type": "String"
                      },
                      "hasDynamicType": false,
                      "required": true,
                      "isConfigOverride": false,
                      "isComponentId": false,
                      "fieldValueProviderModels": [],
                      "expressionSupport": "SUPPORTED",
                      "role": "BEHAVIOUR",
                      "dslConfiguration": {
                        "allowsInlineDefinition": true,
                        "allowsReferences": true,
                        "allowTopLevelDefinition": false
                      },
                      "allowedStereotypeModels": [],
                      "semanticTerms": [],
                      "name": "input",
                      "description": "",
                      "modelProperties": {}
                    },
                    {
                      "type": {
                        "format": "java",
                        "type": "String"
                      },
                      "hasDynamicType": false,
                      "required": true,
                      "isConfigOverride": false,
                      "isComponentId": false,
                      "fieldValueProviderModels": [],
                      "expressionSupport": "SUPPORTED",
                      "role": "BEHAVIOUR",
                      "dslConfiguration": {
                        "allowsInlineDefinition": true,
                        "allowsReferences": true,
                        "allowTopLevelDefinition": false
                      },
                      "allowedStereotypeModels": [],
                      "semanticTerms": [],
                      "name": "output",
                      "description": "",
                      "modelProperties": {}
                    }
                  ],
                  "exclusiveParametersModels": [],
                  "showInDsl": false,
                  "name": "General",
                  "description": "",
                  "modelProperties": {}
                }
              ],
              "name": "tools",
              "description": "",
              "modelProperties": {},
              "childComponents": [
                {
                  "executionOccurrence": "MULTIPLE_OR_NONE",
                  "isRequired": true,
                  "allowedStereotypes": [
                    {
                      "type": "PROCESSOR",
                      "namespace": "MULE"
                    }
                  ],
                  "minOccurs": 1,
                  "maxOccurs": 1,
                  "nestedComponents": [],
                  "errors": [],
                  "semanticTerms": [],
                  "visibility": "PUBLIC",
                  "parameterGroupModels": [],
                  "name": "processors",
                  "description": "",
                  "modelProperties": {},
                  "kind": "chain"
                }
              ],
              "kind": "route"
            }
          ],
          "errors": [
            "AGENTS-CONDUCTOR:TOOL_ERROR",
            "AGENTS-CONDUCTOR:REASONING_ERROR",
            "AGENTS-CONDUCTOR:LLM_ERROR",
            "AGENTS-CONDUCTOR:MAX_LOOPS"
          ],
          "semanticTerms": [],
          "visibility": "PUBLIC",
          "stereotype": {
            "type": "AGENT_LOOP",
            "namespace": "AGENTS-CONDUCTOR",
            "parent": {
              "type": "PROCESSOR",
              "namespace": "AGENTS-CONDUCTOR",
              "parent": {
                "type": "PROCESSOR",
                "namespace": "MULE"
              }
            }
          },
          "parameterGroupModels": [
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "fieldValueProviderModels": [],
                  "expressionSupport": "REQUIRED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1
                  },
                  "allowedStereotypeModels": [],
                  "semanticTerms": [],
                  "name": "taskId",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "fieldValueProviderModels": [],
                  "expressionSupport": "REQUIRED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 2
                  },
                  "allowedStereotypeModels": [],
                  "semanticTerms": [],
                  "name": "contextId",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "fieldValueProviderModels": [],
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[payload]",
                  "role": "PRIMARY_CONTENT",
                  "dslConfiguration": {
                    "allowsInlineDefinition": true,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 3
                  },
                  "allowedStereotypeModels": [],
                  "semanticTerms": [],
                  "name": "prompt",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "@ref:com.mulesoft.modules.agent.conductor.api.model.llm.LLMSettings"
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "fieldValueProviderModels": [],
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": true,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 4
                  },
                  "allowedStereotypeModels": [],
                  "semanticTerms": [],
                  "name": "llm",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "fieldValueProviderModels": [],
                  "expressionSupport": "SUPPORTED",
                  "role": "CONTENT",
                  "dslConfiguration": {
                    "allowsInlineDefinition": true,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 5
                  },
                  "allowedStereotypeModels": [],
                  "semanticTerms": [],
                  "name": "instructions",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "fieldValueProviderModels": [],
                  "expressionSupport": "SUPPORTED",
                  "role": "CONTENT",
                  "dslConfiguration": {
                    "allowsInlineDefinition": true,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 6
                  },
                  "allowedStereotypeModels": [],
                  "semanticTerms": [],
                  "name": "groundings",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Array",
                    "annotations": {
                      "classInformation": {
                        "classname": "java.util.List",
                        "hasDefaultConstructor": false,
                        "isInterface": true,
                        "isInstantiable": false,
                        "isAbstract": true,
                        "isFinal": false,
                        "implementedInterfaces": [],
                        "parent": "",
                        "genericTypes": [
                          "com.mulesoft.modules.agent.conductor.api.model.mcp.McpServer"
                        ],
                        "isMap": false
                      }
                    },
                    "item": {
                      "type": "@ref:com.mulesoft.modules.agent.conductor.api.model.mcp.McpServer"
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "fieldValueProviderModels": [],
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": true,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 7
                  },
                  "allowedStereotypeModels": [],
                  "semanticTerms": [],
                  "name": "mcpServers",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Array",
                    "annotations": {
                      "classInformation": {
                        "classname": "java.util.List",
                        "hasDefaultConstructor": false,
                        "isInterface": true,
                        "isInstantiable": false,
                        "isAbstract": true,
                        "isFinal": false,
                        "implementedInterfaces": [],
                        "parent": "",
                        "genericTypes": [
                          "com.mulesoft.modules.agent.conductor.api.model.a2a.A2AClient"
                        ],
                        "isMap": false
                      }
                    },
                    "item": {
                      "type": "@ref:com.mulesoft.modules.agent.conductor.api.model.a2a.A2AClient"
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "fieldValueProviderModels": [],
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": true,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 8
                  },
                  "allowedStereotypeModels": [],
                  "semanticTerms": [],
                  "name": "a2aClients",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Number",
                    "annotations": {
                      "classInformation": {
                        "classname": "java.lang.Integer",
                        "hasDefaultConstructor": false,
                        "isInterface": false,
                        "isInstantiable": false,
                        "isAbstract": false,
                        "isFinal": true,
                        "implementedInterfaces": [],
                        "parent": "java.lang.Number",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "int": {}
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": true,
                  "isComponentId": false,
                  "fieldValueProviderModels": [],
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 9
                  },
                  "allowedStereotypeModels": [],
                  "semanticTerms": [],
                  "name": "maxNumberOfLoops",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Number",
                    "annotations": {
                      "classInformation": {
                        "classname": "java.lang.Integer",
                        "hasDefaultConstructor": false,
                        "isInterface": false,
                        "isInstantiable": false,
                        "isAbstract": false,
                        "isFinal": true,
                        "implementedInterfaces": [],
                        "parent": "java.lang.Number",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "int": {}
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": true,
                  "isComponentId": false,
                  "fieldValueProviderModels": [],
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 10
                  },
                  "allowedStereotypeModels": [],
                  "semanticTerms": [],
                  "name": "maxConsecutiveErrors",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "typeId": "org.mule.runtime.extension.api.runtime.config.ConfigurationProvider",
                      "classInformation": {
                        "classname": "org.mule.runtime.extension.api.runtime.config.ConfigurationProvider",
                        "hasDefaultConstructor": false,
                        "isInterface": true,
                        "isInstantiable": false,
                        "isAbstract": true,
                        "isFinal": false,
                        "implementedInterfaces": [],
                        "parent": "",
                        "genericTypes": [],
                        "isMap": false
                      }
                    },
                    "fields": []
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "fieldValueProviderModels": [],
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 11
                  },
                  "allowedStereotypeModels": [
                    {
                      "type": "CONFIG",
                      "namespace": "AGENTS-CONDUCTOR",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    }
                  ],
                  "semanticTerms": [],
                  "name": "config-ref",
                  "description": "The name of the configuration to be used to execute this component",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1
              },
              "showInDsl": false,
              "name": "General",
              "description": "",
              "modelProperties": {}
            },
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "fieldValueProviderModels": [],
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 12,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "semanticTerms": [],
                  "name": "target",
                  "displayModel": {
                    "displayName": "Target Variable"
                  },
                  "description": "The name of a variable on which the operation\u0027s output will be placed",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "fieldValueProviderModels": [],
                  "expressionSupport": "REQUIRED",
                  "defaultValue": "#[payload]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 13,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "semanticTerms": [],
                  "name": "targetValue",
                  "displayModel": {
                    "displayName": "Target Value"
                  },
                  "description": "An expression that will be evaluated against the operation\u0027s output and the outcome of that expression will be stored in the target variable",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 2
              },
              "showInDsl": false,
              "name": "Output",
              "description": "",
              "modelProperties": {}
            },
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "Array",
                    "annotations": {
                      "infrastructureType": {},
                      "description": {
                        "value": "Determines that an error thrown by this operation should be mapped to another"
                      },
                      "typeDsl": {
                        "allowInlineDefinition": true,
                        "allowTopLevelDefinition": false
                      }
                    },
                    "item": {
                      "type": "Object",
                      "annotations": {
                        "typeId": "errorMapping",
                        "infrastructureType": {}
                      },
                      "fields": [
                        {
                          "key": {
                            "name": "source"
                          },
                          "model": {
                            "format": {
                              "id": "text",
                              "label": "Text",
                              "validMimeTypes": [
                                "text/plain"
                              ]
                            },
                            "type": "String",
                            "annotations": {
                              "typeId": "errorTypeMatcher",
                              "enum": {
                                "type": "[Ljava.lang.String;",
                                "values": [
                                  "ANY",
                                  "REDELIVERY_EXHAUSTED",
                                  "TRANSFORMATION",
                                  "EXPRESSION",
                                  "SECURITY",
                                  "CLIENT_SECURITY",
                                  "SERVER_SECURITY",
                                  "ROUTING",
                                  "CONNECTIVITY",
                                  "RETRY_EXHAUSTED",
                                  "TIMEOUT"
                                ]
                              }
                            }
                          }
                        },
                        {
                          "key": {
                            "name": "target",
                            "required": "true"
                          },
                          "model": {
                            "format": {
                              "id": "text",
                              "label": "Text",
                              "validMimeTypes": [
                                "text/plain"
                              ]
                            },
                            "type": "String",
                            "annotations": {
                              "typeId": "errorTypeDefinition"
                            }
                          }
                        }
                      ]
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "fieldValueProviderModels": [],
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": true,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 14,
                    "tabName": "Error Mapping"
                  },
                  "allowedStereotypeModels": [],
                  "semanticTerms": [],
                  "name": "errorMappings",
                  "description": "Set of error mappings",
                  "modelProperties": {
                    "org.mule.runtime.extension.api.property.QNameModelProperty": {
                      "value": {
                        "namespaceURI": "http://www.mulesoft.org/schema/mule/core",
                        "localPart": "error-mappings",
                        "prefix": "mule"
                      }
                    },
                    "sinceMuleVersion": {
                      "version": "4.4.0"
                    },
                    "org.mule.runtime.extension.api.property.InfrastructureParameterModelProperty": {
                      "sequence": 12
                    }
                  }
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 3
              },
              "showInDsl": false,
              "name": "Error Mappings",
              "description": "",
              "modelProperties": {}
            }
          ],
          "name": "agentLoop",
          "description": "",
          "modelProperties": {},
          "kind": "operation"
        }
      ],
      "connectionProviders": [],
      "messageSources": [],
      "name": "config",
      "description": "Default configuration",
      "modelProperties": {
        "requiredForMetadata": {
          "requiredParameters": [
            "maxNumberOfLoops",
            "maxConsecutiveErrors",
            "conversationStateObjectStore",
            "name"
          ]
        }
      }
    }
  ],
  "operations": [],
  "functions": [],
  "constructs": [],
  "connectionProviders": [],
  "messageSources": [],
  "artifactCoordinates": {
    "artifact id": "mule-agent-router-module",
    "group id": "com.mulesoft.modules",
    "version": "0.2.0"
  },
  "notifications": [],
  "errors": [
    {
      "error": "AGENTS-CONDUCTOR:CONNECTIVITY",
      "parent": "MULE:CONNECTIVITY",
      "handleable": true
    },
    {
      "error": "MULE:CONNECTIVITY",
      "parent": "MULE:ANY",
      "handleable": true
    },
    {
      "error": "MULE:ANY",
      "handleable": true
    },
    {
      "error": "AGENTS-CONDUCTOR:LLM_ERROR",
      "parent": "MULE:ANY",
      "handleable": true
    },
    {
      "error": "AGENTS-CONDUCTOR:MAX_LOOPS",
      "parent": "MULE:ANY",
      "handleable": true
    },
    {
      "error": "AGENTS-CONDUCTOR:REASONING_ERROR",
      "parent": "MULE:ANY",
      "handleable": true
    },
    {
      "error": "AGENTS-CONDUCTOR:RETRY_EXHAUSTED",
      "parent": "MULE:RETRY_EXHAUSTED",
      "handleable": true
    },
    {
      "error": "MULE:RETRY_EXHAUSTED",
      "parent": "MULE:ANY",
      "handleable": true
    },
    {
      "error": "AGENTS-CONDUCTOR:TOOL_ERROR",
      "parent": "MULE:ANY",
      "handleable": true
    }
  ],
  "modelProperties": {},
  "types": [
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "com.mulesoft.modules.agent.conductor.api.model.Orchestration",
        "classInformation": {
          "classname": "com.mulesoft.modules.agent.conductor.api.model.Orchestration",
          "hasDefaultConstructor": true,
          "isInterface": false,
          "isInstantiable": true,
          "isAbstract": false,
          "isFinal": false,
          "implementedInterfaces": [],
          "parent": "",
          "genericTypes": [],
          "isMap": false
        },
        "typeAlias": {
          "value": "Orchestration"
        }
      },
      "fields": [
        {
          "key": {
            "name": "taskId",
            "required": "true"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            }
          }
        },
        {
          "key": {
            "name": "contextId",
            "required": "true"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            }
          }
        },
        {
          "key": {
            "name": "response",
            "required": "true"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            }
          }
        },
        {
          "key": {
            "name": "goalComplete"
          },
          "model": {
            "type": "Boolean",
            "annotations": {
              "typeId": "boolean"
            }
          },
          "annotations": {
            "default": "false",
            "expressionSupport": {
              "value": "SUPPORTED"
            }
          }
        },
        {
          "key": {
            "name": "inputRequired"
          },
          "model": {
            "type": "Boolean",
            "annotations": {
              "typeId": "boolean"
            }
          },
          "annotations": {
            "default": "false",
            "expressionSupport": {
              "value": "SUPPORTED"
            }
          }
        },
        {
          "key": {
            "name": "iterationsCount",
            "required": "true"
          },
          "model": {
            "type": "Number",
            "annotations": {
              "classInformation": {
                "classname": "int",
                "hasDefaultConstructor": false,
                "isInterface": false,
                "isInstantiable": false,
                "isAbstract": true,
                "isFinal": true,
                "implementedInterfaces": [],
                "parent": "",
                "genericTypes": [],
                "isMap": false
              },
              "int": {}
            }
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            }
          }
        },
        {
          "key": {
            "name": "reasoning"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            }
          }
        }
      ]
    },
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "com.mulesoft.modules.agent.conductor.api.model.a2a.A2AClient",
        "classInformation": {
          "classname": "com.mulesoft.modules.agent.conductor.api.model.a2a.A2AClient",
          "hasDefaultConstructor": true,
          "isInterface": false,
          "isInstantiable": true,
          "isAbstract": false,
          "isFinal": false,
          "implementedInterfaces": [],
          "parent": "",
          "genericTypes": [],
          "isMap": false
        },
        "typeAlias": {
          "value": "a2aClient"
        }
      },
      "fields": [
        {
          "key": {
            "name": "a2aClientConfigRef",
            "required": "true"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            },
            "stereotype": {
              "allowedStereotypes": [
                {
                  "type": "CLIENT",
                  "namespace": "A2_A",
                  "parent": {
                    "type": "MODULE_CONFIG",
                    "namespace": "MULE"
                  }
                }
              ]
            }
          }
        }
      ]
    },
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "com.mulesoft.modules.agent.conductor.api.model.llm.LLMSettings",
        "classInformation": {
          "classname": "com.mulesoft.modules.agent.conductor.api.model.llm.LLMSettings",
          "hasDefaultConstructor": true,
          "isInterface": false,
          "isInstantiable": false,
          "isAbstract": true,
          "isFinal": false,
          "implementedInterfaces": [],
          "parent": "",
          "genericTypes": [],
          "isMap": false
        },
        "typeAlias": {
          "value": "LLMSettings"
        }
      },
      "fields": []
    },
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "com.mulesoft.modules.agent.conductor.api.model.llm.einstein.EinsteinSettings",
        "classInformation": {
          "classname": "com.mulesoft.modules.agent.conductor.api.model.llm.einstein.EinsteinSettings",
          "hasDefaultConstructor": true,
          "isInterface": false,
          "isInstantiable": true,
          "isAbstract": false,
          "isFinal": false,
          "implementedInterfaces": [],
          "parent": "com.mulesoft.modules.agent.conductor.api.model.llm.LLMSettings",
          "genericTypes": [],
          "isMap": false
        },
        "typeDsl": {
          "allowInlineDefinition": true,
          "allowTopLevelDefinition": true
        },
        "typeAlias": {
          "value": "EinsteinSettings"
        },
        "stereotype": {
          "allowedStereotypes": [
            {
              "type": "EINSTEIN_SETTINGS",
              "namespace": "AGENTS-CONDUCTOR",
              "parent": {
                "type": "LLM_SETTINGS",
                "namespace": "AGENTS-CONDUCTOR"
              }
            }
          ]
        }
      },
      "fields": [
        {
          "key": {
            "name": "einsteinAiConfigRef",
            "required": "true"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            },
            "stereotype": {
              "allowedStereotypes": [
                {
                  "type": "CONFIG",
                  "namespace": "MS-EINSTEIN-AI",
                  "parent": {
                    "type": "MODULE_CONFIG",
                    "namespace": "MULE"
                  }
                }
              ]
            }
          }
        },
        {
          "key": {
            "name": "model",
            "required": "true"
          },
          "model": {
            "type": "Object",
            "annotations": {
              "typeId": "com.mulesoft.modules.agent.conductor.api.model.llm.einstein.EinsteinModel",
              "classInformation": {
                "classname": "com.mulesoft.modules.agent.conductor.api.model.llm.einstein.EinsteinModel",
                "hasDefaultConstructor": true,
                "isInterface": false,
                "isInstantiable": true,
                "isAbstract": false,
                "isFinal": false,
                "implementedInterfaces": [],
                "parent": "com.mulesoft.modules.agent.conductor.api.model.llm.LLMSettings",
                "genericTypes": [],
                "isMap": false
              },
              "typeAlias": {
                "value": "EinsteinModel"
              }
            },
            "fields": [
              {
                "key": {
                  "name": "modelApiName"
                },
                "model": {
                  "type": "String"
                },
                "annotations": {
                  "default": "sfdc_ai__DefaultOpenAIGPT35Turbo",
                  "expressionSupport": {
                    "value": "SUPPORTED"
                  },
                  "display": {
                    "displayModel": {
                      "displayName": "Model API Name"
                    }
                  }
                }
              },
              {
                "key": {
                  "name": "probability"
                },
                "model": {
                  "type": "Number",
                  "annotations": {
                    "classInformation": {
                      "classname": "java.lang.Double",
                      "hasDefaultConstructor": false,
                      "isInterface": false,
                      "isInstantiable": false,
                      "isAbstract": false,
                      "isFinal": true,
                      "implementedInterfaces": [],
                      "parent": "java.lang.Number",
                      "genericTypes": [],
                      "isMap": false
                    }
                  }
                },
                "annotations": {
                  "default": "0.8",
                  "expressionSupport": {
                    "value": "SUPPORTED"
                  },
                  "display": {
                    "displayModel": {
                      "displayName": "Probability"
                    }
                  }
                }
              },
              {
                "key": {
                  "name": "locale"
                },
                "model": {
                  "type": "String"
                },
                "annotations": {
                  "default": "en_US",
                  "expressionSupport": {
                    "value": "SUPPORTED"
                  },
                  "display": {
                    "displayModel": {
                      "displayName": "Locale"
                    }
                  }
                }
              }
            ]
          },
          "annotations": {
            "flattened": {},
            "expressionSupport": {
              "value": "SUPPORTED"
            }
          }
        }
      ]
    },
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "com.mulesoft.modules.agent.conductor.api.model.mcp.McpServer",
        "classInformation": {
          "classname": "com.mulesoft.modules.agent.conductor.api.model.mcp.McpServer",
          "hasDefaultConstructor": true,
          "isInterface": false,
          "isInstantiable": true,
          "isAbstract": false,
          "isFinal": false,
          "implementedInterfaces": [],
          "parent": "",
          "genericTypes": [],
          "isMap": false
        },
        "typeAlias": {
          "value": "McpServer"
        }
      },
      "fields": [
        {
          "key": {
            "name": "mcpClientConfigRef",
            "required": "true"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            },
            "stereotype": {
              "allowedStereotypes": [
                {
                  "type": "CLIENT",
                  "namespace": "MCP",
                  "parent": {
                    "type": "MODULE_CONFIG",
                    "namespace": "MULE"
                  }
                }
              ]
            }
          }
        },
        {
          "key": {
            "name": "toolsFilter",
            "required": "true"
          },
          "model": {
            "type": "Object",
            "annotations": {
              "typeId": "com.mulesoft.modules.agent.conductor.api.model.mcp.ToolFilter",
              "classInformation": {
                "classname": "com.mulesoft.modules.agent.conductor.api.model.mcp.ToolFilter",
                "hasDefaultConstructor": true,
                "isInterface": false,
                "isInstantiable": true,
                "isAbstract": false,
                "isFinal": false,
                "implementedInterfaces": [],
                "parent": "",
                "genericTypes": [],
                "isMap": false
              },
              "typeAlias": {
                "value": "ToolFilter"
              }
            },
            "fields": [
              {
                "key": {
                  "name": "allowedTools"
                },
                "model": {
                  "type": "Array",
                  "annotations": {
                    "classInformation": {
                      "classname": "java.util.List",
                      "hasDefaultConstructor": false,
                      "isInterface": true,
                      "isInstantiable": false,
                      "isAbstract": true,
                      "isFinal": false,
                      "implementedInterfaces": [],
                      "parent": "",
                      "genericTypes": [
                        "java.lang.String"
                      ],
                      "isMap": false
                    }
                  },
                  "item": {
                    "type": "String"
                  }
                },
                "annotations": {
                  "expressionSupport": {
                    "value": "SUPPORTED"
                  }
                }
              },
              {
                "key": {
                  "name": "disallowedTools"
                },
                "model": {
                  "type": "Array",
                  "annotations": {
                    "classInformation": {
                      "classname": "java.util.List",
                      "hasDefaultConstructor": false,
                      "isInterface": true,
                      "isInstantiable": false,
                      "isAbstract": true,
                      "isFinal": false,
                      "implementedInterfaces": [],
                      "parent": "",
                      "genericTypes": [
                        "java.lang.String"
                      ],
                      "isMap": false
                    }
                  },
                  "item": {
                    "type": "String"
                  }
                },
                "annotations": {
                  "expressionSupport": {
                    "value": "SUPPORTED"
                  }
                }
              }
            ]
          },
          "annotations": {
            "flattened": {},
            "exclusiveOptionals": {
              "exclusiveParameterNames": [
                "allowedTools",
                "disallowedTools"
              ],
              "isOneRequired": false
            },
            "expressionSupport": {
              "value": "SUPPORTED"
            }
          }
        }
      ]
    }
  ]
}
