Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用

在 AI 应用开发领域,检索增强生成(RAG)已成为构建智能问答、文档分析等场景的核心技术。通过 RAG,AI 应用能够结合现有知识库,在生成回答时引入外部信息,从而为用户提供更准确、更智能的响应。同时,通过组合 AI Agent + DB MCP Server,从而实现通过 AI 与数据库的交互操作也是数据库系统接入 AI 应用的一个常见场景。


本文将通过一个实践案例,展示如何使用 Oracle Database 23ai、dify、Oracle SQLcl MCP 从零开始构建一个功能完备的 RAG 应用,以及通过 Agent 与 SQLcl MCP Server 实现 Oracle 数据访问。


Dify 是一个开源的 LLM 应用开发平台,它提供了友好的图形化界面,让开发者可以快速编排和部署 AI 应用和工作流。

MCP(Model Context Protocol,模型上下文协议) 是由 Anthropic 公司于 2024 年 11 月推出并开源的开放协议,旨在实现大语言模型(LLM)与外部工具、数据源的高效交互。MCP 通过标准化的接口,让 AI 系统能够实时访问和调用数据库、API 及其他服务,从而打破“数据孤岛”,提升 AI 应用的实时性、可操作性和协作能力。

Oracle SQLcl:  Oracle SQLcl 是一款功能强大、灵活且免费的命令行界面工具,专为现代 Oracle 数据库专业人员设计。SQLcl 集成的 MCP 服务器搭建起了 Oracle 数据库与 AI 驱动解决方案之间的桥梁,它允许大语言模型(LLMs)以交互方式执行查询并处理结果。这一特性使 SQLcl 成为传统数据库开发与前沿 AI / 机器学习驱动应用的首选界面。


部署 Oracle Database 23ai


Oracle Database 23ai 提供了多种部署方式,例如通过 Docker、rpm安装包,数据库文件压缩包等。为了方便实验,本文将使用 Oracle Database 23ai Free Docker版来部署 Oracle Database 23ai 数据库。

注:Oracle Database 23ai Free Docker版仅适用于学习或测试场景,请不要应用于生产环境。

安装 Oracle Database 23ai Docker 数据库环境,可以参考该文档:


https://container-registry.oracle.com/ords/f?p=113:4:7872189919188:::4:P4_REPOSITORY,AI_REPOSITORY,AI_REPOSITORY_NAME,P4_REPOSITORY_NAME,P4_EULA_ID,P4_BUSINESS_AREA_ID:1863,1863,Oracle%20Database%20Free,Oracle%20Database%20Free,1,0&cs=3MLjTCLKvSyGBtELAaunHh7O9xjzqCAMM1YburVKsF4728ObWaTdZPYJgN6tydMYzB7vgj04O3NZWuFYD5OAPqw


Oracle Database 23ai docker-compose.yml 示例参考文件:


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


安装完成后,查看Docker 运行状态:


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用

 

通过运行 sqlplus 操作和管理Oracle Database 23ai 数据库:


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


以上连接成功,表示 Oracle Database 23ai 安装成功。


部署 Dify


在本文中,我们将使用 Oracle Database 23ai 作为 Dify 的向量数据库,用于存储 RAG 应用所需的知识库内容。同时,Dify 还需要一个关系型数据库存储元数据。目前 Dify 官方仓库(最新版为 v1.5.1)使用 PostgreSQL 15 版本进行元数据存储和管理(若需使用外部 PostgreSQL,需修改 `.env` 中对应配置)。

启动 Dify 服务器简单的方式是通过 Docker Compose。首先,克隆 Dify 仓库,进入 Dify 的 `docker` 目录,复制一份环境变量配置文件:


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


然后编辑 `.env` 文件,将 `VECTOR_STORE` 设置为 `oracle`,并填入 Oracle Database 23ai 的连接信息:


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


修改完环境变量配置后,执行以下命令启动 Dify 服务。


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


可选:Dify 的 `docker-compose.yaml` 文件中包含 Oracle 容器配置,但由于我们已单独部署 Oracle Database 23ai,可将其中的 Oracle 容器配置注释掉,避免启动多余容器。

服务启动后,在浏览器输入 `http://localhost` 即可访问 Dify 的 Web 界面。第一次登录需要设置用户名和密码:


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


设置模型供应商


在Dify中,需要使用大语言模型和其他 embedding 模型等,可以在登录dify后点击右上角的头像,选择`设置`进入设置页面。


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


点击`模型供应商`,这里读者可以自行选择模型供应商。


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


在 `API Key` 中填入所选模型的 API Key,然后点击 `保存`。


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


选择默认的`系统模型`,这里主要需要设置`系统推理模型`和 `Embedding 模型`,大家可以根据自己的业务需求进行选择。


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


创建知识库,使用 RAG 检索


完成模型设置后,接下来可以开始索引知识库了。回到首页,点击顶端的 `知识库` 标签页,进入知识库管理界面,点击`创建知识库`。


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


