项目简介

PostgreSQL MCP Server是一个企业级的MCP服务器实现,专门用于连接PostgreSQL数据库,让AI助手(如Claude、Cursor等)能够通过标准化的协议与数据库进行安全交互。

主要功能

  • 194个专业工具:覆盖19个类别,包括核心CRUD、JSONB操作、全文搜索、性能分析、备份管理等
  • 21个资源:提供数据库结构、性能指标、健康状态等实时快照
  • 19个AI提示模板:为复杂数据库任务提供分步指导
  • 扩展支持:全面支持pgvector、PostGIS、pg_cron、pgcrypto等PostgreSQL扩展
  • 智能工具过滤:支持预定义包和自定义组合,适应不同IDE的工具限制
  • OAuth 2.1认证:RFC 9728/8414/7591标准合规
  • 多传输协议:支持stdio、HTTP、SSE等多种通信方式

安装步骤

  1. 克隆仓库:'git clone https://github.com/neverinfamous/postgres-mcp.git'
  2. 安装依赖:'npm install'
  3. 构建项目:'npm run build'
  4. 运行服务器:'node dist/cli.js --transport stdio --postgres postgres://user:password@localhost:5432/database'
  5. 配置MCP客户端连接服务器

服务器配置

在MCP客户端(如Cursor、Claude Desktop)的配置文件中添加:

{
  "mcpServers": {
    "postgres-mcp": {
      "command": "node",
      "args": [
        "/path/to/postgres-mcp/dist/cli.js",
        "--tool-filter", "starter",
        "--postgres", "postgres://user:password@localhost:5432/database"
    }
  }
}

配置参数说明:

  • 'command':固定为"node",表示使用Node.js运行
  • 'args':启动参数数组
    • 第一个参数:编译后的CLI文件路径
    • '--tool-filter':工具过滤配置,推荐使用"starter"包(49个核心工具)
  • '--postgres':PostgreSQL连接字符串,格式为'postgres://用户名:密码@主机:端口/数据库名'
    • '--transport':传输协议,默认为stdio
    • 环境变量方式:可通过POSTGRES_HOST、POSTGRES_PORT、POSTGRES_USER、POSTGRES_PASSWORD、POSTGRES_DATABASE'替代连接字符串

基本使用方法

  1. 连接数据库:通过连接字符串或环境变量配置数据库连接
  2. 选择工具集:根据需求使用不同的工具过滤配置:
    • 'starter':49个常用工具(推荐)
    • 'ai-vector':46个工具,专为AI/ML向量搜索设计
  3. 资源访问:通过URI访问数据库状态信息,如'postgres://schema'查看完整数据库结构
  4. AI提示模板:调用如'pg_query_builder'、'pg_performance_analysis'等模板获得智能指导
  5. 安全控制:HTTP模式下可启用OAuth 2.1认证,支持细粒度权限管理

信息

分类

数据库与文件