海外访问:www.kdjingpai.com
Ctrl + D 收藏本站

MCP Toolbox for Databases 是一个开源的数据库工具管理平台,旨在帮助开发者更简单、快速、安全地创建和管理数据库工具。它充当应用程序和数据库之间的控制平面,简化工具的开发、分发和调用。平台支持多种开发框架,如 LangChain、LlamaIndex 和 GoogleGenAI,适合本地或云端部署。用户可以通过简单的配置和少量代码实现工具集成,优化数据库操作效率。MCP Toolbox 提供连接池、认证等功能,确保性能和安全性。它适用于需要快速开发数据库工具的场景,比如 AI 代理的数据访问或自动化数据库管理。当前版本为 0.9.0,仍在 beta 阶段,未来可能有重大更新。

 

功能列表

  • 工具集中管理:提供统一平台存储和更新工具,支持跨应用和代理共享。
  • 动态工具加载:支持动态加载工具,无需重启应用程序即可更新工具配置。
  • 数据库连接优化:内置连接池和认证机制,提升性能和安全性。
  • 多框架支持:兼容 LangChain、LlamaIndex、GoogleGenAI 等开发框架。
  • 自然语言查询:允许通过自然语言直接查询数据库,无需编写复杂 SQL。
  • 自动化数据库管理:支持自动生成查询、创建表和添加索引。
  • 上下文感知代码生成:根据数据库模式生成应用代码和测试用例。
  • 跨平台部署:支持 Linux、Windows、macOS 和容器化部署(如 Docker)。

 

使用帮助

安装流程

MCP Toolbox 提供多种安装方式,适合不同开发环境。以下是详细的安装步骤:

1. 二进制安装

用户可以直接下载适用于操作系统的二进制文件:

  • 访问官方发布页面,选择对应版本(当前为 0.9.0)。
  • 根据操作系统和 CPU 架构(如 linux/amd64 或 darwin/arm64)下载二进制文件:
    export OS="linux/amd64"
    curl -O https://storage.googleapis.com/genai-toolbox/v0.9.0/$OS/toolbox
    chmod +x toolbox
    
  • 将 toolbox 文件移动到系统路径(如 /usr/local/bin),即可运行。

2. 容器化安装

使用 Docker 安装更适合生产环境:

  • 拉取官方 Docker 镜像:
    export VERSION=0.9.0
    docker pull us-central1-docker.pkg.dev/database-toolbox/toolbox/toolbox:$VERSION
    
  • 运行容器,确保端口(默认 5000)可用:
    docker run -p 5000:5000 us-central1-docker.pkg.dev/database-toolbox/toolbox/toolbox:$VERSION
    

3. 源码安装

需要 Go 语言环境(建议使用最新版本):

  • 运行以下命令安装:
    go install github.com/googleapis/genai-toolbox@v0.9.0
    
  • 配置完成后,运行 toolbox 启动服务器。

4. 配置 tools.yaml

安装后需要配置 tools.yaml 文件,用于定义数据源和工具:

  • 创建 tools.yaml 文件,示例配置如下:
    sources:
    my-pg-source:
    kind: postgres
    host: 127.0.0.1
    port: 5432
    database: toolbox_db
    user: ${USER_NAME}
    password: ${PASSWORD}
    tools:
    search-hotels-by-name:
    kind: postgres-sql
    source: my-pg-source
    description: Search for hotels based on name.
    parameters:
    - name: name
    type: string
    description: The name of the hotel.
    
  • 使用环境变量(如 ${USER_NAME})存储敏感信息,避免硬编码。
  • 保存文件后,运行以下命令启动服务器:
    ./toolbox
    
  • 默认启用动态重载,需禁用可添加 --disable-reload 标志。

主要功能操作

1. 加载工具

MCP Toolbox 支持通过 SDK 加载工具,适用于多种框架。以下以 Python SDK 为例:

  • 安装 SDK(根据框架选择):
    pip install toolbox-langchain
    
  • 加载工具集:
    from toolbox_langchain import ToolboxClient
    async with ToolboxClient("http://127.0.0.1:5000") as client:
    tools = await client.load_toolset("toolset_name")
    
  • 加载的工具可直接传递给应用程序或 AI 代理。

2. 自然语言查询

用户可以通过自然语言查询数据库。例如,查询“2024年交付的订单及其包含的商品”:

  • 配置好数据源后,工具会自动将自然语言转换为 SQL 查询。
  • 在支持的 IDE 中,输入类似“Find hotels in Basel with Basel in its name”,工具会调用 search-hotels-by-name 工具,返回结果。

3. 自动化数据库管理

MCP Toolbox 能自动生成数据库操作。例如:

  • 创建表:描述需求,如“创建一个存储用户信息的数据表”,工具会生成相应 SQL。
  • 添加索引:输入“为用户表添加索引”,工具会自动执行。
  • 用户只需在 IDE 中输入需求,工具会处理复杂操作。

4. 上下文感知代码生成

工具根据数据库模式生成代码。例如:

  • 输入“生成用户管理模块代码”,工具会根据表结构生成 CRUD 操作代码。
  • 支持生成测试用例,确保代码可靠性。

停止服务器

运行中的服务器可通过 Ctrl+C 终止。若需后台运行,使用 Docker 或系统服务管理工具。

注意事项

  • 当前版本为 beta(0.9.0),可能存在不稳定情况,建议关注官方发布页面。
  • 确保网络连接稳定,Docker 镜像拉取可能需要科学上网。
  • 敏感信息(如数据库密码)应使用环境变量管理,避免泄露。

 

应用场景

  1. AI 代理开发
    开发者使用 MCP Toolbox 快速构建 AI 代理的数据库工具。例如,酒店预订机器人可以通过自然语言查询酒店信息,自动完成预订操作,减少手动编码工作量。
  2. 数据库管理自动化
    数据分析师无需编写复杂 SQL,通过自然语言描述需求(如“统计2024年销售额”),即可获得查询结果,适合快速数据探索。
  3. 跨团队工具共享
    开发团队可将工具存储在 MCP Toolbox,共享给多个项目或 AI 代理,实现工具复用,降低维护成本。
  4. 实时代码生成
    初学者或忙碌的开发者可利用上下文感知功能,快速生成数据库相关的应用代码,缩短开发周期。

 

QA

  1. MCP Toolbox 支持哪些数据库?
    目前主要支持 PostgreSQL,其他数据库支持正在开发中。用户需在 tools.yaml 中配置对应数据源。
  2. 如何确保工具安全性?
    平台提供内置认证机制,支持环境变量管理敏感信息,避免硬编码。建议使用 HTTPS 部署服务器。
  3. 是否需要高配置环境运行?
    否,MCP Toolbox 设计轻量,可在普通开发机或云服务器上运行。Docker 部署进一步降低环境要求。
  4. 如何更新工具而不重启应用?
    默认启用动态重载功能,新工具或配置更新会自动生效,无需重启服务器。
0已收藏
0已赞

相关推荐

找不到AI工具?在这试试!

输入关键词,即可 无障碍访问 必应 搜索,快速找到本站所有 AI 工具。

邮箱

联系我们

回顶部

zh_CN简体中文