PostgreSQL查询服务

一个用于通过SQL查询PostgreSQL数据库中产品信息的MCP服务器,适用于AI助手等客户端进行数据查询。

  • by michael7736
  • JavaScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 michael7736/postgres-mcp-server

使用说明

PostgreSQL产品MCP服务器

这是一个模型上下文协议(MCP)服务器,旨在与包含产品信息的PostgreSQL数据库进行交互。它允许客户端(如AI助手)使用SQL查询数据库。

先决条件

  • Node.js(建议使用v18或更高版本)
  • npm或纱线
  • 使用产品模式访问PostgreSQL数据库。

安装

  1. 克隆此存储库(或下载源代码):
    git clone https://github.com/michael7736/postgres-mcp-server.git
    cd postgres-mcp-server
    
  2. 安装依赖项:
    npm install
    # or
    yarn install
    

建筑

将TypeScript代码编译为JavaScript:

npm run build
# or
yarn build

这将在中创建可执行文件 build/ 目录(build/index.js).

配置

当此服务器在MCP客户端设置中配置时,它需要通过环境变量提供PostgreSQL连接详细信息(例如。, cline_mcp_settings.json 或 claude_desktop_config.json).

所需的环境变量包括:

  • PGHOST:PostgreSQL服务器的主机名。
  • PGPORT:PostgreSQL服务器的端口号(默认值:5432)。
  • PGUSER:数据库连接的用户名。
  • PGPASSWORD:数据库连接的密码。
  • PGDATABASE:要连接的数据库的名称。

MCP设置配置示例:

{
  "mcpServers": {
    "postgres-products": {
      "command": "node",
      "args": ["/path/to/your/postgres-mcp-server/build/index.js"],
      "env": {
        "PGHOST": "your_db_host",
        "PGPORT": "5432",
        "PGUSER": "your_db_user",
        "PGPASSWORD": "your_db_password",
        "PGDATABASE": "your_db_name"
      },
      "disabled": false, // Ensure it's enabled
      "autoApprove": [] // Configure auto-approval if needed
    }
    // ... other servers
  }
}

替换 /path/to/your/postgres-mcp-server/build/index.js 使用系统上构建的服务器文件的实际路径,并在 env 部分。

用法

通过MCP客户端配置和运行后,此服务器提供以下工具:

run_sql_query

对配置的产品数据库执行只读SQL查询(仅限SELECT语句)。

输入架构:

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "The SQL SELECT query to execute."
    }
  },
  "required": ["query"]
}

工具调用示例:

<use_mcp_tool>
  <server_name>postgres-products</server_name>
  <tool_name>run_sql_query</tool_name>
  <arguments>
  {
    "query": "SELECT product_name, stock_quantity FROM products WHERE category = 'Electronics';"
  }
  </arguments>
</use_mcp_tool>