Install
openclaw skills install @thcjp/pg-mcp-skills-freeopenclaw skills install @thcjp/pg-mcp-skills-freePostgreSQL 数据库的日常运维涉及健康检查、索引调优、查询计划分析、表结构查询、SQL 执行等多种操作。传统方式需要切换到 psql 客户端或图形工具,打断了开发节奏。通过 MCP工具协议,这些操作可以在 Agent 对话中直接完成,实现"对话即运维"的体验。
本免费版聚焦于开发与测试环境最高频的六类运维场景:安装部署、健康检查、索引优化、查询计划、模式查询、SQL 执行。每类场景均提供意图识别规则、工具调用模板与安全约束。
所有 PostgreSQL 操作依赖 MCP工具(如 get_database_health、analyze_query_plan 等)。执行任何操作前,必须先确认这些工具是否可用,避免后续流程中断。
判断方法:检查当前可用的 MCP工具列表中是否存在 postgres 相关工具。
| 检查结果 | 处理方式 |
|---|---|
| 工具存在 | 正常执行后续流程 |
| 工具不存在 | 提示用户运行 /setup-postgres-mcp 完成部署 |
输入: 用户提供能力一:MCP工具可用性前置检查所需的指令和必要参数。 处理: 解析能力一:MCP工具可用性前置检查的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回能力一:MCP工具可用性前置检查的响应数据,包含状态码、结果和日志。
根据用户输入判断意图,匹配对应的参考文档执行指令。意图不明确时先询问用户具体需求。
| 用户意图 | 参考文档 | 典型说法 |
|---|---|---|
| 安装部署 | setup-postgres-mcp.md | 安装、部署、配置、第一次用、连不上 |
| 健康检查 | pg-health.md | 健康检查、数据库状态、性能监控、连接数 |
| 索引优化 | pg-index-tuning.md | 索引优化、慢查询、性能调优、建索引 |
| 查询计划 | pg-query-plan.md | 执行计划、EXPLAIN、查询分析、为什么慢 |
| 模式查询 | pg-schema.md | 表结构、字段、关系、生成 SQL |
| 执行 SQL | pg-execute.md | 执行、查询、更新、插入、删除 |
输入: 用户提供能力二:六类意图智能路由所需的指令和必要参数。 处理: 解析能力二:六类意图智能路由的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回能力二:六类意图智能路由的响应数据,包含状态码、结果和日志。
执行写操作(UPDATE、DELETE、DROP 等)前必须向用户展示将要执行的 SQL 并请求确认,避免误操作导致数据丢失。
输入: 用户提供能力三:写操作安全确认所需的指令和必要参数。 处理: 解析能力三:写操作安全确认的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回能力三:写操作安全确认的响应数据,包含状态码、结果和日志。
input_params参数,支持创建/查询/导出操作若 MCP工具配置为只读模式,只能执行 SELECT 查询。本助手会自动识别只读模式并拒绝写操作,给出友好提示。
输入: 用户提供能力四:只读模式兼容所需的指令和必要参数。 处理: 解析能力四:只读模式兼容的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回能力四:只读模式兼容的响应数据,包含状态码、结果和日志。
input_params参数,支持创建/查询/导出操作长时间运行的查询会被自动限制,避免影响数据库整体性能。本助手提供超时设置建议与慢查询识别方法。
输入: 用户提供能力五:长时间查询性能保护所需的指令和必要参数。 处理: 解析能力五:长时间查询性能保护的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回能力五:长时间查询性能保护的响应数据,包含状态码、结果和日志。
input_params参数,支持创建/查询/导出操作
能力覆盖范围:本skill的核心能力覆盖以下场景关键词:数据库管理与优化、工具实现健康检查、索引调优、查询计划分析等、助手免费版是一套、工具协议的、知识库、帮助开发者在不离、Agent、对话的前提下完成、数据库健康检查、查询计划分析、模式查询与、执行等日常运维任、核心能力、六类常见意图的智、写操作安全确认流、只读模式兼容方案、长时间查询的性能、保护策略等。这些关键词对应description中声明的使用场景,均已在上述能力点中提供对应的操作支持。开发者每天早晨通过"健康检查"意图快速查看数据库状态,包括连接数、缓存命中率、死元组比例等关键指标。
线上反馈某接口响应慢,通过"查询计划"意图分析对应 SQL 的执行计划,识别全表扫描、索引失效等问题。
新接手项目时,通过"模式查询"意图快速了解数据库表结构、字段含义、外键关系,加速上手。
编写复杂 SQL 时,通过"执行 SQL"意图在开发库中验证语法与结果,避免直接在生产环境试错。
以下场景PG-MCP助手(免费版)不适合处理:
需要数据库操作、SQL查询、数据存储管理时使用。不适用于非本工具能力范围的需求。
本助手需要配合 MCP工具使用。请确保已安装并配置 postgres 相关的 MCP工具。
典型提问模板:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| input | string | 是 | PG-MCP助手(免费版)处理的输入数据或指令 |
| options | object | 否 | 附加配置选项,如模式选择、格式偏好等 |
| callback_url | string | 否 | 异步处理完成后的回调通知URL |
帮我检查一下数据库的健康状态,看看有没有异常
这条查询很慢,帮我分析一下执行计划:SELECT * FROM orders WHERE user_id = 123
我想看一下 orders 表的结构,有哪些字段和索引
Agent 会根据输入识别意图,调用对应的 MCP工具,并返回结构化的分析结果与建议。
1. 扫描当前可用的 MCP工具列表
2. 检查是否存在 postgres 相关工具(如 get_database_health、analyze_query_plan)
3. 若存在 → 正常执行
4. 若不存在 → 提示:
"PostgreSQL MCP工具尚未连接,请先运行 /setup-postgres-mcp 完成部署和配置。"
用户输入:"数据库最近很慢,帮我看看"
# ...
意图识别:
- "慢" → 可能是索引优化或查询计划
- 询问用户:"您是想分析具体慢查询的执行计划,还是想整体调优索引?"
# ...
用户选择后,加载对应参考文档执行。
即将执行以下写操作:
# ...
SQL: UPDATE users SET status = 'inactive' WHERE last_login < '2024-01-01';
预计影响行数:约 1200 行
# ...
请确认是否执行?(输入"确认"继续,输入"取消"中止)
不要假设 MCP工具一定可用。环境切换、配置变更、服务重启都可能导致工具失效。每次执行操作前都应做前置检查。
即使是开发环境,写操作也应展示 SQL 并请求确认。自动化批量操作尤其危险,一行错误的 UPDATE 可能毁掉整张表。
生产环境的 MCP工具应配置为只读模式,写操作通过工单系统审批后由 DBA 执行。本助手会自动识别只读模式并拒绝写操作。
遇到慢查询不要急于加索引。先用"查询计划"意图分析 EXPLAIN 输出,确认是否真的走索引、扫描行数多少、是否有嵌套循环。
PostgreSQL 的 information_schema 与 pg_catalog 提供了丰富的元数据查询视图。本助手优先使用这些标准视图,兼容性最好。
通过 SET statement_timeout = '30s' 为会话设置超时,避免意外执行了全表扫描等耗时查询拖垮数据库。
| 错误场景(症状) | 可能原因 | 排查方法 | 对策 | 处理方式 |
|---|---|---|---|---|
| MCP工具不可用 | 服务未部署或未配置 | 查看工具列表 | 运行 /setup-postgres-mcp | 对照依赖说明章节逐项验证配置项,确认环境变量已正确设置后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令 |
| 连接超时 | 数据库不可达或防火墙拦截 | 测试网络连通性 | 执行ping命令测试网络连通性,检查防火墙和代理设置与安全组 | 对照依赖说明章节逐项验证配置项,确认环境变量已正确设置后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令 |
| 权限不足 | 数据库用户权限缺失 | 查看 pg_roles | 授予必要权限 | 对照依赖说明章节逐项验证配置项,确认环境变量已正确设置后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令 |
| 查询被自动取消 | statement_timeout 触发 | 查看超时设置 | 优化查询或调大超时 | 对照依赖说明章节逐项验证配置项,确认环境变量已正确设置后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令 |
| 只读模式写操作失败 | MCP工具配置为只读 | 查看配置文件 | 改用 DBA 工单流程 | 对照依赖说明章节逐项验证配置项,确认环境变量已正确设置后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令 |
运行 /setup-postgres-mcp 命令,按照向导完成部署与配置。部署过程包括安装 MCP server、配置数据库连接、注册工具到 Agent。
PostgreSQL 版本?支持 PostgreSQL 10 及以上版本。部分高级功能(如并行查询计划分析)需要 13 及以上版本。
数据库写操作具有不可逆性(尤其是 DELETE、DROP)。即使有备份,恢复也耗时费力。二次确认是最低成本的安全保障。
只读模式只能执行 SELECT 查询,包括健康检查、索引分析、查询计划、模式查询等。UPDATE、DELETE、INSERT、DROP、ALTER 等写操作会被拒绝。
不一定。小表的 Seq Scan 比索引扫描更快。只有当 Seq Scan 出现在大表上,或估算行数远超实际行数时,才需要优化。
通过健康检查意图,调用 get_database_health 工具,会返回当前连接数、最大连接数、活跃连接数等指标。
PostgreSQL 10+(推荐 13+)| 依赖项 | 类型 | 是否必需 | 获取方式 |
|---|---|---|---|
| LLM API | API | 必需 | 由Agent平台内置LLM提供 |
| postgres MCP server | 服务 | 必需 | 通过 /setup-postgres-mcp 部署 |
PostgreSQL 客户端 | 工具 | 可选 | psql / pgAdmin / DBeaver 等 |
本免费体验版限制以下高级功能:
解锁全部功能请使用专业版:pg-mcp-skills-pro
{
"success": true,
"data": {
"result": "PG-MCP助手(免费版)处理结果",
"execution_time": "0.5s",
"metadata": {
"version": "1.0",
"processor": "pg mcp skills"
}
},
"execution_log": ["解析输入参数", "执行核心处理", "格式化输出结果"],
"error": null
}