【详细教程】如何将SQLBot的MCP服务集成到n8n

目录

一、背景介绍

二、思路介绍

[2.1. 聊天触发器调用](#2.1. 聊天触发器调用)

[2.2. 表单触发器调用](#2.2. 表单触发器调用)

三、工作流展示

[3.1. 聊天触发器调用](#3.1. 聊天触发器调用)

[3.2 表单触发器调用](#3.2 表单触发器调用)

四、详细操作步骤

[4.1 聊天触发器调用](#4.1 聊天触发器调用)

[4.2. 表单触发器调用](#4.2. 表单触发器调用)

五、表格展示

5.1.聊天触发器调用

[5.2. 表单触发器调用](#5.2. 表单触发器调用)

六、演示效果

[6.1. 方案一:聊天触发器调用](#6.1. 方案一:聊天触发器调用)

[6.2. 方案二:表单触发器调用](#6.2. 方案二:表单触发器调用)

七、总结

八、详细视频地址


一、背景介绍

在n8n平台开展数据分析类操作时,工作流搭建流程繁琐,已成为用户普遍遭遇的核心痛点。但是接入SQLBot即可起到显著的优化作用,因此我们通过在n8n中接入SQLBot的mcp服务,即可简化工作流的步骤,方便用户使用。

二、思路介绍

为应对前述问题,本文提供了两种与 MCP 对接的实现路径。

2.1. 聊天触发器调用

通过聊天触发器传入用户问题,将question参数传给AI进行调用,达成AI调用MCP工具的效果,每次提问可直接在聊天框中输入。

2.2. 表单触发器调用

与聊天触发器调用的区别在于表单触发器通过表单将用户名,密码,用户问题三个参数传给AI,问数结束后需要重新填写表单。

三、工作流展示

**3.1.**聊天触发器调用

3.2 表单触发器调用

四、详细操作步骤

4.1聊天触发器调用

①添加一个聊天触发器。

②添加AI代理节点,选择自定义提示词,填写提示词

提示词示例:

回答要求:

按需调用 mcp_start 和 mcp_question 工具获取信息回答问题。

mcp_start 账号密码:

username:admin

password:SQLBot@123456

工具调用逻辑:

首先调用 mcp_start 工具,获取 access_token 和 chat_id ,帮我记住这两个参数,之后不要重复调用 mcp_start,直接使用即可;然后再调用 mcp_question 工具,其中 token 和 chat_id 参数是调用 mcp_start 工具返回,question 是用户提问。

用户提问:

{{ $json.chatInput }}

输出要求

  • 如果 mcp_question 中有图片,请直接返回图片

  • 请将 mcp_question 的执行结果中的数据、SQL以及图片内容展示

  • 请将 mcp_question 的执行过程在结尾进行总结

限制

  • 不要输出MCP详细执行过程

  • 生成内容不要放在 mcp_question 执行过程中

  • 严格按照输出要求输出内容,不要输出MCP调用过程

说明:直接在提示词中将用户名密码写死,让AI可以直接进行调用,然后把聊天的用户输入传给AI,让AI调用并回答问题。

③给AI代理节点配置AI模型:选择要配置的模型,填写api key,保存校验。

④添加MCP Client工具,填写sse_url,选择sse协议,认证默认none,工具选择mcp_start和mcp_question两个工具或者直接选择all(all里包含这两个工具)。

4.2. 表单触发器调用

①添加一个表单触发器,填写表单标题,添加三个表单元素:username、password、question用来给AI传参。

②添加AI代理节点,选择自定义提示词,填写提示词

提示词示例:

回答要求:

按需调用 mcp_start 和 mcp_question 工具获取信息回答问题。

mcp_start 账号密码:

username:{{ $json.username }}

password:{{ $json.password }}

工具调用逻辑:

首先调用 mcp_start 工具,获取 access_token 和 chat_id ,帮我记住这两个参数,之后不要重复调用 mcp_start,直接使用即可;然后再调用 mcp_question 工具,其中 token 和 chat_id 参数是调用 mcp_start 工具返回,question 是用户提问。

用户提问:

{{ $json.question }}

输出要求

  • 如果 mcp_question 中有图片,请直接返回图片

  • 请将 mcp_question 的执行结果中的数据、SQL以及图片内容展示

  • 请将 mcp_question 的执行过程在结尾进行总结

限制

  • 不要输出MCP详细执行过程

  • 生成内容不要放在 mcp_question 执行过程中

  • 严格按照输出要求输出内容,不要输出MCP调用过程

说明:在提示词中传入表单输入的三个参数,让AI调用mcp工具回答问题。

③给AI代理节点配置AI模型:选择要配置的模型,填写api key,保存校验。

④添加MCP Client工具,填写sse_url,选择sse协议,认证默认none,工具选择mcp_start和mcp_question两个工具或者直接选择all(all里包含这两个工具)。

五、表格展示

**5.1.**聊天触发器调用

|---------|------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------|
| 组件 | 设置 | 截图 |
| 聊天触发器 | 添加聊天触发器 | ​ |
| AI代理 | ①选择自定义提示词 ②填写提示词 | ​ |
| AI模型 | ①选择AI模型 ②配置api key ③保存校验 | ​ |
| Mcp调用工具 | ①填写sse_url ②选择sse协议 ③选择mcp工具 | ​ |

5.2. 表单触发器调用

|---------|-------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------|
| 组件 | 设置 | 截图 |
| 表单触发器 | 添加三个表单元素:username、password、question | ​ |
| AI代理 | ①选择自定义提示词 ②填写提示词 | ​ |
| AI模型 | ①选择AI模型 ②配置api key ③保存校验 | ​ |
| Mcp调用工具 | ①填写sse_url ②选择sse协议 ③选择mcp工具 | |

六、演示效果

**6.1. 方案一:**聊天触发器调用

6.2. 方案二:表单触发器调用

七、总结

两种方式的输出结果都是一样的。在问数上,表单触发器可以通过表单进行传参,但是每次问数都需要重新填写表单;而聊天触发器可以在聊天窗口不停问数,无需重复填写表单信息,更加方便。

八、详细视频地址

【【详细教程】如何将SQLBot的MCP服务集成到n8n】 https://www.bilibili.com/video/BV1xGe1zrE2o/?share_source=copy_web\&vd_source=d66e1339b701dc8f348d56b0063218ec