前言¶
在 IDE 里让 AI 帮忙查库、改表,常见做法是临时贴连接串、手写 SQL,或单独起一个 MCP 服务再手工配 mcp.json。步骤分散时,Agent 容易漏掉连接测试、写操作确认和风险分级。
SkillHub 上的「数据库操作」(@user_16c0d092/database-mcp,v1.0.1)是一份基于通用 SKILL.md 的安装与使用指南:安装后,Agent 会按文档驱动 @turingdance/database-mcp 这套 MCP 服务,覆盖连库、探表、只读查询和带确认的写操作。下面介绍它是什么、能做什么,以及如何安装与使用。
这是什么¶
「数据库操作」是社区发布(source: community)的编程类 Skill,分类为 dev-programming,子类包含后端开发与脚本工具。发布者为 user_16c0d092,SkillHub 页面标注 requires_api_key=false,即不依赖额外 API Key。
Skill 包内核心是 database-mcp 使用指南:说明如何通过 npx @turingdance/database-mcp 或 MCP 配置接入数据库,并约定 Agent 应先测连接、再探表、写操作须 confirm: true。官方 Skill 页未提供单独的概述文案;能力细节以包内 SKILL.md(v1.0.1 变更说明为「明确如何安装和使用 database-mcp」)为准。
- SkillHub 页面:https://www.skillhub.cn/skills/user_16c0d092/database-mcp
- 坐标:
@user_16c0d092/database-mcp
核心功能¶
Skill 本身不替代 MCP 服务端,而是教 Agent 正确使用 database-mcp 提供的 5 个 MCP 工具:
| 工具 | 用途 | 风险 | 说明 |
|---|---|---|---|
connect_db |
测试连接 | 低 | 验证数据库连通性 |
list_tables |
列出所有表 | 低 | 获取数据库表清单 |
describe_table |
查看表结构 | 低 | 字段、类型、约束 |
query |
SELECT 查询 | 低 | 只读,参数化防注入 |
execute |
写操作 | 按语句分级 | INSERT/UPDATE/DELETE/DROP 等,需 confirm |
底层 MCP 通过环境变量选择数据库类型,支持 mysql、mariadb、tidb、postgresql、sqlite、oracle、sqlserver(默认 sqlite)。写操作按关键字分级:高危(如 DROP、TRUNCATE、ALTER)与中危(如 INSERT、UPDATE、DELETE)均需 confirm: true,未确认会返回 rejected 及风险说明;低危只读语句可直接执行。
SkillHub 侧安全扫描状态为「安全,无风险」(Keen、叁步报告,见 Skill 页嵌入数据)。截至页面数据:下载约 2772 次、收藏 2 次。
安装与启用¶
1. 安装 Skill(Agent 侧)¶
官方安装说明:先阅读 SkillHub 安装文档,再安装本 Skill。
检查 CLI:
command -v skillhub && skillhub --version
未安装时可按文档安装 SkillHub CLI,然后将 Skill 装进当前 Agent 的 skills 目录(必须使用 --dir,否则默认 ./skills/ 可能不被识别):
skillhub install user_16c0d092/database-mcp --dir ~/.cursor/skills/
常见路径(摘自 SkillHub 安装文档):
- Cursor:
~/.cursor/skills/ - Claude Code:
~/.claude/skills/ - Codex:
~/.codex/skills/或项目下.agents/skills/
也可在 SkillHub 页面下载 database-mcp-1.0.1.zip,解压到对应 skills 目录。
给 AI 的自然语言安装提示(与官网一致):
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_16c0d092/database-mcp。
2. 运行 database-mcp(MCP 服务端)¶
Skill 文档推荐直接 npx,无需全局安装:
npx @turingdance/database-mcp
带 MySQL 环境变量示例:
DB_TYPE=mysql DB_HOST=localhost DB_USER=root DB_PASSWORD=123456 DB_NAME=test npx @turingdance/database-mcp
WorkBuddy / Claude Desktop 可在 ~/.workbuddy/mcp.json 或对应 MCP 配置中写入:
{
"mcpServers": {
"database-mcp": {
"command": "npx",
"args": ["-y", "@turingdance/database-mcp"],
"env": {
"DB_TYPE": "mysql",
"DB_HOST": "127.0.0.1",
"DB_PORT": "3306",
"DB_USER": "root",
"DB_PASSWORD": "your_password",
"DB_NAME": "your_database"
}
}
}
}
环境变量摘要(完整表见 Skill 包内文档):
| 变量 | 说明 | 默认值 |
|---|---|---|
DB_TYPE |
数据库类型 | sqlite |
DB_HOST |
主机 | localhost |
DB_PORT |
端口 | 各库默认 |
DB_USER / DB_PASSWORD |
账号 | - |
DB_NAME |
库名(SQLite 可省略) | mcp-db |
DB_FILE |
SQLite 文件路径 | mcp.db |
典型用法¶
经过上面的步骤,Agent 应按 Skill 约定的工作流操作。
1. 连接测试(必做)
自然语言示例:
测试数据库连接
对应先调用 connect_db,再探表或查询。
2. 探索库表
列出所有表
查看 users 表的结构
3. 只读查询
查询 users 表的前10条数据
统计 orders 表的总记录数
4. 写操作(须确认)
INSERT/UPDATE/DELETE 等需传入 confirm: true,例如:
{
"tool": "execute",
"arguments": {
"sql": "INSERT INTO users (name, email) VALUES ('张三', 'zhangsan@example.com')",
"confirm": true,
"reason": "添加测试用户数据"
}
}
未确认时可能收到:
{
"status": "rejected",
"risk_level": "medium",
"message": "检测到中危(数据变更)操作 [INSERT],必须传入 confirm: true 才能执行。"
}
Skill 还建议:写操作前用 describe_table 和 query 预览;查询使用 ? 参数化,避免拼接字符串。
适用场景与注意¶
适合谁
- 已在 Cursor、Claude Code、WorkBuddy 等环境使用 Skills,希望 Agent 稳定走「连库 → 探表 → 查询 → 确认后写入」流程的开发者。
- 需要对接多种 SQL 库、又不想每次重讲 MCP 配置与风险规则的后端或数据脚本场景。
限制与注意
- Skill 页
overviewMd为空,详细行为以包内SKILL.md与@turingdance/database-mcp为准;升级 Skill 或 npm 包后应重新核对版本(当前 Skill 为 v1.0.1)。 - 写操作拦截是安全设计,生产库执行带
confirm: true的语句前务必先只读预览。 - SkillHub CLI 直装若遇下载 404,可改用页面「下载 Zip 包」链接(
slug=@user_16c0d092/database-mcp)解压安装。 - 源码本地调试路径在 Skill 文档中提供(
github.com/turingdance/database-mcp),与 SkillHub 安装相互独立。
结尾¶
「数据库操作」把 @turingdance/database-mcp 的安装、环境变量、工具列表和风险分级写进 Agent 可读的 Skill,减少连库查表时步骤遗漏和误写。需要查阅元数据或下载包时,请打开 SkillHub 官方页:https://www.skillhub.cn/skills/user_16c0d092/database-mcp 。