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

Postgres Poc

MCP Server

tsx

一个用于查询PostgreSQL数据库的模型上下文协议(MCP)服务器实现,为AI模型与结构化数据库内容之间提供桥梁。

工具数

3

提示词数

0

GitHub Stars

0

资源数

0
数据分析JavaScriptClaudePostgreSQLClaude DesktopClaude

安装说明

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

作者 / 组织

AMVijay

提供方

AMVijay

最后核验

2026/5/17 20:22

运行时

Node.js

快速接入

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

命令预览

npx tsx setup-weather-data.ts

详细介绍

PostgreSQL MCP服务器-概念验证

用于查询PostgreSQL数据库的模型上下文协议(MCP)服务器实现。这个概念验证演示了如何创建一个可以与PostgreSQL数据库交互的MCP服务器,在人工智能模型和结构化数据库内容之间架起一座桥梁。

概述

该项目展示了模型上下文协议与PostgreSQL数据库的集成,使AI模型能够以结构化和安全的方式查询数据库内容并与之交互。服务器提供用于执行SQL查询、列出数据库模式和管理数据库连接的工具。

特性

  • SQL查询执行:执行SELECT查询(出于安全考虑的只读操作)
  • 图式反思:列出表、列和数据库结构

快速开始

先决条件

  • Node.js 22
  • PostgreSQL数据库
  • TypeScript知识

安装

  1. 克隆存储库:
git clone 
cd mcp-server-postgres-poc
  1. 安装依赖项:
npm install
  1. 设置测试数据(用于测试目的):
# Start PostgreSQL service
./init_postgres.sh

# Set up sample weather data
cd weather-data-setup
npx tsx setup-weather-data.ts
cd ..
  1. 通过创建 .env 文件:
POSTGRES_USER=your_username
POSTGRES_HOST=localhost
POSTGRES_DATABASE=your_database
POSTGRES_PASSWORD=your_password
POSTGRES_PORT=5432
POSTGRES_MAX_CONNECTIONS=10
POSTGRES_IDLE_TIMEOUT=30000
POSTGRES_CONNECTION_TIMEOUT=10000
  1. 构建项目:
npm run build
  1. 启动MCP服务器:
npm start

可用工具

MCP服务器提供以下工具:

query

对PostgreSQL数据库执行SQL查询。

参数:

  • sql (string):要执行的SQL查询
  • params (数组,可选):参数化查询的参数

list_tables

列出数据库中的所有表。

参数:

  • schema (字符串,可选):数据库架构名称(默认值:“public”)

describe_table

获取特定表结构的详细信息。

参数:

  • schema (字符串,可选):数据库架构名称(默认值:“public”)
  • table (string):要描述的表名

样品数据

该POC包括一个天气数据设置,以展示服务器的功能:

天气数据

weather-data-setup/ 目录包含:

  • weather.csv:美国气象站的历史天气数据(16744+条记录)
  • setup-ather-data.ts:创建和填充天气数据库的脚本

测试截图

MCP服务器与天气数据一起运行的屏幕截图:

List Tables Tool

Weather Data Queries

要设置示例数据,请执行以下操作:

cd weather-data-setup
npx ts-node setup-weather-data.ts

这创建了一个 weather_data 表格中的字段包括温度、降水、风数据和气象站信息。

发展

脚本

  • npm run build -将TypeScript编译为JavaScript
  • npm run dev -使用tsx在开发模式下运行
  • npm run watch -在监视模式下运行以进行开发
  • npm run clean -清理构建工件

项目结构

src/
├── generic-postgres-mcp.ts    # Main MCP server implementation
weather-data-setup/
├── README.md                  # Weather data documentation
├── setup-weather-data.ts      # Database setup script
└── weather.csv               # Sample weather data

配置

服务器支持以下环境变量:

变量默认值描述
POSTGRES_USERpostgres数据库用户名
POSTGRES_HOSTlocalhost数据库主机
POSTGRES_DATABASEpostgres数据库名称
POSTGRES_PASSWORD(空)数据库密码
POSTGRES_PORT5432数据库端口
POSTGRES_MAX_CONNECTIONS10最大连接池大小
POSTGRES_IDLE_TIMEOUT30000空闲连接超时(毫秒)
POSTGRES_CONNECTION_TIMEOUT10000连接超时(毫秒)

安全考虑

  • 始终使用参数化查询来防止SQL注入
  • 将数据库用户权限限制为仅限于必要的操作
  • 使用连接池高效管理数据库资源
  • 验证并清理所有输入参数
  • 考虑为长时间运行的操作实现查询超时

与MCP客户端集成

该服务器可以与任何兼容MCP的客户端集成,例如Claude Desktop或支持模型上下文协议的其他AI应用程序。

MCP客户端配置示例:

{
  "mcpServers": {
    "postgres-server": {
      "command": "node",
      "args": ["/path/to/dist/generic-postgres-mcp.js"],
      "env": {
        "POSTGRES_USER": "your_username",
        "POSTGRES_HOST": "localhost",
        "POSTGRES_DATABASE": "your_database",
        "POSTGRES_PASSWORD": "your_password"
      }
    }
  }
}

贡献

这是一个概念验证项目。欢迎提出意见、建议和改进!请随时:

  • 报告问题
  • 建议新功能
  • 提交拉取请求
  • 改进文档

许可证

MIT许可证-请参阅 许可证 文件以获取详细信息。

后续步骤

这个POC演示了PostgreSQL的MCP服务器的基本功能。潜在的增强功能包括:

  • 高级查询构建器和ORM集成
  • 数据库迁移支持
  • 多数据库支持
  • 增强的安全功能
  • 性能监控和指标
  • 大型数据集的流式查询结果
  • 交易管理

目录标签

目录标签

数据分析JavaScriptClaudePostgreSQL数据库查询本地部署AI集成MCP协议数据桥接

支持客户端

Claude DesktopClaude

接入字段

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

stdio

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

none

运行时(runtime,运行环境)

Node.js

来源包(packageName,安装包名)

tsx

工具数量(toolCount,工具数)

3

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdionone部署方式未说明

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

安装前确认

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

来源信息

继续浏览同类 MCP