AI-Powered Chatbot Workflow with MySQL Integration
This guide shows you how to deploy a chatbot that lets you query your database using natural language. You will build a system that accepts chat messages, retains conversation history, constructs dynamic SQL queries, and returns responses generated by an AI model. By following these instructions, you will have a working solution that integrates n8n’s AI Agent capabilities with MySQL.
Prerequisites
Before you begin, ensure that you have the following:
- An active n8n instance (self-hosted or cloud) running version 1.50.0 or later.
- Valid MySQL credentials configured in n8n.
- API credentials for the Groq Chat Model (or your preferred AI language model).
- Basic familiarity with SQL and n8n node concepts such as chat triggers and memory buffers.
- Access to the n8n Docs on AI Agents for further reference.
Workflow Setup
1. Chat Interface & Trigger
- When Chat Message Received
This node listens for incoming chat messages via a webhook. When a message arrives, it triggers the workflow immediately.
2. Conversation Memory
- Chat History
This memory buffer node stores the last 10 interactions. It supplies conversation context to the AI Agent, ensuring that responses consider previous messages.
3. AI Agent Core
- AI Agent (Tools Agent)
The AI Agent node orchestrates the conversation by receiving the chat input and conversation history. It dynamically generates SQL queries based on your requests and coordinates calls to external tools (such as MySQL nodes).
4. Database Interactions
-
MySQL Node
This node executes the SQL query generated by the AI Agent. You reference the query using an expression (e.g., {{$node["AI Agent"].json.sql_query}}
), allowing the agent’s output to control data retrieval.
-
MySQL Schema Node
This node retrieves a list of base tables from your MySQL database (excluding system schemas). The agent uses this information to understand the available tables.
-
MySQL Definition Node
This node fetches detailed metadata (such as column names, data types, and relationships) for a specific table. The table and schema names are supplied dynamically by the AI Agent.
5. Language Model Processing
- Groq Chat Model
This node connects to the Groq Chat API to generate text completions. It processes the combined input (chat message, context, and data fetched from MySQL) and produces the final response.
6. Guidance & Customization
- Sticky Notes
These nodes provide guidance on:
- Switching the chat model if you wish to use another provider (e.g., OpenAI or Anthropic).
- Adjusting the maximum token count per interaction.
- Customizing the SQL queries and the context window size.
They help you modify the workflow to suit your environment and requirements.
Workflow Connections
- The Chat Trigger passes the incoming message to the AI Agent.
- The Chat History node supplies conversation context to the AI Agent.
- The AI Agent calls the MySQL nodes as external tools, generating and sending dynamic SQL queries.
- The Groq Chat Model processes the consolidated input from the agent and outputs the natural language response delivered to the user.
Testing the Workflow
- Send a chat message using the chat interface.
- Observe how the AI Agent processes the input and generates a corresponding SQL query.
- Verify that the MySQL nodes execute the query and return data.
- Confirm that the Groq Chat Model produces a coherent natural language response.
- Refer to the sticky notes for guidance if you need to fine-tune any node settings.
Next Steps and References
-
Customize Your AI Model
Replace the Groq Chat Model with another language model (such as the OpenAI Chat Model) by updating the node credentials and configuration.
-
Enhance Memory Settings
Adjust the Chat History node’s context window to retain more or fewer messages based on your needs.
-
Modify SQL Queries
Update the SQL queries in the MySQL nodes to match your specific database schema and desired data.
-
Further Reading
Consult the n8n Docs on AI Agents for additional details and examples to expand your workflow’s capabilities.
-
Set Up a Website Chatbot
Copy & Paste and replace the placeholders in the following code to embed the chatbot into your personal or company's website: View in CodePen 🡥
By following these steps, you will deploy a robust AI chatbot workflow that integrates with your MySQL database, allowing you to query data using natural language.