AutomationFlowsAI & RAG › Chat Hub Web Search Agent with Tavily

Chat Hub Web Search Agent with Tavily

Original n8n title: Chat Hub Web Search Agent with Tavily Search

ByLiam McGarrigle @liammcgarrigle on n8n.io

A blazing fast research agent that works nativly in n8n's Chat Hub.

Chat trigger trigger★★★☆☆ complexityAI-powered9 nodesAgentMemory Buffer WindowOpenRouter ChatChat Trigger@Tavily/N8N Nodes Tavily
AI & RAG Trigger: Chat trigger Nodes: 9 Complexity: ★★★☆☆ AI nodes: yes Added:

This workflow corresponds to n8n.io template #13271 — we link there as the canonical source.

This workflow follows the Agent → Chat Trigger recipe pattern — see all workflows that pair these two integrations.

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "4adb1e88-535b-4b6b-8f97-cee2e40770a0",
      "name": "AI Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        544,
        0
      ],
      "parameters": {
        "text": "={{ $('When chat message received in Chat Hub').item.json.chatInput }}",
        "options": {
          "maxIterations": 50,
          "systemMessage": "You are a general-purpose search assistant in n8n Chat Hub. You process information, help think through problems, and return accurate results.\n\n## Chat Hub Output\nYou are responding in n8n Chat Hub. Standard markdown works: **bold**, *italic*, `code`, lists, headers.\n\n### Links\nUse standard markdown links:\n`[domain.com](https://full-url-here)`\n\n### Images\nChat Hub does not auto-render images. Use full URLs with markdown:\n`![description](https://example.com/image.jpg)`\n\n## Search Rules\n\n### Search-before-answering\nFor any factual/verifiable question, do not answer from memory. Use the Search tool first. This includes:\n- prices, specs, availability\n- benchmarks or performance claims\n- dates, policies, anything that changes\n- anything you could reasonably source\n\n### Citations (mandatory)\nEvery factual claim needs an inline citation immediately after it, using this exact format:\n`... [_[domain.com](https://full-url)_]`\n\nRules:\n- Link to the real source URL (not a search wrapper).\n- Prefer primary sources (official docs, .gov, vendor pages).\n- If no source exists, do not claim it. Say: \u201cI could not find a source for X.\u201d\n\n### What doesn\u2019t need citations\nPurely conceptual reasoning, frameworks, and clearly-labeled opinions. Anything that looks like a fact still needs a citation.\n\n## Tool Usage (one tool)\n\n### Search\nUse the Search tool for all factual/verifiable questions. Use it to:\n- find primary sources\n- verify numbers, specs, prices, dates, and \u201ccurrent\u201d claims\n- pull multiple viewpoints for comparisons or \u201cwhat do people think\u201d\n\n### Process\n- Plan what you need to verify, then run required searches in parallel (batch queries).\n- Synthesize only what you can cite. If you cannot source a claim, do not make it.\n- Ask a clarifying question only if you are blocked:\n  - \u201cYour question could mean X or Y \u2014 which are you asking about?\u201d\n  - \u201cTo answer this I need: [specific missing detail]\u201d"
        },
        "promptType": "define"
      },
      "executeOnce": false,
      "typeVersion": 3.1
    },
    {
      "id": "89e7a80a-cf16-4e62-90c6-0f65be69f5e3",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        768,
        288
      ],
      "parameters": {
        "color": 7,
        "width": 192,
        "height": 240,
        "content": "Quickly returns results with Tavily Search"
      },
      "typeVersion": 1
    },
    {
      "id": "b3b49fc8-feb6-4f2a-8f7b-db4eb60d7c38",
      "name": "Simple Memory",
      "type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
      "position": [
        640,
        384
      ],
      "parameters": {},
      "typeVersion": 1.3
    },
    {
      "id": "b0c8c61d-c3db-41d2-9381-1c49d70c2c95",
      "name": "Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
      "position": [
        432,
        384
      ],
      "parameters": {
        "model": "google/gemini-3-flash-preview",
        "options": {
          "temperature": 0.1
        }
      },
      "credentials": {
        "openRouterApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "d82a8196-4f7f-417f-b5ef-e0b697476847",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        128,
        -128
      ],
      "parameters": {
        "color": 7,
        "height": 288,
        "content": "## Chat in Chat Hub\nGo to `{your-n8n-url}/home/chat` to use this agent!"
      },
      "typeVersion": 1
    },
    {
      "id": "4130e490-b5d5-485e-a586-d04e09dcb9af",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        480,
        -128
      ],
      "parameters": {
        "color": 7,
        "width": 384,
        "height": 288,
        "content": "## Just a Regular Ol Agent\nYou can build up from here! Add any other tool you want or add to the system prompt to fit your needs!"
      },
      "typeVersion": 1
    },
    {
      "id": "96984713-4a82-4a0a-9999-06b65298c0e5",
      "name": "Sticky Note7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        368,
        192
      ],
      "parameters": {
        "width": 224,
        "height": 320,
        "content": "## Replace Me\nIf you want, replace me with the provider and model you prefer!\n\nMaybe pick one out on our [AI Benchmark](https://n8n.io/ai-benchmark)"
      },
      "typeVersion": 1
    },
    {
      "id": "98d198d3-9c34-4a7b-8647-f559fdc83897",
      "name": "When chat message received in Chat Hub",
      "type": "@n8n/n8n-nodes-langchain.chatTrigger",
      "position": [
        192,
        0
      ],
      "parameters": {
        "options": {
          "responseMode": "streaming"
        },
        "agentIcon": {
          "type": "emoji",
          "value": "\ud83c\udf0e"
        },
        "agentName": "Search Agent",
        "availableInChat": true,
        "agentDescription": "An agent that can search quickly for fast answers as well as do deep research"
      },
      "typeVersion": 1.4
    },
    {
      "id": "b8482b2a-7169-4abe-b260-0630db5b447a",
      "name": "Search",
      "type": "@tavily/n8n-nodes-tavily.tavilyTool",
      "position": [
        816,
        384
      ],
      "parameters": {
        "query": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Query', ``, 'string') }}",
        "options": {
          "search_depth": "advanced"
        }
      },
      "credentials": {
        "tavilyApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    }
  ],
  "connections": {
    "Search": {
      "ai_tool": [
        [
          {
            "node": "AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "AI Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Simple Memory": {
      "ai_memory": [
        [
          {
            "node": "AI Agent",
            "type": "ai_memory",
            "index": 0
          }
        ]
      ]
    },
    "When chat message received in Chat Hub": {
      "main": [
        [
          {
            "node": "AI Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}

Credentials you'll need

Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.

Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

A blazing fast research agent that works nativly in n8n's Chat Hub.

Source: https://n8n.io/workflows/13271/ — original creator credit. Request a take-down →

More AI & RAG workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

AI & RAG

Send an AI a few details about your "Dream Customer" in normal english, then have it search the web and give you a "Dream 100" - 100 ideal prospects to connect with in your industry.

Agent, OpenRouter Chat, Chat Trigger +7
AI & RAG

Turn any YouTube channel into a searchable knowledge base. The AI agent understands relationships between videos, topics, tools, and concepts - enabling powerful queries like "Which videos talk about

OpenRouter Chat, Agent, Chat Trigger +8
AI & RAG

Overview Meet Maria, a sophisticated AI Booking Agent designed for Veterinary Clinics (but easily adaptable to any service business). This workflow transforms a simple chat interface into a full-scale

Chat Trigger, Google Calendar Tool, Memory Buffer Window +7
AI & RAG

Easily Compare LLMs Using OpenAI and Google Sheets. Uses chatTrigger, splitInBatches, memoryBufferWindow, memoryManager. Chat trigger; 21 nodes.

Chat Trigger, Memory Buffer Window, Memory Manager +3
AI & RAG

This template gives you a framework to use skills in any n8n agent. You can use this as a starting point and add any other tools or patterns needed for your use case.

Chat Trigger, Agent, GitHub +4