Dbhub MCP Server

Dbhub MCP Server

Dbhub MCP Server 是一个支持多种数据库连接与操作的通用数据库网关,基于模型上下文协议(MCP)实现,适用于需要统一访问多种数据库环境的开发者和运维人员。

64 浏览
2025-12-29 发布

详细介绍

DBHub 是一个基于模型上下文协议(MCP)的通用数据库网关,支持多种数据库的连接与操作。通过 DBHub,用户可以使用统一的接口访问 PostgreSQL、MySQL、MariaDB、SQL Server 和 SQLite 等数据库,执行 SQL 查询、管理数据库结构,并具备生成 SQL 和解释数据库元素的能力。DBHub 适用于需要统一访问多种数据库环境的开发者、运维人员及业务分析师。

核心功能

DBHub 提供了多种核心功能,帮助用户高效地操作和管理数据库资源:

  • 支持多种数据库资源,包括 schemas、tables_in_schema、table_structure_in_schema 等。
  • 集成多种工具,如 Execute SQL、List Connectors 等,支持执行 SQL 查询和列出数据库连接器。
  • 具备强大的生成能力,支持 Generate SQL 和 Explain DB Elements 功能,帮助用户生成 SQL 语句并解释数据库元素。
  • 支持读写分离模式,提高数据库操作的安全性。
  • 内置示例数据库,方便用户快速上手和测试。

安装方法

DBHub 可以通过 Docker 或 NPM 安装,以下是具体的安装步骤:

docker run --rm --init --name dbhub --publish 8080:8080 bytebase/dbhub --transport sse --port 8080 --dsn "postgres://user:password@localhost:5432/dbname?sslmode=disable"

或使用 NPM 安装:

pnpm install

安装完成后,可以通过以下命令启动 DBHub:

npx @bytebase/dbhub --transport sse --port 8080 --dsn "$DSN"

使用方法

DBHub 提供了多种使用方式,包括通过命令行执行 SQL 查询、生成 SQL 语句等。

SELECT * FROM employees;

上述命令将返回员工表中的所有记录。

Generate SQL for 'employees' table.

该命令将返回创建员工表的 SQL 语句。

此外,DBHub 还支持与 MCP Inspector 工具结合使用,用于调试和测试。以下是使用 PostgreSQL 的 stdio 模式示例:

TRANSPORT=stdio DSN="postgres://user:password@localhost:5432/dbname?sslmode=disable" npx @modelcontextprotocol/inspector node /path/to/dbhub/dist/index.js

在 SSE 模式下,首先启动 DBHub 服务:

pnpm dev --transport=sse --port=8080

然后在另一个终端启动 MCP Inspector:

npx @modelcontextprotocol/inspector

最后连接到 DBHub 服务的 /sse 端点。

使用场景

DBHub 适用于以下场景:

  • 需要统一访问多种数据库环境的开发团队。
  • 运维人员需要集中管理多个数据库连接。
  • 业务分析师需要快速查询和分析不同数据库中的数据。
  • 开发人员需要在本地或测试环境中快速搭建数据库连接。

注意事项

在使用 DBHub 时,需要注意以下几点:

  • 某些高级功能可能对特定数据库不完全支持。
  • DBHub 需要依赖于 MCP 兼容客户端使用。
  • 在 Docker 中连接本地数据库时,建议使用 host.docker.internal 作为主机地址。
  • 可以通过启用只读模式来限制 SQL 执行为只读操作,提高安全性。

DBHub 提供了丰富的功能和灵活的使用方式,帮助用户高效地管理和操作多种数据库资源。

数据库网关 SQL生成 多数据库连接 MCP协议

相关服务推荐

查看更多