数据库自然语言查询工具

CData MCP Agent for ADK Web 是一款通过自然语言访问CData Connect Cloud数据库的工具,提供数据库探索、SQL执行和可视化界面功能。

  • by CDataSoftware
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 CDataSoftware/adk-mcp-client

使用说明

ADK Web的CData MCP代理

一个Google ADK代理,通过MCP(模型上下文协议)提供对CData Connect Cloud数据库的自然语言访问。

特性

  • 🔍 自然语言查询:用简单的英语询问有关数据的问题
  • 📊 数据库探索:浏览目录、架构和表
  • 🔧 SQL执行:在连接的数据源上运行查询
  • 🌐 web界面:通过ADK Web的可视化界面

先决条件

  • Python 3.8+
  • 谷歌人工智能API密钥
  • CData Connect Cloud MCP服务器凭据

设置

  1. 安装ADK和依赖项:
pip install google-adk python-dotenv

备注:如果使用安装 pip install --user (或者pip默认为用户安装) adk 命令可能不在您的PATH中。您需要:

  • 使用完整路径: ~/Library/Python/3.x/bin/adk (在macOS上)
  • 添加到路径: export PATH="$HOME/Library/Python/3.x/bin:$PATH" 在shell配置中
  • 使用自动配置PATH的虚拟环境
  1. 配置环境变量:
    • 复制 .env.example 文件到 .env:
      cp .env.example .env
      
    • 编辑 .env 并添加您的凭据:
      # Google AI API Configuration
      GOOGLE_API_KEY=your_google_api_key_here
      
      # CData MCP Server Configuration
      MCP_SERVER_URL=https://mcp.cloud.cdata.com/mcp
      MCP_USERNAME=your_email@example.com
      MCP_PASSWORD=your_mcp_password_here
      
      # Optional: Gemini Model (defaults to gemini-2.0-flash-exp)
      GEMINI_MODEL=gemini-2.0-flash-exp
      

使用ADK Web运行

  1. 启动ADK Web 从该目录:
adk web --port 5000 .
  1. 打开web界面 (通常http://localhost:5000)

  2. 选择代理:选择 cdata_query_assistant 从下拉列表中

  3. 开始查询 您的数据使用自然语言:

    • “有哪些可用的数据库?”
    • “显示MongoDB1中的表”
    • “列出SQL2数据库中的架构”
    • “客户表中有哪些列?”

查询示例

  • 探索数据库:“列出所有可用目录”
  • 查看架构:“显示MongoDB1目录中的模式”
  • 浏览表格:“dbo架构中有哪些表?”
  • 检查结构:“描述订单表中的列”
  • 查询数据:“显示销售数据库中的最新订单”

运作原理

  1. ADK代理:The LlmAgent 接收您的自然语言查询
  2. MCP工具集:通过MCP协议连接到CData Connect Cloud
  3. 工具发现:自动发现可用的数据操作
  4. 双子座AI:了解查询并确定使用哪些工具
  5. 数据访问:执行操作并返回格式化结果

可用的MCP工具

  • getCatalogs -列出可用数据库
  • getSchemas -查看数据库中的架构
  • getTables -浏览架构中的表
  • getColumns -检查表结构
  • getProcedures -列出存储过程
  • getProcedureParameters -查看程序参数
  • executeProcedure -运行存储过程
  • queryData -执行SQL查询

建筑

User Query → ADK Web UI → CData MCP Agent → Gemini AI
                ↓                  ↓
         Visual Interface    MCP Protocol
                ↓                  ↓
         Response Display   CData Connect Cloud

故障排除

  • 连接错误:验证MCP_SERVER_URL和凭据
  • 没有可用的工具:检查MCP服务器是否可访问
  • 身份验证问题:确保用户名/密码正确
  • windows用户:试试 adk web --no-reload 如果遇到子流程错误

备注

  • 该代理使用Gemini 2.0 Flash进行快速、智能的响应
  • 所有数据操作都通过CData的安全MCP服务器进行
  • web界面提供了比CLI更好的用户体验