PostgreSQL Alchemy 使用说明

项目简介

PostgreSQL Alchemy 项目提供了一个 MCP (Model Context Protocol) 服务器,它使得 Claude Desktop 等 MCP 客户端能够连接并操作 SQL 数据库,目前支持 PostgreSQL, MySQL, MariaDB, SQLite。通过此服务器,用户可以使用自然语言在 Claude 中查询数据库、探索数据表结构并分析数据。

主要功能点

  • 连接 SQL 数据库:支持 PostgreSQL, MySQL, MariaDB, SQLite 等多种 SQL 数据库。
  • 表名检索:允许 Claude 获取数据库中的所有表名或根据关键词过滤表名。
  • 模式定义:提供工具以获取指定数据表的详细模式信息,包括列名、数据类型、主键、外键和表关系。
  • SQL 查询执行:支持执行自定义 SQL 查询,并将查询结果以易读的格式返回给 Claude。
  • 结果截断与完整结果获取:对于大型查询结果,支持截断显示,并提供链接以便 Claude 获取完整结果集用于分析。

安装步骤

  1. 环境准备

  2. 配置环境变量

    • 复制仓库中的 '.env.example' 文件并重命名为 '.env'。
  3. 启动 PostgreSQL 数据库

    • 确保 Docker Compose 运行正常,然后在仓库根目录下执行命令:
      docker-compose up -d
      这会启动一个预配置的 PostgreSQL 数据库实例,并填充示例数据。
  4. 配置 MCP 服务器

    • 打开 Claude Desktop 的 MCP 服务器配置文件(通常位于 Claude Desktop 的配置目录中)。

    • 在 'mcpServers' 字段下添加一个新的服务器配置,配置内容如下(请根据实际情况修改路径和数据库连接信息):

      {
        "mcpServers": {
          "my_database": {
            "command": "uv",
            "args": [
              "--directory",
              "/path/to/mcp-python/app/", // 将 "/path/to/mcp-python/app/" 替换为 mcp-python 仓库中 app 目录的**绝对路径**
              "run",
              "server.py"
            ],
            "env": {
              "DB_URL": "postgresql://postgres:password@localhost:5432/mydatabase" // 数据库连接 URL,请根据您的 PostgreSQL 数据库配置修改
            }
          }
        }
      }

      参数说明

      • 'command': 启动服务器的命令,这里使用 'uv' 运行 Python 脚本。如果 'uv' 不在系统 PATH 中,请使用 'uv' 的完整路径。
      • 'args': 传递给 'uv' 命令的参数列表。
        • '--directory': 指定工作目录为 'app' 目录,请务必替换为 实际的绝对路径
        • 'run server.py': 运行 'app' 目录下的 'server.py' 文件,即 MCP 服务器主程序。
      • 'env': 环境变量配置。
        • 'DB_URL': 数据库连接 URL,用于服务器连接到您的 PostgreSQL 数据库。请根据您的数据库配置(例如用户名、密码、主机、端口和数据库名)进行修改。
  5. 启动 Claude Desktop

    • 完成配置后,每次启动 Claude Desktop,MCP 服务器将自动启动。

基本使用方法

  • 打开 Claude Desktop 客户端。
  • Claude Desktop 会自动连接到您配置的 MCP 服务器。
  • 您可以开始使用自然语言与数据库进行交互。例如,您可以向 Claude 提问:
    • "数据库里有哪些表?"
    • "users 表的结构是什么样的?"
    • "查询所有用户的邮箱和姓名。"

Claude 将调用 MCP 服务器提供的工具来执行相应的数据库操作,并将结果返回给您。

信息

分类

数据库与文件