选择`导入已有文本`,可以直接拖入文件进行索引。这里我上传了两篇关于RAG技术 ### AgenticRAG 和Graph RAG 的论文。


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


然后设置文本的分段规则,这里可以保留默认设置。点击`预览块`可以在右侧预览分段后的结果。确认没问题后,点击 `保存并处理`。

继续下一步,创建知识库创建成功。


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


以上,知识库创建完成。



创建对话应用


基于上面创建的知识库,创建一个知识库对话应用。点击`工作室`标签页,进入应用管理界面,点击`创建空白应用`。


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


选择`聊天助手`,并填写`应用名称`。输入完成后点击`创建`按钮。


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


点击文件图标,可以看到具体引用的内容。这个的这些内容就来源于我们之前上传的两份文档之中。


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


以上,我们基于Oracle Database 23ai 向量数据库,构建了RAG的知识库并实现了基于知识库的对话操作,实现了专业数据的知识检索,扩展了AI 的能力。



将 Dify 应用转换为 MCP Server


Dify 可作为 MCP Server,使构建的 AI 应用能被其他 MCP 客户端(如 Cursor、Windsurf、Cherry Studio 等)调用,拓展使用场景。MCP Server 插件是 Dify 社区贡献的扩展类型插件,安装后可将任意 Dify 应用转化为符合 MCP 标准的服务端点,供外部 MCP 客户端直接访问。

在 Dify 的 `Marketplace` 中选择 `MCP server` 插件进行安装:


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


接下来,设置 MCP Server,`App` 选择上一步发布的聊天助手应用。


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


按照 MCP 规范,我们需要为工具提供一个清晰的输入模式。对于聊天 Dify 应用,确保在输入模式中包含一个 `query` 字段,格式如下:


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


配置完 MCP Server 后,可获得一个 MCP Server 端点。Dify 提供 SSE 和 Streamable HTTP 两种端点,本文选择 `/mcp` 后缀的 Streamable HTTP 端点:


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


将端点 URL 复制到 MCP Client,这里我使用 Cherry Studio。注意这里的IP和端口需要和你的主机对外服务IP和端口一致。


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


配置完成后,在聊天界面选择配置的 Dify MCP Server。


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


询问一个与知识库内容相关的问题,就能从 Dify MCP Server 调用RAG检索知识库数据得到预期的回答了。


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


以上部分,实现了通过将 Dify 知识库应用作为服务,通过 MCP Server 调用配合知识库应用实现调用Dify RAG应用,你还可以通过该方法,实现调用 Dify 中的Workflow 应用。


使用 Dify Agent 连接 Oracle SQLcl MCP Server 实现数据库操作


首先,我们需要在 Dify 的 `Marketplace` 中添加支持 MCP 工具的 Agent ,使用Agent 方式实现MCP Server的对接。


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


我们也需要安装 mcp-proxy 和 Oracle SQLcl ,作为MCP server实现数据访问。

pip install mcp-proxy


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用



下载 Oracle SQLcl 25.2


https://download.oracle.com/otn_software/java/sqldeveloper/sqlcl-25.2.1.195.1751.zip


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


解压并配置 Linux 路径,设置 Oracle SQLcl MCP Server 连接数据库信息(备注:运行 Oracle 需要 Java 17 及以上版本,本文省略 Java 环境安装步骤,请自行安装)。

操作命令如下:


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


输出如下:


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


启动 mcp-proxy 配置 SSE 端口,调用 Oracle SQLcl 实现 stdio 转 SSE 服务:


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


在 Dify 中添加 MCP 工具


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


创建 Dify Workflow,添加 Agent 并配置 MCP 工具,通过 HTTP SSE 方式访问 mcp-proxy 开启的 MCP Server 服务,同时配置相关大模型和提示词等:


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


开始运行 Agent,测试使用 Oracle SQLcl MCP server 进行数据操作测试,测试各种数据查询与操作。


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用


Dify + Oracle + MCP:轻松构建 RAG 与 MCP Agent 智能应用

总结


本文详细介绍了如何结合 Dify、Oracle Database 23ai 和 MCP 从零开始构建功能完备的 RAG 应用,同时构建了基于 Oracle SQLcl 的 MCP Server,实现了 Agent 联合 MCP Server 进行数据操作的能力。教程涵盖部署环境、创建知识库、构建聊天助手及调试的全过程,还演示了如何将 Dify 应用转化为标准 MCP Server 供外部客户端调用,以及 Dify Agent 与 Oracle SQLcl MCP Server 的集成配置,从而极大扩展了 AI 应用的集成与协作能力。

前沿技术大模型技术新闻资讯

别再存轨迹了:SkillRL 让 Agent 把经验炼成技能,还会自我进化

2026-4-6 7:18:32

前沿技术大模型技术新闻资讯

2026 做 Agent 的正确姿势:单 Agent 起步,Skills 沉淀方法论,MCP 负责连接

2026-4-6 8:16:33

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
购物车
优惠劵
搜索