返回 MCP 目录
public公开dns本地运行

Postgres

PostgreSQL的MCP服务实现,提供HTTP接口进行只读查询和数据库资源浏览

article

README

🚀 Postgres MCP(研究项目)

Postgres MCP是一个为PostgreSQL数据库实现的Model Control Protocol (MCP) 服务器。它提供了简单的HTTP接口,可通过MCP与PostgreSQL数据库交互,支持执行只读查询并探索数据库资源。

🚀 快速开始

Postgres MCP是一个用于PostgreSQL数据库的MCP服务器,可通过HTTP接口与之交互。以下是使用前的准备和启动步骤。

先决条件

  • Go 1.23.6或更高版本
  • PostgreSQL数据库
  • Git

安装

git clone https://github.com/ipfans/postgres-mcp.git
cd postgres-mcp
go mod download

配置

可以通过两种方式配置数据库连接:

  1. 使用命令行标志
go run cmd/postgres-mcp/main.go -db "postgres://user:password@localhost:5432/dbname"
  1. 使用环境变量
    • 在项目根目录创建一个.env文件。
    • 添加你的数据库URL:
      DATABASE_URL=postgres://user:password@localhost:5432/dbname
      

启动服务器

go run cmd/postgres-mcp/main.go

服务器将在默认端口8080启动。

✨ 主要特性

  • 符合MCP协议的HTTP服务器,提供标准化的交互方式。
  • 支持只读SQL查询执行,保障数据安全性。
  • 可列出数据库资源,方便用户了解数据库情况。
  • 通过.env文件支持环境变量,灵活配置数据库连接。
  • 使用Go语言和Gin Web框架构建,保证高性能和开发效率。

💻 使用示例

基础用法

列出数据库资源

POST http://localhost:8080/mcp
Content-Type: application/json

{
    "type": "function",
    "name": "resources"
}

执行只读查询

POST http://localhost:8080/mcp
Content-Type: application/json

{
    "type": "function",
    "name": "query",
    "arguments": {
        "query": "SELECT * FROM your_table LIMIT 10"
    }
}

📄 许可证

该项目是开源的,采用MIT许可证。

🤝 贡献

欢迎贡献!请随意提交拉取请求。

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端