
RuleGo-MCP-Server
# RuleGo-Server 与 MCP 协议:打通 AI 与应用的桥梁
RuleGo-Server 支持 MCP(Model Context Protocol,模型上下文协议),开启后,系统会自动将所有注册的组件、规则链以及 API 注册为 MCP 工具。这使得 AI 助手(如 Windsurf、Cursor、Codeium 等)能够通过 MCP 协议直接调用这些工具,实现与应用系统的深度融合。
利用RuleGo灵活特性,可以快速把打造MCP工具共享与开发平台,也可以快速把业务系统通过RuleGo桥接与AI 助手进行集成。
# 什么是 MCP 协议?
MCP 是一种标准化协议,旨在解决 AI 模型与应用系统之间的交互问题。它为 AI 提供了对应用系统代码和数据的上下文感知能力,而不仅仅是简单的代码补全或聊天问答。MCP 的作用类似于 USB-C 接口,为 AI 提供了一种标准化的方式,使其能够连接到不同的数据源和工具。
# RuleGo-Server 的 MCP 功能
开启 MCP 后,RuleGo-Server 会自动将以下资源注册为 MCP 工具:
-
组件工具
RuleGo 提供了覆盖 AI、CI/CD、ETL、IoT、数据库操作、网络操作、消息队列等领域的海量组件。AI 助手可以通过 MCP 协议调用这些组件,实现与其他系统的联动。 组件入参数和使用方式参考:标准组件 和 扩展组件。 -
组件市场
RuleGo-Server 提供了一个在线组件市场 ,用户可以动态下载和安装组件,扩展系统的功能。 -
规则链工具
规则链是 RuleGo 的核心功能,由多个组件节点和链接组成,定义了数据流转和处理规则。规则链支持在线编辑和热更新,可把规则链通过 MCP 协议动态提供工具,无限扩展智能体的边界。 -
规则链市场
用户可以在规则链市场 中下载和安装规则链,并自动发布为 MCP 工具。 -
RuleGo-Server API 工具
提供规则链的添加、删除、查看、更新等功能,为 AI 助手提供操作规则链的能力,让AI助手不单是使用工具,而且还能根据需要自行动态扩展工具。
# MCP 的核心价值:打通 AI + 应用的最后一公里
MCP 协议和 RuleGo-Server 的结合,为企业提供了以下关键能力:
-
增强 AI 对业务逻辑的理解
AI 助手通过 MCP 协议调用规则链工具,能够深入理解业务逻辑。例如,在复杂的订单处理流程中,AI 可以通过规则链工具实时跟踪订单状态,优化处理流程。 -
实现智能自动化决策
AI 助手通过 MCP 协议获取实时数据,结合算法和模型进行智能分析和决策。例如,在实时监控系统中,AI 可以根据规则链的执行结果自动触发异常处理流程。 -
扩展智能体边界
RuleGo 的组件和规则链为 AI 助手提供了无限扩展的可能性。例如:
- 通过 HTTP 组件访问外部 API,获取实时数据。
- 通过 Git 组件自动提交代码,实现 CI/CD 流程。
- 通过规则链实现复杂的业务逻辑,如自动化报表生成。
-
促进跨系统集成
MCP 协议为不同系统之间的集成提供了标准化方式。RuleGo-Server 作为中间层,将数据源和工具封装为 MCP 工具,实现跨系统的数据共享和业务协同。 -
应用交互新范式
业务系统通过 RuleGo-Server 很容易将服务和数据封装为 MCP 工具,为 AI 助手提供更多智能业务场景。 例如,企业可以将内部系统的服务暴露为 MCP 工具,供外部 AI 助手调用。为AI智能体提供更多智能业务场景以及应用交互新范式,打通大模型AI与应用系统鸿沟。
# 总结
RuleGo-Server 的 MCP 功能为企业提供了一种全新的 AI 与应用交互方式,真正打通了 AI + 应用的最后一公里。通过 MCP 协议,企业可以快速构建智能业务场景,实现 AI 与应用系统的深度融合,为数字化转型提供强大支持。
# RuleGo-Server MCP 使用教程
# 准备工作
-
下载并启动 RuleGo-Server
从 下载页面 下载最新版本的 RuleGo-Server,并按照安装指南启动服务。
2. 确保 MCP 功能已启用
在启动 RuleGo-Server 之前,确保 MCP 功能已启用(默认启用)。您可以在 config.conf
配置文件中进行设置。
# 启动配置
在 config.conf
配置文件中,配置 MCP 服务的相关参数:
[mcp] # 是否启用 MCP 服务 enable = true # 是否将组件注册为 MCP 工具 load_components_as_tool = true # 是否将规则链注册为 MCP 工具 load_chains_as_tool = true # 是否添加规则链 API 工具 load_apis_as_tool = true # 排除的组件列表(支持通配符) exclude_components = comment,iterator,delay,groupAction,ref,fork,join,*Filter # 排除的规则链列表 exclude_chains = # 用户列表配置 # 格式:username = password[,apiKey] # 如果配置了 apiKey,调用方可以直接使用 apiKey 访问其他接口而无需登录 [users] admin = admin,2af255ea5618467d914c67a8beeca31d # 管理员账号, 用户名: admin 密码: admin apiKey: 2af255ea5618467d914c67a8beeca31d user01 = user01,2af255ea5618467d914c67a8beeca51c # 普通用户 01, 用户名: user01 密码: user01 apiKey: 2af255ea5618467d914c67a8beeca51c user02 = user02 # 仅密码验证用户,不支持 apiKey 验证
- 多用户支持:配置多个用户,每个用户可以访问不同的接口。
- apiKey 配置:为用户配置 apiKey,以便直接使用 apiKey 访问接口而无需登录。
# 配置 MCP 服务地址
RuleGo-Server MCP 服务地址格式为:
http://{ip}:{port}/api/v1/mcp/{apiKey}/sse
例如,启动 RuleGo-Server 后,服务会打印以下地址:
2025/03/30 20:33:17 RuleGo-Server now running at http://127.0.0.1:9090 2025/03/30 20:33:17 RuleGo-Server mcp server running at http://127.0.0.1:9090/api/v1/mcp/2af255ea5618467d914c67a8beeca31d/sse 2025/03/30 20:33:17 started rest server on :9090
将 MCP 服务地址添加到 AI 助手的配置中。以下以 Cherry Studio 为例:
- 打开 Cherry Studio 设置。
- 找到 "MCP 服务器" 选项。
- 点击 "添加服务器"。
- 填写 MCP Server 的相关参数:
- 名称:自定义名称,例如
rulego-server
- 类型:选择
SSE
- URL:填写
http://127.0.0.1:9090/api/v1/mcp/2af255ea5618467d914c67a8beeca31d/sse
- 名称:自定义名称,例如
- 点击“确定”保存。
详细教程可参考 MCP 使用教程
- (opens new window)。
# 组件工具使用示例
- 列出所有工具
在 AI 助手中启用 MCP 服务后,可以列出所有可用的 MCP 工具。 - 通过 HTTP 客户端访问网站
使用 HTTP 客户端组件访问外部 API,获取实时数据。 - 通过 GitLog 组件获取提交日志
使用 GitLog 组件获取代码仓库中的提交日志,自动生成版本发布文档。 - 使用数据库客户端查询数据
通过数据库客户端组件查询数据库,获取所需数据。
# 规则链工具使用示例
如果需要实现复杂的业务逻辑,可以使用规则链对组件进行组合编排。以下以“通过 ID 查询用户详情”为例,展示如何使用规则链提供 MCP 工具功能。
# 创建规则链
-
方式一:上传 DSL 文件
将组件 DSL 文件上传到data/workflows/{username}/rules
目录下(需要重启服务)。 -
方式二:通过 API 安装组件
使用 RuleGo-Server 提供的 API 安装组件(无需重启服务):POST /api/v1/rules/:chainId
-
请求体为规则链 DSL。
-
方式三:通过 RuleGo-Editor 编辑规则链
# 示例规则链 DSL
{ "ruleChain": { "id": "queryUser", "name": "通过 ID 查询用户", "debugMode": true, "root": true, "disabled": false, "additionalInfo": { "createTime": "2025/03/30 00:15:10", "description": "通过 ID 查询用户", "layoutX": "280", "layoutY": "280", "updateTime": "2025/03/30 00:15:10", "username": "admin" } }, "metadata": { "endpoints": [], "nodes": [ { "id": "node_1", "additionalInfo": { "layoutX": 660, "layoutY": 270 }, "type": "dbClient", "name": "操作用户表", "debugMode": true, "configuration": { "driverName": "mysql", "dsn": "root:root@tcp(127.0.0.1:3306)/test", "getOne": true, "poolSize": 0, "sql": "select * from users where id=${msg.id}" } } ], "connections": [] } }
# 注意事项
- MCP 工具规则链不应添加其他类型的【输入端】节点。
- 保存后,MCP 工具会自动实时生效,可以在 AI 助手中调用该规则链工具。
# 其他注意事项
- AI 助手支持:确保 AI 助手使用支持 MCP 调用的大模型。
- 配置文件过滤:通过
load_components_as_tool
、load_chains_as_tool
、load_apis_as_tool
、exclude_components
和exclude_chains
过滤和关闭某些组件或规则链,避免 MCP 工具被误用或干扰。 - 输入参数约束:规则链可以通过配置
ruleChain.additionalInfo.inputSchema
约束 AI 助手的输入参数,确保输入数据的正确性。
通过以上步骤,您可以快速上手 RuleGo-Server 的 MCP 功能,实现 AI 与应用系统的深度融合。
还没有评论,来说两句吧...