db-mcp 数据库管理工具
一个强大的模型上下文协议(MCP)工具,用于探索和管理不同类型的数据库,包括PostgreSQL、MySQL和Firestore。
服务介绍
数据库探索者 MCP 工具
一个强大的模型上下文协议 (MCP) 工具,用于探索和管理包括 PostgreSQL、MySQL 和 Firestore 在内的多种类型的数据库。
功能
-
支持多种数据库
- PostgreSQL
- MySQL
- Firestore
-
数据库操作
- 连接到数据库
- 列出表
- 查看触发器
- 列出函数
- 执行 SQL 查询(PostgreSQL 和 MySQL)
- 导出表结构
- 导出表数据
与 Cursor 的集成
在将工具添加到 Cursor 之前,您需要构建项目:
- 克隆仓库
- 安装依赖项:
npm install - 构建项目:
npm run build
要将工具添加到 Cursor:
- 打开 Cursor 设置
- 导航至“模型上下文协议 (MCP)”部分
- 点击“添加新工具”
- 填写以下详细信息:
注意:请将{ "name": "database-explorer", "command": "node /path/to/project/dist/index.js", "description": "Database Explorer MCP Tool" }/path/to/project替换为您的实际项目目录路径。 - 保存设置
- 重启 Cursor
使用该工具:
-
设置完成后,您可以使用以下命令之一连接到您的数据库:
- 对于 PostgreSQL:使用带有连接详情的
!pg - 对于 MySQL:使用带有连接详情的
!mysql - 对于 Firestore:使用带有连接详情的
!firestore
- 对于 PostgreSQL:使用带有连接详情的
-
连接后,您可以执行各种数据库操作:
- 使用
!tables列出所有表 - 使用
!triggers查看触发器 - 使用
!functions列出函数 - 使用
!query执行 SQL 查询 - 使用
!export-db导出表结构 - 使用
!export-data导出表数据
- 使用
请参阅下面的命令部分以获取详细的使用示例。
命令
连接命令
-
!pg- 连接到 PostgreSQL 数据库{ "connection": { "host": "hostname", "port": 5432, "database": "dbname", "user": "username", "password": "password" } } -
!mysql- 连接到 MySQL 数据库{ "connection": { "host": "hostname", "port": 3306, "database": "dbname", "user": "username", "password": "password" } } -
!firestore- 连接到 Firestore 数据库{ "connection": { "projectId": "your-project-id", "keyFilename": "path/to/keyfile.json" } }
数据库操作命令
!tables- 列出连接数据库中的所有表!triggers- 列出连接数据库中的所有触发器!functions- 列出连接数据库中的所有函数!query- 执行 SQL 查询(仅限 PostgreSQL 和 MySQL){ "query": "SELECT * FROM table_name" }!export-db- 导出表结构{ "table": "table_name" }!export-data- 以 INSERT 语句的形式导出表数据{ "table": "table_name" }
要求
- Node.js
- 必需的数据库驱动程序:
- 对于 PostgreSQL 使用
pg - 对于 MySQL 使用
mysql2 - 对于 Firestore 使用
@google-cloud/firestore
- 对于 PostgreSQL 使用
使用方法
- 确保你有必要的数据库凭据
- 使用适当的连接命令连接到你的数据库
- 使用可用的命令来探索和管理你的数据库
错误处理
- 该工具包括全面的错误处理,涵盖以下方面:
- 连接失败
- 查询执行错误
- 模式和数据导出问题
- 无效的数据库操作
注意事项
- 由于 Firestore 是 NoSQL 数据库,因此对它的支持仅限于基本操作
- SQL 操作仅适用于 PostgreSQL 和 MySQL