RathodDarshil_mcp Postgres Query Server

RathodDarshil_mcp Postgres Query Server

🚀 MCP PostgreSQL 查询服务器

这是一个专为Claude Desktop和其他MCP客户端打造的MCP协议(Model Context Protocol)服务器实现,可在只读模式下对PostgreSQL数据库进行查询,为数据查询提供安全可靠的解决方案。

🚀 快速开始

本项目实现了以下功能:

  • 提供对PostgreSQL数据库的安全、只读访问。
  • 借助MCP协议与Claude Desktop实现集成。
  • 进行SQL查询验证,确保仅执行SELECT查询。
  • 具备查询超时保护机制(10秒)。

✨ 主要特性

  • 只读访问:服务器仅允许执行SELECT查询,有效防止对数据库的写操作。
  • 超时保护:所有查询若在10秒内未完成将被终止,避免长时间阻塞。
  • 安全连接:通过SSL加密通信,且默认启用,保障数据传输安全。

📦 安装指南

先决条件

  • Node.js (v14或更高版本)
  • npm(随Node.js提供)
  • PostgreSQL数据库(通过命令行提供的连接细节)

安装步骤

# 克隆仓库
git clone https://github.com/RathodDarshil/mcp-postgres-query-server.git
cd mcp-postgres-query-server

# 安装依赖项
npm install

# 构建项目
npm run build

💻 使用示例

与Claude Desktop连接

您可以按以下步骤配置Claude Desktop,使其自动启动并连接到MCP服务器:

  1. 访问Claude Desktop的配置文件:
    • 打开Claude Desktop。
    • 转到设置 > 开发者 > 编辑配置,这将在默认文本编辑器中打开配置文件。
  2. claude_desktop_config.jsonmcpServers部分添加postgres-query-server:
{
"mcpServers": {
"postgres-query": {
"command": "node",
"args": [
"/path/to/your/mcp-postgres-query-server/dist/index.js",
"postgresql://username:password@hostname:port/database"
]
}
}
}
  1. 用实际项目目录路径替换/path/to/your/
  2. 替换PostgreSQL连接字符串的实际数据库凭证。
  3. 保存文件并重新启动Claude Desktop。此时,MCP服务器应会出现在设置中的MCP服务器选择下拉菜单中。

配置示例

以下是一个包含postgres-query的完整配置文件示例:

{
"mcpServers": {
"postgres-query": {
"command": "node",
"args": [
"/path/to/mcp-postgres-query-server/dist/index.js",
"postgresql://user:password@localhost:5432/mydatabase"
]
}
}
}

使用方法

  1. 构建服务器:安装依赖并运行npm run build
  2. 配置PostgreSQL连接:修改dist/index.js中的数据库连接字符串,使其与您的环境匹配。
  3. 启动服务器:在终端中运行node dist/index.js
  4. 在Claude Desktop中使用:重启Claude Desktop后,选择新添加的MCP服务器进行查询。

🔧 技术细节

扩展

  • 日志记录:添加日志以跟踪请求和响应。
  • 错误处理:增强错误处理逻辑,提供更详细的错误信息。
  • 连接池优化:调整PostgreSQL连接池参数以提高性能。

安全注意事项

  • 避免在代码中硬编码凭据,建议使用环境变量或安全的秘密管理工具。
  • 确保服务器运行在受信任的网络环境中,防止未授权访问。
  • 定期更新依赖以防范已知的安全漏洞。

通过以上步骤,您可以轻松设置一个安全、高效的PostgreSQL查询服务器,实现与Claude Desktop或其他MCP客户端的无缝集成。

  • 0 关注
  • 0 收藏,11 浏览
  • system 提出于 2025-09-24 22:27

相似服务问题