ITPub博客

首页 > 人工智能 > 人工智能 > 手把手教你构建基于魔搭 x OceanBase MCP 的 Agent

手把手教你构建基于魔搭 x OceanBase MCP 的 Agent

原创 人工智能 作者:老纪的技术唠嗑局 时间:2025-08-15 15:17:23 0 删除 编辑

01 前言

AI 正当时,数据库管理是否仍需依赖复杂的 SQL 语句与命令行操作?

#OceanBase  联合  #ModelScope  推出 “ AI 驱动的数据库智能管理 ”新范式 —— 通过  # MCP (Model Calling Protocol) 技,我们让开发者与数据库之间的交互从“敲命令”升级为“对话”。

无需记忆指令、无需编写脚本,只需用自然语言提问,即可完成 OceanBase 数据库集群的创建、运行、管理、诊断与数据分析。

本项目基于 ModelScope 创空间平台构建,融合大语言模型( LLM )与数据库工具链,实现真正意义上的“对话即操作”。无论你是数据库新手,还是资深 DBA,都能从中获得前所未有的高效体验。

02  功能介绍

2.1.  MCP 服务器

本项目目前已支持  OBShell 、 OBServer 、 obdiag,分别对应数据库集群的创建,运行,管理三个阶段。在上述三个工具的支持下,用户能在不敲一行代码,不输一句指令的情况下,仅靠与 Agent 对话,完成 OceanBase 数据库集群的全生命周期使用。

image

所有的 MCP 服务以及更多的拓展都可以在开源 仓库找到。欢迎探索 图片

https://github.com/oceanbase/mcp-oceanbase 

2.1.1.  OBShell MCP 介绍

OBShell 能显著的提高数据库管理效率,涵盖了集群管理、租户管理、备份与恢复、权限管理、监控与维护等多个方面。OBShell 目前支持六个工具调用:

  • create_cluster:创建一个新的 OceanBase 集群。用户既可以采用默认配置迅捷部署,也可以详细指定集群参数部署自定义集群。
  • create_tenant:创建一个新的 OceanBase 租户。一个 OceanBase 集群可以包含多个租户,一个 OceanBase 租户可以包含多个数据库用户。用户既可以采用默认配置快速创建租户,也可以详细指定租户各项参数自定义部署。
  • get_all_obshell_sdk_methods:获取 OBShell 支持的所有方法。是在

create_cluster 和 create_tenant 的基础上增加的更多调用支持。

  • get_obshell_sdk_methods_description:通过方法名获取 OBShell 的 sdk 方法的描述。
  • call_obshell_sdk:调用 OBShell 的 sdk 方法。

2.1.2.  OBServer MCP 介绍

通过 OBServer MCP,Agent 可以实现对数据库数据的增删查改。 

  • execute_sql:执行一条SQL语句。包括但不限于查询,获得表 Schema,为表添加索引等。

2.1.3.  OBDiag MCP 介绍

通过 OBDiag, 用户可以实现对数据库集群的巡检,诊断,信息查询等。

  • obdiag_check_run:巡检集群,并返回巡检报告。
  • obdiag_analyze_log:分析集群日志,找出发生过的错误信息并返回。
  • obdiag_display_list:obdiag 集群信息查询功能功能,返回支持的指令列表。
  • obdiag_display_run:obdiag 集群信息查询功能,执行获取的指令列表,需要功能来自 obdiag_display_list 的返回结果。

2.2. Agent 实现逻辑

图片

通过 mcp_cluster 管理 OceanBase MCP 服务器的元数据并对 MCP 服务器进行管理。AI 推理时会新建一个异步进程进行推理,推理过程的工具调用 mcp_cluster 进行,推理得到的结果通过进程通信(一个队列)返回到主进程,从而打印到魔搭 web 页面。


03 基于魔搭创空间体验属于自己的 AI Workshop

要求:

  • 尽量不要使用 Safari 浏览器,以免上传不了导数数据集。
  • 提前注册好魔搭账户。如果要使用魔搭的免费 API,请绑定好阿里云的账户。

注:如果误操作造成了环境异常,请根据 3.7附录:环境修复 中的操作重启即可。

3.1.  复制AI Workshop创空间

进入 OceanBase 的官方创空间,复制一个自己的创空间。

https://modelscope.cn/studios/OceanBase/Oceanbase-AI_Workshop-Public/summary

