PostgreSQL Multi Schema

PostgreSQL Multi Schema

🚀 PostgreSQL 多架构 MCP 服务器

这是一个提供只读访问 PostgresSQL 数据库的模型上下文协议 (MCP) 服务器,它增强了多架构支持。该服务器让大型语言模型 (LLMs) 能跨多个命名空间检查数据库架构,并执行只读查询,同时还能保持架构隔离。

🚀 快速开始

服务器需要一个数据库 URL,并接受要暴露的架构列表(以逗号分隔),使用以下命令启动:

npx -y mcp-server-postgres-multi-schema  [schemas]
  • database-url:PostgreSQL 连接字符串(例如,postgresql://localhost/mydb
  • schemas:要暴露的架构列表,用逗号分隔(默认为 'public' 如果未指定)

示例

# 使用默认公共架构连接
npx -y mcp-server-postgres-multi-schema postgresql://localhost/mydb

# 使用多个架构
npx -y mcp-server-postgres-multi-schema postgresql://localhost/mydb public,analytics,staging

✨ 主要特性

  • 多架构支持:通过命令行配置明确指定要暴露的架构。
  • 架构隔离:严格控制仅允许在服务器启动时列出的授权架构访问。
  • 跨架构发现:提供统一的多个架构表视图,同时维护架构边界。
  • 元数据安全:过滤系统目录以仅显示用户定义的表和指定架构。

📦 安装指南

暂未提及具体安装步骤,可参考上述快速开始部分的启动命令。

💻 使用示例

基础用法

在命令行中使用默认公共架构连接数据库:

npx -y mcp-server-postgres-multi-schema postgresql://localhost/mydb

高级用法

在命令行中使用多个架构连接数据库:

npx -y mcp-server-postgres-multi-schema postgresql://localhost/mydb public,analytics,staging

与 Claude Desktop 一起使用

claude_desktop_config.json 中配置 "mcpServers" 部分:

{
"mcpServers": {
"postgres": {
"command": "npx",
"args": [
"-y",
"mcp-server-postgres-multi-schema",
"postgresql://localhost/mydb",
"public,audit"
]
}
}
}

📚 详细文档

组件

工具

  • query
    • 执行只读 SQL 查询到连接的数据库。
    • 输入: sql (字符串): 要执行的 SQL 查询。
    • 所有查询都在 READ ONLY 事务中执行。
    • 通过 search_path 限制维护架构上下文。

资源

服务器为每个表提供所授权架构的信息:

  • 表架构 (postgres://///schema)
    • 每个表的 JSON 架构信息。
    • 包括列名、数据类型和类型修饰符。
    • 自动从数据库元数据中发现。
    • 多架构支持,带有显式架构允许列表。

    📄 许可证

    此多架构 MCP 服务器根据 MIT 许可证发布。您可以按照 LICENSE 文件中的条款使用、修改和分发软件。

    • 0 关注
    • 0 收藏,10 浏览
    • system 提出于 2025-09-24 13:48

    相似服务问题