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

Postgresql MCP Readonly

MCP Server

@modelcontextprotocol/inspector

PostgreSQL MCP Server是一个为AI系统提供安全只读访问PostgreSQL数据库的服务,支持模式内省和数据查询。

工具数

6

提示词数

0

GitHub Stars

0

资源数

0
数据分析PostgreSQLTypeScript

安装说明

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

作者 / 组织

ferrybig

提供方

ferrybig

最后核验

2026/5/17 20:21

运行时

Node.js

快速接入

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

命令预览

npx @modelcontextprotocol/inspector node build/index.js --database your_db --user your_user --password your_password

详细介绍

PostgreSQL MCP 服务器

一个用于只读访问PostgreSQL数据库的模型上下文协议(MCP)服务器。该服务器为人工智能系统提供安全、只读的PostgreSQL数据库访问权限,以便进行模式内省和数据查询。

特点/功能

  • 表格信息获取有关表的详细信息,包括列、类型、可为空状态、外键引用(出向和入向)关系
  • 列出表格列出数据库中所有可访问的表
  • 搜索表使用支持模糊匹配的正则表达式模式搜索表格
  • 数据获取查询表数据,支持可配置的限制和大字段的文本截断
  • 扩展数据访问检索最大可达8KB的文本/二进制大对象(blob)字段,支持续传
  • “JOIN Suggestions” 翻译成中文是:“加入建议”或“参与建议”(根据上下文,也可灵活翻译为“提出加入意见”或“参与提出建议”等)基于外键关系和命名模式的智能JOIN表达式建议
  • 只读安全所有操作均为只读,以防止意外修改数据
  • 智能数据限制文本字段截断为128个字符,默认情况下二进制数据限制为32字节
  • 连接池高效的数据库连接管理,带超时设置

安装

npm install
npm run build

用法

服务器需要 PostgreSQL 的连接详细信息。您可以通过以下方式提供这些信息:

  1. 环境变量:
   export POSTGRES_HOST=localhost
   export POSTGRES_PORT=5432
   export POSTGRES_DATABASE=your_db
   export POSTGRES_USER=your_user
   export POSTGRES_PASSWORD=your_password
   npm start
  1. 命令行参数:
   npm start -- --host localhost --port 5432 --database your_db --user your_user --password your_password
  1. 直接节点执行:
   node build/index.js --database your_db --user your_user --password your_password
  1. 使用MCP Inspector进行测试:
   npx @modelcontextprotocol/inspector node build/index.js --database your_db --user your_user --password your_password

MCP 工具

get_table_info

获取特定表格的全面信息。

  • 参数table_name (字符串)
  • 退货表结构、列详情、约束、外键的出向和入向关系

list_tables

列出数据库中所有可访问的表。

  • 回报包含可选模式信息的表名数组

search_tables

使用正则表达式模式搜索表格。

  • 参数pattern (字符串) - 用于匹配表名的正则表达式模式
  • 退货匹配表名并评估相关性得分

fetch_table_data

从具有安全限制的表中提取数据。

  • 参数

- table_name (字符串) - limit (数字,默认值:100)- 返回的最大行数 - offset (数字,默认:0)- 要跳过的行数

  • 退货表格数据中,文本字段限制为128个字符,二进制大对象(BLOB)限制为32字节

fetch_extended_data

获取最大达8KB的文本/二进制大对象(BLOB)字段。

  • 参数

- table_name (字符串) - row_id (字符串|数字)- 主键值 - column_name (string) - 从该列获取扩展数据

  • 回报扩展字段数据可达8KB

suggest_join_on_expression

基于表间全面的外键分析,建议使用JOIN表达式。利用基于SQL的高级分析技术,查找直接关系、反向关系以及通过共享引用进行的连接。

  • 参数

- existing_tables (array) - 查询中已存在的表及其别名的列表 - table_name (字符串) - 已存在表的名称 - alias (字符串) - 此表使用的别名 - new_table (对象) - 为新表建议JOIN表达式 - table_name (字符串)- 要连接的新表的名称 - alias (字符串)- 新表的别名

  • 退货建议使用带有数值评分(0-100)的JOIN表达式:

- 分数95-100直接外键关系 - 得分85-94通过共享表引用进行连接 - 分数70-84命名约定匹配(例如,user_id → users.id) - 分数50-69部分名称匹配 - 分数 \< 50常见的列名

发展

格式化和代码检查

这个项目使用 生物群落(或生物群系) 用于代码格式化和代码检查:

# Format code
npm run format

# Check formatting (without fixing)
npm run format:check

# Run linter
npm run lint

# Fix linting issues automatically
npm run lint:fix

# Run both formatting and linting checks
npm run check

# Fix all issues automatically
npm run check:fix

建筑

npm run build    # Compile TypeScript
npm run dev      # Run in development mode
npm start        # Run compiled server

配置

创建一个 .env 项目根目录中的文件:

POSTGRES_HOST=localhost
POSTGRES_PORT=5432
POSTGRES_DATABASE=your_database
POSTGRES_USER=your_user
POSTGRES_PASSWORD=your_password
POSTGRES_SSL=false

安全

  • 所有数据库操作均为只读
  • 不允许进行DDL/DML操作
  • 连接遵循最小权限原则
  • 出于安全考虑,默认截断文本和二进制大对象(BLOB)数据
  • 不执行任意SQL - 仅执行预定义的安全查询

许可证

麻省理工学院(MIT)

目录标签

目录标签

数据分析PostgreSQLTypeScript数据库访问本地部署只读查询模式内省AI集成

接入字段

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

stdio

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

none

运行时(runtime,运行环境)

Node.js

来源包(packageName,安装包名)

@modelcontextprotocol/inspector

工具数量(toolCount,工具数)

6

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdionone部署方式未说明

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

安装前确认

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

来源信息

继续浏览同类 MCP