Skip to main content

Auto-index your website and build a RAG chatbot with Firecrawl, Qdrant, and GPT-4o-mini

Workflow preview

Workflow preview
100%
Auto-index your website and build a RAG chatbot with Firecrawl, Qdrant, and GPT-4o-mini preview
Open on n8n.io

1. Workflow Overview

Build a fully functional AI chatbot for any website using Retrieval Augmented Generation (RAG). This workflow automatically crawls and indexes your entire site into a Qdrant vector database, then p...

Best for

  • Support Chatbot automation workflows
  • AI RAG automation workflows
  • advanced n8n builders looking for reusable templates

Tools used

@n8n/n8n-nodes-langchain.chattrigger, @n8n/n8n-nodes-langchain.memorybufferwindow, n8n-nodes-base.gmailtool, n8n-nodes-base.manualtrigger, @n8n/n8n-nodes-langchain.vectorstoreqdrant, @n8n/n8n-nodes-langchain.documentdefaultdataloader, @mendable/n8n-nodes-firecrawl.firecrawl, n8n-nodes-base.removeduplicates

Source and attribution

This workflow is cataloged by N8N Workflows and links back to its original n8n.io source page by folorunso victor.

Original n8n.io source

1.1 Workflow description

Title
Auto-index your website and build a RAG chatbot with Firecrawl, Qdrant, and GPT-4o-mini
Workflow name
Auto-index your website and build a RAG chatbot with Firecrawl, Qdrant, and GPT-4o-mini

Build a fully functional AI chatbot for any website using Retrieval-Augmented Generation (RAG). This workflow automatically crawls and indexes your entire site into a Qdrant vector database, then powers a conversational chatbot that searches your content to answer user questions — and escalates unresolved issues to your support team via Gmail.

How it works

Indexing Pipeline

  • A Code node defines which root domains to crawl
  • Firecrawl maps every link across those domains before scraping begins, giving you full visibility of what will be indexed without wasting credits
  • Duplicate URLs are removed across all domains before any scraping starts
  • Each unique page is scraped individually and returned as clean markdown
  • Content is chunked into overlapping segments using a Recursive Character Text Splitter (1000 characters, 200 overlap) to preserve context at chunk boundaries
  • Mistral's codestral-embed-2505 model converts each chunk into a vector embedding
  • All embeddings are stored in Qdrant Cloud in batches of 100
  • A Wait node paces the loop to avoid hitting API rate limits on large sites

AI Chatbot

  • A public Chat Trigger receives messages and generates an embeddable URL for your website
  • GPT-4o-mini processes each message with a 10-message memory window for natural conversation
  • The AI Agent searches the Qdrant vector store only when a question requires it, retrieving the top 3 most relevant chunks per query
  • When it cannot resolve an issue, it collects the user's email, writes a summary, confirms with the user, then sends it via Gmail

How to use

  1. Add all required credentials in n8n Settings > Credentials
  2. Create a Qdrant Cloud collection (1536 dimensions, Cosine distance)
  3. Update the collection name in both Qdrant Vector Store nodes
  4. Open the "set urls to scrape" Code node and replace the placeholder URLs with your own site's root domains
  5. Update the Gmail tool with your support inbox address
  6. Run the indexing pipeline manually using the Run Indexing trigger
  7. Once indexing is complete, activate the workflow and test via Open Chat
  8. Embed the chat trigger URL on your website

Requirements

  • Firecrawl — for site mapping and scraping (firecrawl.dev)
  • Mistral Cloud — for embeddings in both indexing and retrieval (console.mistral.ai)
  • Qdrant Cloud — for vector storage and semantic search (cloud.qdrant.io)
  • OpenAI — for the GPT-4o-mini chat model (platform.openai.com)
  • Gmail OAuth2 — for support email escalation

Customising this workflow

  • Swap GPT-4o-mini for any chat model supported by n8n's LangChain nodes including Gemini, Claude, or Mistral
  • Change the embedding model — if you do, delete and recreate the Qdrant collection with the correct dimensions and re-run indexing
  • Add more URLs to the Code node array to index additional domains
  • Adjust chunk size in the Text Splitter for denser or shorter content
  • Increase the retrieval limit from 3 if answers feel incomplete
  • Replace Gmail with Slack, Zendesk, or any other escalation tool
  • Update the AI Agent system prompt to match your own website and brand voice

1.2 Logical Blocks

This catalog entry is organized from the workflow JSON. The node-level section below shows the executable blocks available for review before importing the template.

2. Block-by-Block Analysis

Block 1 - When chat message received

Type / Role
@n8n/n8n-nodes-langchain.chatTrigger - chatTrigger
Config choices
Version 1.4

Block 2 - Simple Memory

Type / Role
@n8n/n8n-nodes-langchain.memoryBufferWindow - memoryBufferWindow
Config choices
Version 1.3

