PostgreSQL MCP Server

PostgreSQL MCP Server

site icon
2025.05.01 0
Python数据库服务数据查询工具数据库
PostgreSQL MCP Server 是一个基于 Model Context Protocol (MCP) 的服务,专为 PostgreSQL 数据库的探索和查询设计。它通过标准化的接口提供数据发现和查询能力,使用户能够轻松探索数据库结构、查询数据并获取数据库统计信息。
View on GitHub

Overview

基本能力

产品定位

PostgreSQL MCP Server 是一个数据库连接和查询工具,旨在通过 MCP 协议提供对 PostgreSQL 数据库的便捷访问和操作。

核心功能

  • 连接到任何 PostgreSQL 数据库
  • 执行自定义 SELECT 查询并返回结构化结果
  • 列出数据库中的所有表
  • 获取任何表的详细模式信息
  • 基于简单条件过滤数据库记录
  • 获取数据库统计信息,包括大小、表数量和最大表

适用场景

  • 数据库探索和结构分析
  • 数据查询和过滤
  • 数据库统计和性能监控
  • 与 Claude Desktop 集成进行数据库交互

工具列表

  • execute_query: 执行自定义 SELECT SQL 查询并返回结果
  • list_tables: 列出当前 PostgreSQL 数据库中的所有表
  • get_table_schema: 获取指定表的模式定义
  • filter_instances: 基于指定条件过滤数据库记录
  • get_database_stats: 获取 PostgreSQL 数据库的一般统计信息和元数据

常见问题解答

  • 连接失败:验证 PostgreSQL 连接字符串是否正确
  • 服务器未找到:确保配置文件中的路径正确且为绝对路径
  • 权限问题:确保 Claude Desktop 应用有执行脚本的权限
  • 服务器崩溃:检查服务器日志中的错误并确保所有依赖项已安装

使用教程

使用依赖

  • Python 3.7+
  • 所需 Python 包(列在 requirements.txt 中):
  • mcp
  • pg8000
  • sqlalchemy

安装教程

  1. 克隆此存储库或下载源代码
  2. 创建虚拟环境(推荐)
  3. 安装所需的包:
pip install -r requirements.txt

基本使用

运行服务器并提供 PostgreSQL 连接字符串:

python server.py postgresql://username:password@hostname:port/database

与 Claude Desktop 集成

在 Claude Desktop 配置文件中添加以下配置:

{
  "mcpServers": {
    "postgres": {
      "command": "python",
      "args": [
        "/ABOSLUTE/PATH/TO/postgres-mcp-server/server.py",
        "postgresql://user:password@host:port/database"
      ]
    }
  }
}

调试方式

  • 检查服务器日志以查找错误
  • 确保所有依赖项已正确安装
  • 验证连接字符串和配置文件路径是否正确

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。