Skip to main content
使用 MCP 工具箱将您的数据库与 LangChain 代理集成。

概述

MCP 数据库工具箱 是一个开源的数据库 MCP 服务器。它在设计时考虑了企业级和生产质量。它通过处理连接池、身份验证等复杂性,使您能够更轻松、更快速、更安全地开发工具。 工具箱工具可以无缝集成到 LangChain 应用程序中。有关入门或配置 MCP 工具箱的更多信息,请参阅文档。 架构

设置

本指南假设您已完成以下操作:
  1. 已安装 Python 3.9+ 和 pip。
  2. 已安装 PostgreSQL 16+ 和 psql 命令行客户端。

1. 设置您的数据库

首先,让我们设置一个 PostgreSQL 数据库。我们将创建一个新数据库、一个用于 MCP 工具箱的专用用户,以及一个包含一些示例数据的 hotels 表。 使用 psql 命令连接到 PostgreSQL。您可能需要根据您的 PostgreSQL 设置调整命令(例如,如果需要指定主机或不同的超级用户)。
现在,运行以下 SQL 命令来创建用户、数据库并授予权限:
使用新用户连接到新创建的数据库:
最后,创建 hotels 表并插入一些数据:
现在,您可以通过输入 \q 退出 psql。

2. 安装 MCP 工具箱

接下来,我们将安装 MCP 工具箱,在 tools.yaml 配置文件中定义我们的工具,并运行 MCP 工具箱服务器。 对于 macOS 用户,最简单的安装方式是使用 Homebrew:
对于其他平台,下载适用于您的操作系统和架构的最新 MCP 工具箱二进制文件。 创建一个 tools.yaml 文件。此文件定义了 MCP 工具箱可以连接的数据源以及它可以向您的代理公开的工具。对于生产用途,请始终使用环境变量来存储密钥。
现在,在一个单独的终端窗口中,启动 MCP 工具箱服务器。如果您是通过 Homebrew 安装的,只需运行 toolbox。如果您是手动下载的二进制文件,则需要从保存它的目录运行 ./toolbox:
MCP 工具箱默认将在 http://127.0.0.1:5000 上启动,如果您对 tools.yaml 文件进行更改,它将热重载。

实例化

调用

在代理中使用

现在进入有趣的部分!我们将安装所需的 LangChain 包,并创建一个可以使用我们在 MCP 工具箱中定义的工具的代理。
安装好包后,我们可以定义我们的代理。我们将使用 ChatVertexAI 作为模型,并使用 ToolboxClient 来加载我们的工具。来自 langchain.agents 的 create_agent 创建了一个健壮的代理,可以推理应该调用哪些工具。 注意: 在执行下面的代码之前,请确保您的 MCP 工具箱服务器正在单独的终端中运行。

运行代理

您已成功使用 MCP 工具箱将 LangChain 代理连接到本地数据库!🥳

API 参考

此集成的主要类是 ToolboxClient。 更多信息,请参阅以下资源: MCP 工具箱具有多种功能,可使数据库 Gen AI 工具的开发变得无缝:
  • 认证参数:自动将工具输入绑定到 OIDC 令牌中的值,从而轻松运行敏感查询而不会泄露数据
  • 授权调用:根据用户的 Auth 令牌限制对工具的访问
  • OpenTelemetry:通过 OpenTelemetry 从 MCP 工具箱获取指标和跟踪

社区与支持

我们鼓励您参与社区: