Token导航 LogoToken导航TokenDH.com
Another Pg MCP logo
数据服务stdio官方级别未说明来源级核验

Another Pg MCP

MCP Server

PostgreSQL MCP服务器是一个通过stdio或Streamable HTTP查询PostgreSQL数据库的模型上下文协议服务器。

工具数

3

提示词数

0

GitHub Stars

1

资源数

0
数据分析JavaScriptClaudeClaude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

p-c-mo

提供方

p-c-mo

最后核验

2026/5/17 20:22

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npx --yes --package=github:OWNER/postgres-mcp postgres-mcp

详细介绍

PostgreSQL MCP服务器

一种模型上下文协议(MCP)服务器,用于通过stdio或Streamable HTTP查询PostgreSQL数据库。

我构建这个是因为当有多个数据库时,客户端在参考Postgres MCP服务器时遇到了问题。此版本传递用户指定的服务器名称,以便联邦客户端可以清晰地区分工具名称空间。

安装

npm install
npm run build

运行通过 npx 从Git仓库

一旦仓库在GitHub上可访问, npx 可以直接从Git URL安装它并运行 postgres-mcp 箱子:

npx --yes --package=github:OWNER/postgres-mcp postgres-mcp

等效形式也适用:

npx --yes --package=git+https://github.com/OWNER/postgres-mcp.git postgres-mcp

因为此包构建为 dist/,回购包括 prepare 脚本,以便npm在基于Git的安装过程中自动编译它。

配置

服务器使用通过提供的PostgreSQL连接字符串 DATABASE_URL.

连接字符串格式: postgresql://user:password@host:port/database

环境变量

DATABASE_URL

用于所有查询的必需PostgreSQL连接字符串。

MCP_SERVER_NAME

自定义MCP服务器名称。当并行运行多个PostgreSQL MCP实例时,这很有用。

例子:

MCP_SERVER_NAME="postgres-production" npm start

READ_ONLY_MODE

控制服务器是否强制只读模式。默认为 true 为了安全。

  • READ_ONLY_MODE=true (默认):阻止INSERT、UPDATE、DELETE、CREATE、ALTER、DROP操作
  • READ_ONLY_MODE=false:允许数据库用户允许的所有操作

MCP_TRANSPORT

选择服务器的公开方式。

  • stdio (默认):作为本地MCP子流程启动
  • http:暴露可流式传输的HTTP端点

HTTP传输设置

仅在以下情况下使用 MCP_TRANSPORT=http.

  • MCP_HTTP_HOST:绑定地址。默认为 127.0.0.1
  • MCP_HTTP_PORT:绑定端口。默认为 3000
  • MCP_HTTP_PATH:MCP端点路径。默认为 /mcp
  • MCP_HTTP_ALLOWED_HOSTS:非环回部署的可选逗号分隔主机头列表
  • MCP_HTTP_ENABLE_DNS_REBINDING_PROTECTION:DNS重新绑定保护的可选覆盖(truefalse)

用法

码头工人

塑造形象:

docker build -t postgres-mcp .

运行HTTP MCP终结点:

docker run --rm \
  -e DATABASE_URL="postgresql://myuser:mypassword@host.docker.internal:5432/mydb" \
  -e MCP_SERVER_NAME="postgres-production" \
  -e MCP_TRANSPORT=http \
  -e MCP_HTTP_HOST=0.0.0.0 \
  -e MCP_HTTP_PORT=8811 \
  -p 8811:8811 \
  postgres-mcp

用法

标准运输

将服务器作为本地MCP子进程运行:

DATABASE_URL="postgresql://myuser:mypassword@localhost:5432/mydb" \
MCP_SERVER_NAME="postgres-production" \
npm start

可流式HTTP传输

将服务器作为HTTP MCP终结点运行:

DATABASE_URL="postgresql://myuser:mypassword@localhost:5432/mydb" \
MCP_SERVER_NAME="postgres-production" \
MCP_TRANSPORT=http \
MCP_HTTP_HOST=127.0.0.1 \
MCP_HTTP_PORT=8811 \
npm run start:http

MCP端点将在 http://127.0.0.1:8811/mcp.

与Claude Desktop一起使用

将此添加到您的Claude Desktop配置中:

{
  "mcpServers": {
    "postgres": {
      "command": "node",
      "args": ["/path/to/postgres-mcp/dist/index.js"],
      "env": {
        "DATABASE_URL": "postgresql://myuser:mypassword@localhost:5432/mydb",
        "MCP_SERVER_NAME": "postgres-production"
      }
    }
  }
}

可用工具

query

执行PostgreSQL查询。

参数:

  • query (必填):要执行的SQL查询
  • maxRows (可选):服务器端的行上限应用于顶层 SELECT 查询。默认为 10

例子:

{
  "query": "SELECT * FROM users",
  "maxRows": 25
}

view_schemas

列出非系统PostgreSQL视图定义。

参数:

  • schema (可选):将结果限制到特定模式
  • view (可选):将结果限制为特定的视图名称
  • maxRows (可选):结果集的行上限

table_schemas

生成 CREATE TABLE 语句,包括表和列注释。

参数:

  • schema (可选):将结果限制到特定模式
  • table (可选):将结果限制为特定的表名
  • maxRows (可选):结果集的行上限

目录标签

目录标签

数据分析JavaScriptClaudePostgreSQL本地部署数据库查询模型上下文协议HTTP接口stdio接口

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Node.js

工具数量(toolCount,工具数)

3

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP