
Postgres MCP

2025.04.08
14
Rust数据库管理PostgreSQL 接口数据库
Postgres MCP 是一个为 PostgreSQL 数据库设计的 Model Context Protocol (MCP) 实现,它提供了一个标准化的接口,使 AI 代理能够通过一组定义良好的命令与 PostgreSQL 数据库进行交互。
View on GitHub
Overview
基本能力
产品定位
Postgres MCP 是一个为 PostgreSQL 数据库设计的 MCP 实现,旨在为 AI 代理提供一个标准化的接口,以便与 PostgreSQL 数据库进行交互。
核心功能
- 连接管理
- 注册和注销数据库连接
- 支持多个并发数据库连接
-
连接池管理以提高资源效率
-
数据库操作
- 执行 SELECT 查询
- 插入新记录
- 更新现有记录
- 删除记录
- 创建和删除表
- 创建和删除索引
- 描述表结构
-
列出模式中的表
-
SQL 验证
- 内置 SQL 解析器用于验证语句
- 支持 PostgreSQL 特定语法
- 安全检查以确保仅执行允许的操作
适用场景
- AI 代理与 PostgreSQL 数据库的交互
- 数据库管理和操作自动化
- 数据库连接和查询的标准化接口
工具列表
pg_mcp register
: 注册数据库连接pg_mcp unregister
: 注销连接pg_mcp query
: 执行 SELECT 查询pg_mcp insert
: 插入数据pg_mcp update
: 更新数据pg_mcp delete
: 删除数据pg_mcp create
: 创建表pg_mcp drop
: 删除表pg_mcp create_index
: 创建索引pg_mcp drop_index
: 删除索引pg_mcp describe
: 描述表结构
常见问题解答
- 如何注册数据库连接?
- 使用
pg_mcp register
命令并提供数据库 URL。 - 如何执行查询?
- 使用
pg_mcp query
命令并提供连接 ID 和 SQL 查询语句。
使用教程
使用依赖
- Rust 1.70 或更高版本
- PostgreSQL 12 或更高版本
- 必要的 Rust 包:
- anyhow: 1.0
- arc-swap: 1.7
- sqlx: 0.8 (带有 "runtime-tokio", "tls-rustls-aws-lc-rs", "postgres" 特性)
- rmcp: 0.1 (带有 "server", "transport-sse-server", "transport-io" 特性)
- schemars: 0.8
- sqlparser: 0.55
- tokio: 1.44
安装教程
cargo install postgres-mcp
调试方式
- 启动
postgres-mcp
服务器:
postgres-mcp sse
- 检查 MCP 配置状态是否为绿色。
- 使用
pg_mcp
命令进行交互。