数据库探索工具

一款支持PostgreSQL、MySQL和Firestore等多种数据库的探索和管理工具,提供连接、查询、导出等多种操作功能。

  • by wirdes
  • TypeScript
  • 本地部署
  • 5 星标
  • 更新于
在 GitHub 查看 wirdes/db-mcp-tool

使用说明

数据库浏览器MCP工具

一个强大的模型上下文协议(MCP)工具,用于探索和管理不同类型的数据库,包括PostgreSQL、MySQL和Firestore。

特性

  • 多数据库支持

    • PostgreSQL
    • MySQL
    • 四大
  • 数据库操作

    • 连接到数据库
    • 列出表格
    • 视图触发器
    • 列表函数
    • 执行SQL查询(PostgreSQL和MySQL)
    • 导出表架构
    • 导出表数据

与Cursor集成

在将工具添加到Cursor之前,您需要构建项目:

  1. 克隆存储库
  2. 安装依赖项:
    npm install
    
  3. 构建项目:
    npm run build
    

要将工具添加到光标,请执行以下操作:

  1. 打开光标设置
  2. 导航到“模型上下文协议(MCP)”部分
  3. 点击“添加新工具”
  4. 填写以下详细信息:
    {
      "name": "database-explorer",
      "command": "node /path/to/project/dist/index.js",
      "description": "Database Explorer MCP Tool"
    }
    
    注:更换 /path/to/project 带有项目目录的实际路径。
  5. 保存设置
  6. 重新启动游标

使用工具:

  1. 安装后,您可以使用以下命令之一连接到数据库:

    • 对于PostgreSQL:使用 !pg 带有连接详细信息
    • MySQL:使用 !mysql 带有连接详细信息
    • 对于Firestore:使用 !firestore 带有连接详细信息
  2. 连接后,您可以使用各种数据库操作:

    • !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
  • 所需的数据库驱动程序:
    • pg 对于PostgreSQL
    • mysql2 MySQL
    • @google-cloud/firestore Firestore

用法

  1. 确保您拥有必要的数据库凭据
  2. 使用适当的连接命令连接到数据库
  3. 使用可用命令探索和管理数据库

错误处理

  • 该工具包括全面的错误处理,用于:
    • 连接失败
    • 查询执行错误
    • 架构和数据导出问题
    • 数据库操作无效

备注

  • 由于其NoSQL特性,Firestore支持仅限于基本操作
  • SQL操作仅适用于PostgreSQL和MySQL