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

my pg MCP

MCP Server

PostgreSQL MCP 服务器为大型语言模型(LLMs)提供安全、只读的 PostgreSQL 数据库访问,支持查询限制和资源发现。

工具数

1

提示词数

0

GitHub Stars

0

资源数

0
数据分析安全控制PostgreSQLClaudeClaude DesktopClaude

安装说明

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

作者 / 组织

Antonhansel

提供方

Antonhansel

最后核验

2026/5/17 20:22

快速接入

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

详细介绍

PostgreSQL MCP服务器

一种模型上下文协议(MCP)服务器,为大型语言模型(LLM)提供对PostgreSQL数据库的安全、只读访问。此服务器使LLM能够查询PostgreSQL数据库,同时保持严格的安全控制,以防止数据修改或资源耗尽。

🚀 特性

  • 安全数据库访问:具有自动安全控制的只读查询
  • 查询限制:自动行限制和查询超时
  • 资源发现:浏览数据库表和架构
  • 安全第一:阻止危险的SQL模式并强制执行事务安全
  • 易于集成:适用于Claude Desktop和其他MCP兼容客户端

Example Usage *PostgreSQL MCP服务器与Claude Desktop配合使用的示例*

Query Example *查询数据库表和查看结果的示例*

📋 先决条件

  • Node.js(v16或更高版本)
  • PostgreSQL数据库
  • npm或yarn包管理器

🛠️ 安装

  1. 克隆或下载此存储库
   git clone 
   cd my_pg_mcp
  1. 安装依赖项
   npm install
  1. 构建项目
   npm run build

⚙️ 配置

数据库设置

确保你的PostgreSQL数据库正在运行并且可以访问。您需要:

  • 数据库主机和端口
  • 数据库名称
  • 具有读取权限的用户名和密码

Claude桌面配置

根据您的Node.js设置选择以下配置方法之一:

选项1:使用NVM(建议NVM用户使用)

如果您使用的是NVM(节点版本管理器),请使用直接节点路径来确保正确的Node.js版本:

{
  "mcpServers": {
    "my-pg-mcp": {
      "command": "/path/to/your/node",
      "args": [
          "/path/to/your/project/node_modules/ts-node/dist/bin.js",
          "/path/to/your/project/src/server/index.ts"
      ],
      "cwd": "/path/to/your/project",
      "env": {
          "DB_USER": "your_db_user",
          "DB_PASSWORD": "your_db_password",
          "DB_HOST": "127.0.0.1",
          "DB_PORT": "5432",
          "DB_NAME": "your_db_name"
      }
    }
  }
}

要使用NVM查找节点路径:

which node
# Example output: /Users/username/.nvm/versions/node/v18.16.1/bin/node

选项2:使用npm(标准Node.js安装)

如果你全局安装了Node.js(不是通过NVM),你可以直接使用npm:

{
  "mcpServers": {
    "my-pg-mcp": {
      "command": "npm",
      "args": [
          "start"
      ],
      "cwd": "/path/to/your/project",
      "env": {
          "DB_USER": "your_db_user",
          "DB_PASSWORD": "your_db_password",
          "DB_HOST": "127.0.0.1",
          "DB_PORT": "5432",
          "DB_NAME": "your_db_name"
      }
    }
  }
}

配置文件位置

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • 视窗: %APPDATA%/Claude/claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

环境变量

您还可以将数据库凭据设置为环境变量,而不是在配置文件中:

export DB_USER="your_db_user"
export DB_PASSWORD="your_db_password"
export DB_HOST="127.0.0.1"
export DB_PORT="5432"
export DB_NAME="your_db_name"

🔧 用法

可用工具

MCP服务器提供了一个主要工具:

  • query-database:对PostgreSQL数据库执行只读SQL查询

可用资源

  • 数据库表:浏览数据库中的可用表
  • 持微软签名的表模式:查看每个表的列信息和数据类型

查询示例

-- Get user information
SELECT id, name, email FROM users WHERE active = true LIMIT 10;

-- Count records
SELECT COUNT(*) FROM orders WHERE created_at > '2024-01-01';

-- Join tables
SELECT u.name, COUNT(o.id) as order_count 
FROM users u 
LEFT JOIN orders o ON u.id = o.user_id 
GROUP BY u.id, u.name 
LIMIT 20;

🛡️ 安全功能

此MCP服务器包括全面的安全机制:

自动查询限制

  • 行限制:查询自动限制为1000行
  • 超时:30秒查询超时可防止长时间运行的查询
  • 长度限制:最大查询长度为10000个字符

受阻操作

以下操作将被自动阻止:

  • DELETE 声明
  • INSERT 声明
  • UPDATE 声明
  • DROP 声明
  • CREATE 声明
  • ALTER 声明
  • TRUNCATE 声明

只读执行

  • 所有查询都在只读事务中运行
  • 每次查询后自动回滚
  • 无法修改数据

有关详细的安全信息,请参阅 查询_SAFETY.md.

🚀 发展

以开发模式运行

npm run dev

建设项目

npm run build

测试服务器

npm start

🔍 故障排除

常见问题

  1. “找不到模块”错误

- 确保你已经跑过了 npm install - 检查你的Node.js版本是否兼容(v16+)

  1. 数据库连接错误

- 验证您的数据库凭据 - 确保PostgreSQL正在运行 - 检查数据库的网络连接

  1. NVM路径问题

- 使用 which node 找到正确的路径 - 确保配置中的路径与活动NVM版本匹配

  1. 权限错误

- 确保数据库用户具有读取权限 - 检查用户是否可以从您的主机连接

调试

通过设置环境变量启用调试日志记录:

export DEBUG=1

📝 配置选项

查询限制(环境变量)

export MCP_MAX_ROWS=500           # Maximum rows to return (default: 1000)
export MCP_TIMEOUT_MS=15000       # Query timeout in milliseconds (default: 30000)
export MCP_MAX_QUERY_LENGTH=5000  # Maximum query length (default: 10000)

🤝 贡献

  1. 分叉存储库
  2. 创建要素分支
  3. 进行更改
  4. 彻底测试
  5. 提交拉取请求

📄 许可证

该项目根据ISC许可证获得许可。

🔗 相关文件

目录标签

目录标签

数据分析安全控制PostgreSQLClaude数据库访问TypeScript本地部署只读查询LLM集成

支持客户端

Claude DesktopClaude

接入字段

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

未说明

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

none

工具数量(toolCount,工具数)

1

资源数量(resourceCount,资源数)

0

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

0

权限和风险

未说明none部署方式未说明

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP