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 获取完整结果集用于分析。
安装步骤
-
环境准备:
- 确保已安装 Docker Compose。
- 下载并安装 Claude Desktop。
- 确保已安装 'uv',一个现代 Python 包管理器。如果未安装,请按照 uv 安装指南 进行安装。
-
配置环境变量:
- 复制仓库中的 '.env.example' 文件并重命名为 '.env'。
-
启动 PostgreSQL 数据库:
- 确保 Docker Compose 运行正常,然后在仓库根目录下执行命令:
这会启动一个预配置的 PostgreSQL 数据库实例,并填充示例数据。docker-compose up -d
- 确保 Docker Compose 运行正常,然后在仓库根目录下执行命令:
-
配置 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 数据库。请根据您的数据库配置(例如用户名、密码、主机、端口和数据库名)进行修改。
-
-
启动 Claude Desktop:
- 完成配置后,每次启动 Claude Desktop,MCP 服务器将自动启动。
基本使用方法
- 打开 Claude Desktop 客户端。
- Claude Desktop 会自动连接到您配置的 MCP 服务器。
- 您可以开始使用自然语言与数据库进行交互。例如,您可以向 Claude 提问:
- "数据库里有哪些表?"
- "users 表的结构是什么样的?"
- "查询所有用户的邮箱和姓名。"
Claude 将调用 MCP 服务器提供的工具来执行相应的数据库操作,并将结果返回给您。
信息
分类
数据库与文件