P

PostgreSQL管理优化器

@nahmanmate/postgresql-mcp-server
0 Stars 468 次浏览 nahmanmate 更新于 2026-08-23

有助于管理和优化PostgreSQL数据库,提供分析、设置指导和调试功能,同时确保数据库操作的安全性和高效性。

该服务暂未提供标准配置,请参考 README 手动接入

可用工具 (3 个)

该服务在 MCP 协议中暴露的工具,AI 可按需调用

analyze_database 2 个参数 需填 1 项

Analyze PostgreSQL database configuration and performance

必填参数:connectionString

get_setup_instructions 3 个参数 需填 1 项

Get step-by-step PostgreSQL setup instructions

必填参数:platform

debug_database 3 个参数 需填 2 项

Debug common PostgreSQL issues

必填参数:connectionString、issue

服务介绍

PostgreSQL MCP 服务器

一个提供 PostgreSQL 数据库管理功能的模型上下文协议(MCP)服务器。此服务器有助于分析现有的 PostgreSQL 设置,提供实施指导,并调试数据库问题。

功能

1. 数据库分析 (analyze_database)

分析 PostgreSQL 数据库配置和性能指标:

  • 配置分析
  • 性能指标
  • 安全评估
  • 优化建议
// Example usage
{
  "connectionString": "postgresql://user:password@localhost:5432/dbname",
  "analysisType": "performance" // Optional: "configuration" | "performance" | "security"
}

2. 设置说明 (get_setup_instructions)

提供逐步的 PostgreSQL 安装和配置指南:

  • 特定平台的安装步骤
  • 配置建议
  • 安全最佳实践
  • 安装后任务
// Example usage
{
  "platform": "linux", // Required: "linux" | "macos" | "windows"
  "version": "15", // Optional: PostgreSQL version
  "useCase": "production" // Optional: "development" | "production"
}

3. 数据库调试 (debug_database)

调试常见的 PostgreSQL 问题:

  • 连接问题
  • 性能瓶颈
  • 锁冲突
  • 复制状态
// Example usage
{
  "connectionString": "postgresql://user:password@localhost:5432/dbname",
  "issue": "performance", // Required: "connection" | "performance" | "locks" | "replication"
  "logLevel": "debug" // Optional: "info" | "debug" | "trace"
}

前提条件

  • Node.js >= 18.0.0
  • PostgreSQL 服务器(用于目标数据库操作)
  • 到目标 PostgreSQL 实例的网络访问权限

安装

  1. 克隆仓库
  2. 安装依赖项:
    npm install
    
  3. 构建服务器:
    npm run build
    
  4. 添加到 MCP 设置文件中:
    {
      "mcpServers": {
        "postgresql-mcp": {
          "command": "node",
          "args": ["/path/to/postgresql-mcp-server/build/index.js"],
          "disabled": false,
          "alwaysAllow": []
        }
      }
    }
    

开发

  • npm run dev - 启动带有热重载的开发服务器
  • npm run lint - 运行 ESLint
  • npm test - 运行测试

安全注意事项

  1. 连接安全

    • 使用连接池
    • 实现连接超时
    • 验证连接字符串
    • 支持 SSL/TLS 连接
  2. 查询安全

    • 验证 SQL 查询
    • 防止危险操作
    • 实现查询超时
    • 记录所有操作
  3. 身份验证

    • 支持多种身份验证方法
    • 实现基于角色的访问控制
    • 强制执行密码策略
    • 安全地管理连接凭据

最佳实践

  1. 始终使用具有适当凭据的安全连接字符串
  2. 对敏感环境遵循生产安全建议
  3. 定期监控和分析数据库性能
  4. 保持 PostgreSQL 版本最新
  5. 实施适当的备份策略
  6. 使用连接池以更好地管理资源
  7. 实现适当的错误处理和日志记录
  8. 定期进行安全审计和更新

错误处理

服务器实现了全面的错误处理:

  • 连接失败
  • 查询超时
  • 身份验证错误
  • 权限问题
  • 资源限制

贡献

  1. 分叉仓库
  2. 创建功能分支
  3. 提交更改
  4. 推送到分支
  5. 创建拉取请求

许可证

该项目根据 AGPLv3 许可证许可 - 详情请参阅 LICENSE 文件。

相关 MCP 服务