{
  "id": "zs6lfzSj2s6LtrMh",
  "name": "k8s -asistant2",
  "tags": [],
  "nodes": [
    {
      "id": "2ac701f4-2231-46f9-9788-32e7edb7eb77",
      "name": "When chat message received",
      "type": "@n8n/n8n-nodes-langchain.chatTrigger",
      "position": [
        -1620,
        -140
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 1.1
    },
    {
      "id": "da3830f7-2091-45fe-943c-f6fbcc55b129",
      "name": "AI Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        -1280,
        -200
      ],
      "parameters": {
        "options": {
          "systemMessage": "=You are a Kubernetes assistant connected to an MCP (Model Context Protocol) Server. Your role is to help users monitor, inspect, and troubleshoot Kubernetes resources using the following tools.\nCurrent time is {{ $now.setZone('Asia/Tehran') }}\n\n---\n\nAvailable Kubernetes Tools:\n1. getEvents(namespace) \u2013 Fetch events in the given namespace.\n2. getPodsLogs(namespace, podName) \u2013 Retrieve logs for a specific pod.\n3. getResource(namespace, resourceKind, resourceName) \u2013 Get details of a specific resource.\n4. createOrUpdateResource(namespace, resourceYaml) \u2013 Create or update a resource using full YAML.\n5. getNodeMetrics(nodeName) \u2013 Retrieve CPU and memory usage of a node.\n6. getPodMetrics(namespace, podName) - Get CPU and Memory usage for a specific pod \n7. describeResource(namespace, resourceKind, resourceName) \u2013 Detailed description of a resource.\n8. listResources(namespace, resourceKind) \u2013 List all resources of a given kind in a namespace. for example{\"Kind\": \"Pod\",\"namespace\": \"x\"}\n9. getAPIResources() \u2013 List all supported resource kinds in the cluster.\n\n---\n\nAvailable Helm Tools:\n1. helmRollback(releaseName, revision) \u2013 Revert a Helm release to a previous revision.\n2. helmRepoList() \u2013 Show a list of configured Helm chart repositories.\n3. helmUpgrade(releaseName, chart, namespace, valuesYaml) \u2013 Upgrade an existing release to a new chart version with optional values.\n4. helmHistory(releaseName, namespace) \u2013 View the revision history of a Helm release.\n5. helmGet(releaseName, namespace) \u2013 Retrieve the manifest and values of a deployed Helm release.\n6. helmList(namespace) \u2013 List all Helm releases in the specified namespace.\n7. helmInstall(releaseName, chart, namespace, valuesYaml) \u2013 Install a new Helm release using a chart and optional values.\n8. helmUninstall(releaseName, namespace) \u2013 Uninstall (delete) a deployed Helm release from the cluster.\n\n\n---\n\nUsage Rules:\n***keep your answers short and meaningful***\n- Always validate input arguments before calling any tool.\n- Ask the user for any missing information (e.g., namespace, podName, resourceKind).\n- Do not assume defaults; always confirm with the user.\n- Avoid destructive operations unless explicitly instructed.\n  - Note: Only `createOrUpdateResource` and Helm install/upgrade/uninstall modify the cluster.\n- Use getAPIResources() to help the user explore available resource kinds.\n- Respond with concise, plain-language explanations of the results always\n\nHelm Specific usage Rules:\n- Never install, upgrade, uninstall, or rollback a release unless explicitly instructed.\n- Use `helmRepoList()` only to list known chart repositories; chart URLs or repo additions are handled outside this tool.\n- Validate valuesYaml format if provided, be able to read valuesYaml from a url and prompt, however user requested it.\n- Mention side effects clearly: e.g., \u201cThis will upgrade the existing Helm release.\u201d\n"
        }
      },
      "typeVersion": 1.8
    },
    {
      "id": "78e44cd7-3278-44a1-9ed4-19df0fdd3c28",
      "name": "getAPIResources",
      "type": "n8n-nodes-mcp.mcpClientTool",
      "position": [
        -1500,
        1040
      ],
      "parameters": {
        "toolName": "getAPIResources",
        "operation": "executeTool",
        "connectionType": "sse",
        "toolParameters": "{\n  \"jsonrpc\": \"2.0\",\n  \"id\": 1,\n  \"method\": \"getAPIResources\",\n  \"params\": {\n    \"arguments\": {\n      \"includeNamespaceScoped\": true,\n      \"includeClusterScoped\": true\n    }\n  }\n}"
      },
      "credentials": {
        "mcpClientSseApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "6747c018-2221-4702-876c-617faa3ec0d3",
      "name": "listResources",
      "type": "n8n-nodes-mcp.mcpClientTool",
      "position": [
        -1380,
        1040
      ],
      "parameters": {
        "toolName": "listResources",
        "operation": "executeTool",
        "connectionType": "sse",
        "toolParameters": "={\"Kind\": \"{{ $fromAI('Kind', 'Select the kind given by ai agent', 'string') }}\",\n\"namespace\" : \"{{ $fromAI('namespace', 'Select the namespace given by ai agent', 'string') }}\"}"
      },
      "credentials": {
        "mcpClientSseApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "50643ff7-d91d-448b-ab6c-10306563cb6d",
      "name": "describeResource",
      "type": "n8n-nodes-mcp.mcpClientTool",
      "position": [
        -1260,
        1040
      ],
      "parameters": {
        "toolName": "describeResource",
        "operation": "executeTool",
        "connectionType": "sse",
        "toolParameters": "={\"Kind\": \"{{ $fromAI('Kind', 'Select the kind given by ai agent', 'string') }}\",\n\"name\" : \"{{ $fromAI('name', 'Select the name given by ai agent', 'string') }}\",\n\"namespace\" : \"{{ $fromAI('namespace', 'Select the namespace given by ai agent', 'string') }}\"}"
      },
      "credentials": {
        "mcpClientSseApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "c92d1297-d354-436a-97a4-7c9e309db6d8",
      "name": "getPodMetrics",
      "type": "n8n-nodes-mcp.mcpClientTool",
      "position": [
        -1140,
        1040
      ],
      "parameters": {
        "toolName": "getPodMetrics",
        "operation": "executeTool",
        "connectionType": "sse",
        "toolParameters": "={\"podName\" : \"{{ $fromAI('podName', 'Select the pod name given by ai agent', 'string') }}\",\n\"namespace\" : \"{{ $fromAI('namespace', 'Select the namespace given by ai agent', 'string') }}\"}"
      },
      "credentials": {
        "mcpClientSseApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "2e5faf48-243b-4214-b2f1-ec7b32d2a26f",
      "name": "getNodeMetrics",
      "type": "n8n-nodes-mcp.mcpClientTool",
      "position": [
        -1020,
        1040
      ],
      "parameters": {
        "toolName": "getNodeMetrics",
        "operation": "executeTool",
        "connectionType": "sse",
        "toolParameters": "={\"Name\" : \"{{ $fromAI('Name', 'Select the name given by ai agent', 'string') }}\"}"
      },
      "credentials": {
        "mcpClientSseApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "03f0ac2f-cdb2-409f-9edf-b6f11c88cb7f",
      "name": "getResource",
      "type": "n8n-nodes-mcp.mcpClientTool",
      "position": [
        -900,
        1040
      ],
      "parameters": {
        "toolName": "getResource",
        "operation": "executeTool",
        "connectionType": "sse",
        "toolParameters": "={\"kind\": \"{{ $fromAI('kind', 'Select the kind given by ai agent', 'string') }}\",\n\"name\" : \"{{ $fromAI('name', 'Select the name given by ai agent', 'string') }}\",\n\"namespace\" : \"{{ $fromAI('namespace', 'Select the namespace given by ai agent', 'string') }}\"}"
      },
      "credentials": {
        "mcpClientSseApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "28229f51-435b-4980-bf37-e0b501904f95",
      "name": "getPodsLogs",
      "type": "n8n-nodes-mcp.mcpClientTool",
      "position": [
        -780,
        1040
      ],
      "parameters": {
        "toolName": "getPodsLogs",
        "operation": "executeTool",
        "connectionType": "sse",
        "toolParameters": "={\"Name\" : \"{{ $fromAI('Name', 'Select the name given by ai agent', 'string') }}\",\n\"namespace\" : \"{{ $fromAI('namespace', 'Select the namespace given by ai agent', 'string') }}\"}"
      },
      "credentials": {
        "mcpClientSseApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "aadbea45-55ef-40cb-97a5-df1f2593799f",
      "name": "getEvents",
      "type": "n8n-nodes-mcp.mcpClientTool",
      "position": [
        -660,
        1040
      ],
      "parameters": {
        "toolName": "getEvents",
        "operation": "executeTool",
        "connectionType": "sse",
        "toolParameters": "={\n\"namespace\" : \"{{ $fromAI('namespace', 'Select the namespace given by ai agent', 'string') }}\"}"
      },
      "credentials": {
        "mcpClientSseApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "a2b3cbba-c725-4c61-be74-c3ca5b049b5e",
      "name": "List tools",
      "type": "n8n-nodes-mcp.mcpClientTool",
      "position": [
        -540,
        1040
      ],
      "parameters": {
        "connectionType": "sse"
      },
      "credentials": {
        "mcpClientSseApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "fb174418-eeef-45e2-b3de-cf49a9725e24",
      "name": "createorUpdateResource",
      "type": "n8n-nodes-mcp.mcpClientTool",
      "position": [
        -420,
        1040
      ],
      "parameters": {
        "toolName": "createResource",
        "operation": "executeTool",
        "connectionType": "sse",
        "toolParameters": "={\"manifest\" : \"{{ $fromAI('manifest', 'Select the manifest given by ai agent', 'string').trim() }}\",\n\"namespace\" : \"{{ $fromAI('namespace', 'Select the namespace given by ai agent', 'string') }}\"}"
      },
      "credentials": {
        "mcpClientSseApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "04c329cc-83a7-4fe9-bdeb-eee0295d3839",
      "name": "Kubernetes MCP Server Trigger",
      "type": "@n8n/n8n-nodes-langchain.mcpTrigger",
      "position": [
        -1048,
        820
      ],
      "parameters": {
        "path": "kubernetes"
      },
      "typeVersion": 1
    },
    {
      "id": "46aacc8d-23a3-4bc2-9cb6-c0540d545fb2",
      "name": "Helm MCP Server Trigger",
      "type": "@n8n/n8n-nodes-langchain.mcpTrigger",
      "position": [
        -1108,
        260
      ],
      "parameters": {
        "path": "helm"
      },
      "typeVersion": 1
    },
    {
      "id": "0b5cef77-fd5d-4915-b1de-738c2dbba85d",
      "name": "Simple Memory",
      "type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
      "position": [
        -1360,
        140
      ],
      "parameters": {},
      "typeVersion": 1.3
    },
    {
      "id": "14256d66-f748-4807-b903-cd29c8e5d39e",
      "name": "OpenAI Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        -1520,
        120
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o-mini",
          "cachedResultName": "gpt-4o-mini"
        },
        "options": {
          "maxTokens": -1
        }
      },
      "credentials": {
        "openAiApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "7b054d81-f15a-48ca-bc4a-9600099e0cd8",
      "name": "Helm list",
      "type": "n8n-nodes-mcp.mcpClientTool",
      "position": [
        -1500,
        480
      ],
      "parameters": {
        "toolName": "helmList",
        "operation": "executeTool",
        "connectionType": "sse",
        "toolParameters": "={\n\"namespace\" : \"{{ $fromAI('namespace', 'Select the namespace given by ai agent', 'string') }}\"}"
      },
      "credentials": {
        "mcpClientSseApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "56bf5b98-6dd7-4f26-a1a2-530773d9ed2a",
      "name": "Helm Install",
      "type": "n8n-nodes-mcp.mcpClientTool",
      "position": [
        -1380,
        480
      ],
      "parameters": {
        "toolName": "helmInstall",
        "operation": "executeTool",
        "connectionType": "sse",
        "toolParameters": "={\n\"namespace\" : \"{{ $fromAI('namespace', 'Select the namespace given by ai agent', 'string') }}\",\n\"chartName\" : \"{{ $fromAI('chartName', 'Select the chart name given by ai agent', 'string') }}\",\n\"repoURL\" : \"{{ $fromAI('repoURL', 'Select the repo URL given by ai agent', 'string') }}\",\n\"values\" : \"{{ $fromAI('values', 'Select the values given by ai agent', 'string') }}\",\n\"releaseName\" : \"{{ $fromAI('releaseName', 'Select the release name given by ai agent', 'string') }}\"\n}"
      },
      "credentials": {
        "mcpClientSseApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "d9bb6588-0b3d-48c3-8fae-1b9b7e5283ab",
      "name": "Helm Get",
      "type": "n8n-nodes-mcp.mcpClientTool",
      "position": [
        -1260,
        480
      ],
      "parameters": {
        "toolName": "helmGet",
        "operation": "executeTool",
        "connectionType": "sse",
        "toolParameters": "={\"namespace\" : \"{{ $fromAI('namespace', 'Select the namespace given by ai agent', 'string') }}\",\n \"releaseName\": \"{{ $fromAI(\"releaseName\", \"Name of the helm release\") }}\"}"
      },
      "credentials": {
        "mcpClientSseApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "31ae078e-1a20-4d7d-afef-0cc6232cc43d",
      "name": "Helm Rollback",
      "type": "n8n-nodes-mcp.mcpClientTool",
      "position": [
        -1140,
        480
      ],
      "parameters": {
        "toolName": "helmRollback",
        "operation": "executeTool",
        "connectionType": "sse",
        "toolParameters": "={\"releaseName\" : \"{{ $fromAI('releaseName', 'Select the release name given by ai agent', 'string') }}\",\n\"namespace\" : \"{{ $fromAI('namespace', 'Select the namespace given by ai agent', 'string') }}\",\n\"revision\" : \"{{ $fromAI('revision', 'Select the revision given by ai agent', 'string') }}\"}"
      },
      "credentials": {
        "mcpClientSseApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "55262769-acc1-4b77-b34e-745b4d904ffa",
      "name": "Helm History",
      "type": "n8n-nodes-mcp.mcpClientTool",
      "position": [
        -1020,
        480
      ],
      "parameters": {
        "toolName": "helmHistory",
        "operation": "executeTool",
        "connectionType": "sse",
        "toolParameters": "={\"releaseName\" : \"{{ $fromAI('releaseName', 'Select the release name given by ai agent', 'string') }}\",\n\"namespace\" : \"{{ $fromAI('namespace', 'Select the namespace given by ai agent', 'string') }}\"}"
      },
      "credentials": {
        "mcpClientSseApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "558c7caf-97a1-42ad-bf47-00460e212569",
      "name": "Helm Uninstall",
      "type": "n8n-nodes-mcp.mcpClientTool",
      "position": [
        -900,
        480
      ],
      "parameters": {
        "toolName": "helmUninstall",
        "operation": "executeTool",
        "connectionType": "sse",
        "toolParameters": "={\"releaseName\" : \"{{ $fromAI('releaseName', 'Select the release name given by ai agent', 'string') }}\",\n\"namespace\" : \"{{ $fromAI('namespace', 'Select the namespace given by ai agent', 'string') }}\"}"
      },
      "credentials": {
        "mcpClientSseApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "3642099b-78d9-4c85-a461-7c3fa422cf22",
      "name": "Helm Upgrade",
      "type": "n8n-nodes-mcp.mcpClientTool",
      "position": [
        -780,
        480
      ],
      "parameters": {
        "toolName": "helmUpgrade",
        "operation": "executeTool",
        "connectionType": "sse",
        "toolParameters": "={\"releaseName\" : \"{{ $fromAI('releaseName', 'Select the release name given by ai agent', 'string') }}\",\n\"namespace\" : \"{{ $fromAI('namespace', 'Select the namespace given by ai agent', 'string') }}\",\n\"chartName\" : \"{{ $fromAI('chartName', 'Select the chart name given by ai agent', 'string') }}\",\n\"values\" : \"{{ $fromAI('values', 'Select the values given by ai agent', 'string') }}\"}"
      },
      "credentials": {
        "mcpClientSseApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "d3526c80-31f4-4c07-87ce-5569b2a0b4de",
      "name": "Helm Repo List",
      "type": "n8n-nodes-mcp.mcpClientTool",
      "position": [
        -660,
        480
      ],
      "parameters": {
        "toolName": "helmRepoList",
        "operation": "executeTool",
        "connectionType": "sse",
        "toolParameters": "={}"
      },
      "credentials": {
        "mcpClientSseApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "e58346ba-b96b-4120-90d5-833b8671dc87",
      "name": "Helm Repo Add",
      "type": "n8n-nodes-mcp.mcpClientTool",
      "disabled": true,
      "position": [
        -540,
        480
      ],
      "parameters": {
        "toolName": "helmRepoAdd",
        "operation": "executeTool",
        "connectionType": "sse",
        "toolParameters": "={\"repoName\" : \"{{ $fromAI('repoName', 'Select the repo name given by ai agent', 'string') }}\",\n\"repoURL\" : \"{{ $fromAI('repoURL', 'Select the repo url given by ai agent', 'string') }}\"}"
      },
      "credentials": {
        "mcpClientSseApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "53a8cc27-acb8-40bb-98b2-b7b492e4cd1c",
      "name": "Kubernetes MCP Client",
      "type": "@n8n/n8n-nodes-langchain.mcpClientTool",
      "position": [
        -1200,
        140
      ],
      "parameters": {
        "sseEndpoint": "http://wf.pinsvc.net/mcp/kubernetes/sse"
      },
      "typeVersion": 1
    },
    {
      "id": "02c8d7b9-2f31-402d-b7d4-d266cb6c4f99",
      "name": "Helm MCP Client",
      "type": "@n8n/n8n-nodes-langchain.mcpClientTool",
      "position": [
        -1040,
        60
      ],
      "parameters": {
        "sseEndpoint": "http://wf.pinsvc.net/mcp/helm/sse"
      },
      "typeVersion": 1
    }
  ],
  "active": true,
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "a0b980fd-6ba3-4b84-a4a2-7aa66e4583b7",
  "connections": {
    "Helm Get": {
      "ai_tool": [
        [
          {
            "node": "Helm MCP Server Trigger",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Helm list": {
      "ai_tool": [
        [
          {
            "node": "Helm MCP Server Trigger",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "getEvents": {
      "ai_tool": [
        [
          {
            "node": "Kubernetes MCP Server Trigger",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "List tools": {
      "ai_tool": [
        [
          {
            "node": "Kubernetes MCP Server Trigger",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "getPodsLogs": {
      "ai_tool": [
        [
          {
            "node": "Kubernetes MCP Server Trigger",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "getResource": {
      "ai_tool": [
        [
          {
            "node": "Kubernetes MCP Server Trigger",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Helm History": {
      "ai_tool": [
        [
          {
            "node": "Helm MCP Server Trigger",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Helm Install": {
      "ai_tool": [
        [
          {
            "node": "Helm MCP Server Trigger",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Helm Upgrade": {
      "ai_tool": [
        [
          {
            "node": "Helm MCP Server Trigger",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Helm Repo Add": {
      "ai_tool": [
        [
          {
            "node": "Helm MCP Server Trigger",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Helm Rollback": {
      "ai_tool": [
        [
          {
            "node": "Helm MCP Server Trigger",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Simple Memory": {
      "ai_memory": [
        [
          {
            "node": "AI Agent",
            "type": "ai_memory",
            "index": 0
          }
        ]
      ]
    },
    "getPodMetrics": {
      "ai_tool": [
        [
          {
            "node": "Kubernetes MCP Server Trigger",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "listResources": {
      "ai_tool": [
        [
          {
            "node": "Kubernetes MCP Server Trigger",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Helm Repo List": {
      "ai_tool": [
        [
          {
            "node": "Helm MCP Server Trigger",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Helm Uninstall": {
      "ai_tool": [
        [
          {
            "node": "Helm MCP Server Trigger",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "getNodeMetrics": {
      "ai_tool": [
        [
          {
            "node": "Kubernetes MCP Server Trigger",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Helm MCP Client": {
      "ai_tool": [
        [
          {
            "node": "AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "getAPIResources": {
      "ai_tool": [
        [
          {
            "node": "Kubernetes MCP Server Trigger",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "describeResource": {
      "ai_tool": [
        [
          {
            "node": "Kubernetes MCP Server Trigger",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "AI Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Kubernetes MCP Client": {
      "ai_tool": [
        [
          {
            "node": "AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "createorUpdateResource": {
      "ai_tool": [
        [
          {
            "node": "Kubernetes MCP Server Trigger",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "When chat message received": {
      "main": [
        [
          {
            "node": "AI Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}