image 创空间配置:

image

image

我们主要有三项配置需要关注:

  • “英文名称”:改成一个自己喜欢的名称。
  • “是否公开”:选择“非公开”。避免外来用户滥用私有创空间的API_KEY额度。
  • 环境变量配置:API_KEY:可以使用魔搭提供的免费API_KEY。获取步骤:绑定好阿里云的账号:

image
打开 https://modelscope.cn/my/myaccesstoken 即可查看自己的API_KEY(即访问令牌)。
image

  • LLM_MODEL:模型名称。演示使用的是

Qwen/Qwen3-235B-A22B-Instruct-2507

  • LLM_BASE_URL:模型API调用的URL。如果使用的是魔搭的API_KEY,则填写:
    https://api-inference.modelscope.cn/v1/

    API_KEY = {API_KEY} # 注册魔搭账号免费获取大额度 API_KEYLLM_MODEL = Qwen/Qwen3-235B-A22B-Instruct-2507LLM_BASE_URL = https://api-inference.modelscope.cn/v1/

    • 其他配置项采用初始默认项即可。

    填写好配置后,点击 复制创空间 按钮得到属于自己的一个创空间。之后等待创空间初始化完毕即可。第一次使用创空间初始化时间比较长,请耐心等待。

    3.2.  部署数据库集群

    创建 OceanBase 集群:

      调用工具,采用默认配置创建一个 OceanBase 数据库集群

      image

      创建 OcenBase 租户:

        调用工具,采用默认配置创建一个 OceanBase 数据库租户
        image

        3.3.  创建导数目标表

        测试数据: 📎文件请见论坛 

        https://ask.oceanbase.com/t/topic/35629341

        针对我们提供的数据集,推荐使用该 Prompt 提示助手创建数据库表。

          
          根据示例数据调用工具在数据库中创建表(表名默认为transactions):
          
          step,
          type,amount,nameOrig,oldbalanceOrg,newbalanceOrig,nameDest,oldbalanceDest,newbalanceDest,isFraud,isFlaggedFraud
          
          1,PAYMENT,9839.64,C1231006815,170136.0,160296.36,M1979787155,0.0,0.0,0,0
          
          1,PAYMENT,1864.28,C1666544295,21249.0,19384.72,M2044282225,0.0,0.0,0,0
          
          1,TRANSFER,181.0,C1305486145,181.0,0.0,C553264065,0.0,0.0,1,0
          
          
          

          image

          3.4.  导入数据

          通过左侧工具导入数据:
          image

          导入成功后结果如图:
          image

          3.5.  数据查询

            调用工具,查看transactions表有多少条数据

            image

              调用工具,查询数额在10000到20000之间的交易记录有多少条

              image

              接下来就可以调用 OceanBase MCP 分析数据库数据了, execute_sql  工具几乎支持所有 OceanBase 的 SQL 语句,欢迎用户继续探索。

              3.6.  数据库诊断

              左侧添加 obdiag MCP 服务:
              image

              3.6.1.  集群巡检

                调用工具,使用 OBDiag 巡检集群

                (目前该创空间还处于 Demo 阶段,能力有限,当前版本如果尝试让 Agent 修复巡检出来的问题,可能会出现非预期行为,请不要轻易尝试。未来会添加修复巡检问题的能力)
                image

                3.6.2.  查看 obdiag 支持的分析场景

                  调用工具,查看 obdiag_display_list 支持的分析场景

                  image

                  选择几个我们感兴趣的场景询问:

                    调用工具,展示 observer.all_tenant 和 observer.serverinfo

                    image

                    04  总结

                    通过以上的 AI Workshop 实战,相信大家都已经感受到了 MCP 与  OceanBase  结合给数据库全生命周期管理带来的便利。欢迎大家加入魔搭和  OceanBase  社区,一起探索 AI & 数据库的广阔前景。


                    ⏰本周六在 OceanBase 杭州站的 Meetup 我们讲现场 Demo 上述 Agent,欢迎小伙伴们来体验~
                    OceanBase × 魔搭社区 “SQL 遇上 AI” 城市交流会杭州站即将启动!


                    来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70047136/viewspace-3093572/ ,如需转载,请注明出处,否则将追究法律责任。

                    请登录后发表评论 登录
                    全部评论

                    注册时间:2025-07-22

                    • 博文量
                      107
                    • 访问量
                      100924