Block 3 - Send a message in Gmail

Type / Role
n8n-nodes-base.gmailTool - gmailTool
Config choices
Version 2.2

Block 4 - Run Indexing

Type / Role
n8n-nodes-base.manualTrigger - manualTrigger
Config choices
Version 1

Block 5 - Qdrant Vector Store

Type / Role
@n8n/n8n-nodes-langchain.vectorStoreQdrant - vectorStoreQdrant
Config choices
Version 1.3

Block 6 - Default Data Loader

Type / Role
@n8n/n8n-nodes-langchain.documentDefaultDataLoader - documentDefaultDataLoader
Config choices
Version 1.1

Block 7 - Map Site

Type / Role
@mendable/n8n-nodes-firecrawl.firecrawl - firecrawl
Config choices
Version 1

Block 8 - Remove Duplicates

Type / Role
n8n-nodes-base.removeDuplicates - removeDuplicates
Config choices
Version 2

Block 9 - Loop Over Items1

Type / Role
n8n-nodes-base.splitInBatches - splitInBatches
Config choices
Version 3

Block 10 - Single Scrape

Type / Role
@mendable/n8n-nodes-firecrawl.firecrawl - firecrawl
Config choices
Version 1

Block 11 - Recursive Character Text Splitter

Type / Role
@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter - textSplitterRecursiveCharacterTextSplitter
Config choices
Version 1

Block 12 - set urls to scrape

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 13 - Loop Over urls

Type / Role
n8n-nodes-base.splitInBatches - splitInBatches
Config choices
Version 3

Block 14 - Split Out links

Type / Role
n8n-nodes-base.splitOut - splitOut
Config choices
Version 1

Block 15 - extract only urls

Type / Role
n8n-nodes-base.set - set
Config choices
Version 3.4

Block 16 - remove irrelevant params

Type / Role
n8n-nodes-base.set - set
Config choices
Version 3.4

Block 17 - Embeddings Mistral Cloud

Type / Role
@n8n/n8n-nodes-langchain.embeddingsMistralCloud - embeddingsMistralCloud
Config choices
Version 1

Block 18 - Wait

Type / Role
n8n-nodes-base.wait - wait
Config choices
Version 1.1

Block 19 - Qdrant Vector Store1

Type / Role
@n8n/n8n-nodes-langchain.vectorStoreQdrant - vectorStoreQdrant
Config choices
Version 1.3

Block 20 - Embeddings Mistral Cloud1

Type / Role
@n8n/n8n-nodes-langchain.embeddingsMistralCloud - embeddingsMistralCloud
Config choices
Version 1

Block 21 - AI Agent

Type / Role
@n8n/n8n-nodes-langchain.agent - agent
Config choices
Version 3.1

Block 22 - OpenAI Chat Model

Type / Role
@n8n/n8n-nodes-langchain.lmChatOpenAi - lmChatOpenAi
Config choices
Version 1.3

Block 23 - Start Here

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 24 - Workflow Overview

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Showing the first 24 of 33 workflow blocks. Download the JSON for the full node graph.

3. Summary Table

Workflow Auto-index your website and build a RAG chatbot with Firecrawl, Qdrant, and GPT-4o-mini
Complexity advanced
Nodes 33
Categories Support Chatbot, AI RAG
Author folorunso victor
Published 30 Apr 2026

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/15415/15415.json as the source template for this automation.

  2. 2. Import the template into n8n

    Open n8n, import the downloaded JSON, and review each node before activating the workflow.

  3. 3. Configure credentials and variables

    Replace placeholder credentials, API keys, webhook URLs, account IDs, and environment-specific values with your own settings.

  4. 4. Test with sample data

    Run the workflow manually or in a staging workspace, inspect node output, and confirm downstream systems receive the expected data.

  5. 5. Activate and monitor

    Enable the workflow only after testing, then monitor executions, errors, and rate limits during the first production runs.

5. General Notes & Resources

Review imported nodes carefully before activation. This catalog entry is intended to help you inspect the workflow structure, understand required services, and find related templates faster.

Node names, credentials, schedules, webhook paths, and external service limits may need adjustment for your workspace.

Frequently asked questions

What does Auto-index your website and build a RAG chatbot with Firecrawl, Qdrant, and GPT-4o-mini do?

Build a fully functional AI chatbot for any website using Retrieval Augmented Generation (RAG). This workflow automatically crawls and indexes your entire site into a Qdrant vector database, then p...

What do I need before importing this workflow?

Review the workflow JSON, configure any required credentials in n8n, and test the automation in a safe workspace before using it in production.

Can I customize this workflow?

Yes. Use the block-by-block analysis and the downloadable JSON to inspect each node, then adjust credentials, prompts, schedules, filters, or destinations for your Support Chatbot, AI RAG use case.