{
  "name": "AI chat with any data source (using the n8n workflow tool)",
  "nodes": [
    {
      "id": "b6836974-0d4b-482b-8a8a-c00f229f1136",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        100,
        500
      ],
      "parameters": {
        "width": 150,
        "height": 293,
        "content": "### Replace me\nwith any other service, e.g. fetching your own data"
      }
    },
    {
      "id": "c0b8b657-24b8-4c0b-bfe9-d4fe2075dbe5",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -180,
        420
      ],
      "parameters": {
        "width": 927.5,
        "height": 406.875,
        "content": "### Sub-workflow: Custom tool\nThis can be called by the agent above. This example fetches the top 50 posts ever on Hacker News"
      }
    },
    {
      "id": "a1dab7b1-b028-44a2-ab55-d8edee62e261",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -180,
        -120
      ],
      "parameters": {
        "width": 927.5,
        "height": 486.5625,
        "content": "### Main workflow: AI agent using custom tool\nTry it out by clicking 'Chat' and entering 'What is the 5th most popular post ever on Hacker News?'"
      }
    },
    {
      "id": "84d91346-6b1d-4808-a6b3-ce212cd122d0",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -340,
        -20
      ],
      "parameters": {
        "width": 185.9375,
        "height": 218,
        "content": "## Try me out\n\nClick the 'Chat' button and enter:\n\n_What is the 5th most popular post ever on Hacker News?_"
      }
    },
    {
      "id": "50c7208d-d2dc-4380-9f81-6d7f4dee40b3",
      "name": "When chat message received",
      "type": "@n8n/n8n-nodes-langchain.chatTrigger",
      "position": [
        -40,
        20
      ]
    },
    {
      "id": "6170523b-ac2d-4541-9186-0f2932829a36",
      "name": "Custom tool to call the wf below1",
      "type": "@n8n/n8n-nodes-langchain.toolWorkflow",
      "position": [
        480,
        220
      ]
    },
    {
      "id": "3f40434e-4055-4d8f-be26-051da2911aa1",
      "name": "When Executed by Another Workflow",
      "type": "n8n-nodes-base.executeWorkflowTrigger",
      "position": [
        -120,
        640
      ]
    },
    {
      "id": "4a6cf195-6862-4007-b791-d021583a771e",
      "name": "Hacker News",
      "type": "n8n-nodes-base.hackerNews",
      "position": [
        120,
        640
      ]
    },
    {
      "id": "03095e43-0d6e-47c0-8936-dceb2fb0dfb1",
      "name": "Clean up data",
      "type": "n8n-nodes-base.set",
      "position": [
        340,
        640
      ]
    },
    {
      "id": "50ee96c0-36d6-4774-b5cf-b653f5b56868",
      "name": "Stringify",
      "type": "n8n-nodes-base.code",
      "position": [
        560,
        640
      ]
    },
    {
      "id": "ba221fc3-5249-4295-b64e-2c7370c6dad4",
      "name": "AI Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        260,
        20
      ]
    },
    {
      "id": "e8c45847-cc26-47b3-898c-8063b9c4b3a9",
      "name": "OpenAI Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        220,
        200
      ]
    }
  ],
  "connections": {
    "Hacker News": {
      "main": [
        [
          {
            "node": "Clean up data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Clean up data": {
      "main": [
        [
          {
            "node": "Stringify",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "AI Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "When chat message received": {
      "main": [
        [
          {
            "node": "AI Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Custom tool to call the wf below1": {
      "ai_tool": [
        [
          {
            "node": "AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "When Executed by Another Workflow": {
      "main": [
        [
          {
            "node": "Hacker News",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}