关于 Langgraph-MCP Client for Postgresql Example
这是一个 LangGraph 示例,演示查询 Agent 如何通过 MCP 工具访问连接 PostgreSQL 的 MCP 服务。适合研究 LangGraph 与 MCP 的基础集成流程。
主要功能
- 01LangGraph 查询 Agent 示例
- 02加载 MCP 工具
- 03连接 PostgreSQL MCP 服务
- 04以流形式输出到文件
适用场景
- 01构建基于数据库的自然语言查询
- 02了解 LangGraph 如何调用 MCP 工具
MCP 相关
示例通过 `load_mcp_tools` 加载 PostgreSQL MCP 服务的工具,并供 LangGraph Agent 使用。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Langgraph-MCP 的 Postgresql 客户端示例
本仓库演示了一个非常底层的示例,展示如何将 MCP 服务作为 Docker 镜像运行,并连接到 PostgreSQL 数据库,供 LangGraph Agent 使用。
MCP 是一种开放协议,用于标准化应用程序向大模型提供上下文的方式。可以把 MCP 看作 AI 应用的 USB-C 接口。正如 USB-C 提供了一种标准化方式,让你将设备连接到各种外围设备和配件,MCP 也提供了一种标准化方式,让 AI 模型连接到不同的数据源和工具。
先决条件
开始之前,请确保系统已安装以下内容:
- Docker
- PostgreSQL 数据库 - 正在运行且已填充数据
- MCP 服务
流程和工具
- 我们使用一个 PostgreSQL 数据库,Postgresl MCP 服务通过配置可以访问该数据库
from langchain_mcp_adapters.tools import load_mcp_tools会创建 MCP 工具create_react_agent是一个快速的 Agent 模板工具- 我们将流式输出写入文件
项目设置说明
1. 克隆仓库
将此仓库克隆到本地计算机:
git clone https://github.com/your-repo/Langchain-MCP.git
cd Langgraph-mcp-client directory
2. 创建 .env 文件
在仓库根目录中创建一个 .env 文件,并添加以下变量:
DB_HOST=<your-database-host>
DB_PORT=<your-database-port>
DB_USER=<your-database-username>
DB_PASSWORD=<your-database-password>
DB_NAME=<your-database-name>
将占位符替换为实际的数据库和 MCP 服务连接详情。
3. 安装 UV 包
如果尚未全局安装 UV 包,请进行安装:
MCP 服务设置
- 将 MCP Servers 仓库克隆到单独的目录
- 运行 -
docker build -t mcp/postgres -f src/postgres/Dockerfile .来构建并标记镜像
使用说明
1. 同步 UV 包
运行以下命令以同步 UV 包:
uv sync
此命令可确保 UV 包正确安装该包。
2. 运行查询 Agent
使用以下命令启动查询 Agent:
uv run queryagent
系统会提示输入用户查询
另一种方式 - 带查询内容(银行数据库)
uv run queryagent "Who holds the most funds in thier account?"
待办事项:
- 输出格式
- 多 Agent
故障排除
- 数据库连接:确认
.env文件包含正确的数据库凭据。 - UV 包错误:确保 UV CLI 已全局安装,并且
uv sync命令已成功完成。
贡献
欢迎提交问题或拉取请求,以改进此仓库。
许可证
本项目采用 MIT 许可证。详情请参阅 LICENSE 文件。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。