
PostgreSQL

2025.03.09
0
JavaScript数据库访问PostgreSQL数据库
mcp_server_template 是一个基于 Model Context Protocol (MCP) 的服务,提供对 PostgreSQL 数据库的只读访问能力。该服务允许 LLMs(大型语言模型)检查数据库模式并执行只读查询。
View on GitHub
Overview
基本能力
产品定位
mcp_server_template 是一个数据库访问服务,专门为 PostgreSQL 数据库提供只读访问功能。
核心功能
- 只读查询:
- 提供
query
工具,可以执行只读 SQL 查询。 -
所有查询都在只读事务中执行,确保数据安全。
-
模式信息:
- 提供数据库中每个表的 JSON 模式信息。
- 包括列名和数据类型,自动从数据库元数据中获取。
适用场景
- 数据库模式检查:允许 LLMs 检查数据库的结构和模式。
- 只读数据分析:执行只读查询以获取数据,适用于数据分析场景。
- 开发与测试:在开发和测试环境中提供安全的只读数据库访问。
工具列表
- query:
- 能力:执行只读 SQL 查询。
- 输入:
sql
(字符串):要执行的 SQL 查询。
常见问题解答
- 如何在 macOS 上使用 Docker 运行服务?
-
使用
host.docker.internal
作为主机名,如果服务运行在主机网络上(例如 localhost)。 -
如何添加用户名和密码到 PostgreSQL URL?
- 使用格式
postgresql://user:password@host:port/db-name
。
使用教程
使用依赖
- Docker:确保已安装 Docker。
- Node.js:如果使用 NPX 方式,确保已安装 Node.js。
安装教程
Docker 方式
docker build -t mcp/postgres -f src/postgres/Dockerfile .
NPX 方式
npx -y @modelcontextprotocol/server-postgres postgresql://localhost/mydb
调试方式
- Docker 调试:
-
运行以下命令并检查输出:
sh docker run -i --rm mcp/postgres postgresql://host.docker.internal:5432/mydb
-
NPX 调试:
- 运行以下命令并检查输出:
sh npx -y @modelcontextprotocol/server-postgres postgresql://localhost/mydb