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

Unrestricted Postgres MCP

MCP Server

unrestricted-postgres-mcp

一个提供PostgreSQL数据库完整读写访问权限的Model Context Protocol服务器,支持高级事务管理和恢复功能。

工具数

0

提示词数

0

GitHub Stars

1

资源数

0
数据分析开发工具PostgreSQLClaudeClaude

安装说明

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

作者 / 组织

startino

提供方

startino

最后核验

2026/5/17 20:23

运行时

Node.js

快速接入

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

命令预览

npx unrestricted-postgres-mcp postgresql://user:password@localhost:5432/database

详细介绍

无限制PostgreSQL MCP服务器

![Model Context Protocol](https://modelcontextprotocol.io) ](LICENSE) ](https://nodejs.org/) ![TypeScript](https://www.typescriptlang.org/) ![Vite](https://vitejs.dev/)

叉子 Syahiid Nur Kamil完全访问mcp postgres -通过现代工具、事务恢复工具和改进的开发人员体验进行了增强。

一个强大的 模型上下文协议(MCP)服务器 这提供了 完全读写访问 PostgreSQL数据库。与只读MCP服务器不同,此实现使大型语言模型能够通过全面的事务管理和恢复功能安全地查询、修改和管理数据库内容。

✨ 主要特点

🔐 安全完整数据库访问

  • 读取操作:使用自动只读事务保护执行SELECT查询
  • 写入操作:通过显式事务管理安全执行INSERT、UPDATE、DELETE
  • 模式管理:使用DDL操作创建、更改和删除数据库对象
  • 维护命令:执行VACUUM、ANALYZE和CREATE DATABASE操作

🛡️ 高级交易管理

  • 显式提交/回滚:两步流程要求用户确认所有更改
  • 事务恢复:从中止的事务状态恢复的工具
  • 超时保护:自动回滚已放弃的交易
  • 会话重置:为卡住的连接提供完整的会话重置功能
  • 连接状态:实时监控数据库连接状态

📊 丰富的架构信息

  • 综合元数据:详细的列信息、数据类型、约束
  • 关系映射:主键、外键和索引信息
  • 性能洞察:行数估计和表统计
  • 文档支持:表和列说明(如有)

🔧 开发者体验

  • 现代建筑系统:由Vite提供技术支持,实现快速发展和建设
  • TypeScript支持:完全类型安全和IntelliSense支持
  • 热重载:即时开发服务器 vite-node
  • 综合工具:10多种数据库操作专用工具

🚀 快速开始

先决条件

  • Node.js 18.0.0或更高
  • PostgreSQL 12.0或更高
  • Claude桌面版 (用于MCP集成)

安装

# Install globally
npm install -g unrestricted-postgres-mcp

# Or use with npx (recommended)
npx unrestricted-postgres-mcp postgresql://user:password@localhost:5432/database

Claude桌面配置

添加到您的 claude_desktop_config.json:

{
  "mcpServers": {
    "postgres-unrestricted": {
      "command": "npx",
      "args": [
        "-y",
        "unrestricted-postgres-mcp",
        "postgresql://username:password@localhost:5432/database"
      ],
      "env": {
        "TRANSACTION_TIMEOUT_MS": "60000",
        "MAX_CONCURRENT_TRANSACTIONS": "5",
        "PG_STATEMENT_TIMEOUT_MS": "30000"
      }
    }
  }
}

🛠️ 可用工具

查询和分析工具

工具用途参数
execute_query执行只读SELECT查询sql (字符串)
get_database_schema获取全面的数据库架构概述
search_text使用全文搜索跨表搜索文本search_term (字符串), tables (数组,可选), columns (数组,可选), limit (数字,可选)
list_tables列出架构中的所有表schema_name (字符串,可选)
describe_table获取详细的表架构信息table_name (字符串), schema_name (字符串,可选)

数据修改工具

工具用途参数
execute_dml_ddl_dcl_tcl执行数据修改操作(自动提交)sql (字符串)
execute_maintenance运行维护命令(VACUUM、ANALYZE)sql (字符串)
execute_rollback回滚待处理的交易transaction_id (字符串)

交易管理和恢复

工具用途参数
list_transactions列出所有活动交易
force_rollback强制回滚中止的事务
reset_session完全重置数据库会话

🔄 工作流示例

典型使用模式

  1. 查询数据以了解当前状态
  2. 执行修改(自动提交)
  3. 再次查询以验证更改

从卡住的交易中恢复

  1. 诊断:使用 list_transactions 检查状态
  2. 列表:使用 list_transactions 查看活动交易
  3. 恢复:使用 force_rollback 清除中止状态
  4. 重置:如果需要,使用 reset_session 用于完全重置

模式探索

  1. 发现:使用 list_tables 查看可用表格
  2. 检查:使用 describe_table 有关详细的模式信息
  3. 查询:使用 execute_query 探索数据模式

⚙️ 配置

环境变量

变量默认值描述
TRANSACTION_TIMEOUT_MS15000事务超时(毫秒)
MAX_CONCURRENT_TRANSACTIONS10最大并发事务数
PG_STATEMENT_TIMEOUT_MS30000SQL语句执行超时
PG_MAX_CONNECTIONS20PostgreSQL最大连接数
ENABLE_TRANSACTION_MONITORtrue启用交易监控
MONITOR_INTERVAL_MS5000事务监视器检查间隔

安全最佳实践

  1. 创建专用数据库用户:
   CREATE USER mcp_user WITH PASSWORD 'secure_password';
   GRANT SELECT, INSERT, UPDATE, DELETE ON specific_tables TO mcp_user;
  1. 对所有操作使用“允许一次”:

- 切勿选择“始终允许”进行数据库修改 - 在批准之前检查所有SQL操作

  1. 使用非生产数据进行测试:

- 使用开发数据库进行初始测试 - 在广泛使用之前实施定期备份

🏗️ 发展

先决条件

  • Node.js 18+
  • pnpm(推荐)或npm
  • PostgreSQL数据库

设置

# Clone the repository
git clone https://github.com/your-username/unrestricted-postgres-mcp.git
cd unrestricted-postgres-mcp

# Install dependencies
pnpm install

# Create environment file
cp .env.example .env
# Edit .env with your database connection details

# Start development server
pnpm run dev

# Build for production
pnpm run build

可用脚本

脚本目的
pnpm run dev使用热重新加载启动开发服务器
pnpm run build为生产而建
pnpm run start运行生产构建
pnpm run type-check运行TypeScript类型检查

项目结构

src/
├── index.ts                 # Main server entry point
├── lib/
│   ├── config.ts           # Configuration management
│   ├── tool-handlers.ts    # Tool implementation functions
│   ├── transaction-manager.ts # Transaction lifecycle management
│   ├── types.ts            # TypeScript type definitions
│   └── utils.ts            # Utility functions
└── types.ts                # Additional type definitions

🔍 故障排除

常见问题

“当前事务已中止”错误:

  1. 使用 list_transactions 诊断
  2. 使用 force_rollback 清除中止状态
  3. 如果仍然卡住,请使用 reset_session

连接超时:

  1. 检查 PG_STATEMENT_TIMEOUT_MS 设置
  2. 增加 TRANSACTION_TIMEOUT_MS 如有需要
  3. 验证数据库连接限制

权限错误:

  1. 验证数据库用户权限
  2. 检查表特定的访问权限
  3. 确保用户具有必要的架构访问权限

📊 与官方MCP服务器的比较

功能此服务器PostgreSQL官方MCP
读取权限✅ 增强✅ 基础
写入权限✅ 全力支持❌ 不可用
交易管理✅ 高级❌ 不可用
架构详细信息✅ 综合✅ 基础
恢复工具✅ 多种选择❌ 不可用
类型安全✅ 完整TypeScript❌ 不可用
现代工具✅ Vite+热重载❌ 不可用

🤝 贡献

我们欢迎捐款!请查看我们的 贡献指南 了解详情。

快速贡献指南

  1. 分叉存储库
  2. 创建要素分支: git checkout -b feature/amazing-feature
  3. 进行更改
  4. 运行测试: pnpm run type-check && pnpm run build
  5. 提交更改: git commit -m 'Add amazing feature'
  6. 推送到分支: git push origin feature/amazing-feature
  7. 打开拉取请求

📄 许可证

该项目根据 Apache许可证版本2.0 -看看 许可证 文件以获取详细信息。

👥 鸣谢

🙏 致谢

______________________________________________________________________

⚠️ 重要:此服务器提供完整的数据库访问权限。在提交更改之前,请务必检查操作,并使用适当的数据库用户权限以确保安全。

目录标签

目录标签

数据分析开发工具PostgreSQLClaude数据库管理TypeScript本地部署事务管理MCP协议

支持客户端

Claude

接入字段

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

stdio

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

none

运行时(runtime,运行环境)

Node.js

来源包(packageName,安装包名)

unrestricted-postgres-mcp

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdionone部署方式未说明

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

安装前确认

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

来源信息

继续浏览同类 MCP