Integrations
Provides Docker container deployment options for running the DBHub server with configurable database connections and transport options.
Supports connecting to DuckDB databases to explore tables, access schema information, and perform read-only SQL queries with safety measures.
Provides access to MySQL databases for browsing tables, viewing schema information, and executing read-only SQL queries with safety protections.
DBHub — это универсальный шлюз базы данных, реализующий интерфейс сервера Model Context Protocol (MCP). Этот шлюз позволяет клиентам, совместимым с MCP, подключаться к различным базам данных и исследовать их.
Демонстрационная конечная точка SSE
https://demo.dbhub.ai/sse подключает образец базы данных сотрудников . Вы можете указать на него Cursor или MCP Inspector, чтобы увидеть его в действии.
Поддерживаемая матрица
Ресурсы базы данных
Имя ресурса | Формат URI | PostgreSQL | MySQL | MariaDB | SQL-сервер | SQLite | Оракул |
---|---|---|---|---|---|---|---|
схемы | db://schemas | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
таблицы_в_схеме | db://schemas/{schemaName}/tables | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
структура_таблицы_в_схеме | db://schemas/{schemaName}/tables/{tableName} | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
индексы_в_таблице | db://schemas/{schemaName}/tables/{tableName}/indexes | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
процедуры_в_схеме | db://schemas/{schemaName}/procedures | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
подробности_процедуры_в_схеме | db://schemas/{schemaName}/procedures/{procedureName} | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
Инструменты базы данных
Инструмент | Имя команды | PostgreSQL | MySQL | MariaDB | SQL-сервер | SQLite | Оракул |
---|---|---|---|---|---|---|---|
Выполнить SQL | execute_sql | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Список соединителей | list_connectors | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Возможности промпта
Быстрый | Имя команды | PostgreSQL | MySQL | MariaDB | SQL-сервер | SQLite | Оракул |
---|---|---|---|---|---|---|---|
Сгенерировать SQL | generate_sql | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Объясните элементы БД | explain_db | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Установка
Докер
НПМ
Примечание: демонстрационный режим включает в себя встроенный пример базы данных SQLite «employee» с таблицами для сотрудников, отделов, зарплат и т. д.
Клод Десктоп
- Claude Desktop поддерживает только
stdio
-транспорт https://github.com/orgs/modelcontextprotocol/discussions/16
Курсор
- Курсор поддерживает как
stdio
, так иsse
. - Следуйте руководству по Cursor MCP и обязательно используйте режим агента .
Использование
SSL-соединения
Вы можете указать режим SSL с помощью параметра sslmode
в строке DSN:
База данных | sslmode=disable | sslmode=require | Поведение SSL по умолчанию |
---|---|---|---|
PostgreSQL | ✅ | ✅ | Проверка сертификата |
MySQL | ✅ | ✅ | Проверка сертификата |
MariaDB | ✅ | ✅ | Проверка сертификата |
SQL-сервер | ✅ | ✅ | Проверка сертификата |
Оракул | ✅ | ✅ | N/A (используйте конфигурацию клиента Oracle) |
SQLite | ❌ | ❌ | N/A (на основе файлов) |
Параметры режима SSL:
sslmode=disable
: Все шифрование SSL/TLS отключено. Данные передаются в открытом виде.sslmode=require
: Соединение зашифровано, но сертификат сервера не проверен. Это обеспечивает защиту от перехвата пакетов, но не от атак типа «человек посередине». Вы можете использовать это для доверенного самоподписанного CA.
Если не указать sslmode
, большинство баз данных по умолчанию используют проверку сертификатов, что обеспечивает наивысший уровень безопасности.
Пример использования:
Режим только для чтения
Вы можете запустить DBHub в режиме только для чтения, который ограничивает выполнение SQL-запросов операциями только для чтения:
В режиме «только чтение» разрешены только операции SQL, доступные только для чтения .
Это обеспечивает дополнительный уровень безопасности при подключении к производственным базам данных.
Настройте подключение к базе данных
Вы можете использовать DBHub в демонстрационном режиме с образцом базы данных сотрудников для тестирования:
Для реальных баз данных требуется Database Source Name (DSN). Вы можете предоставить его несколькими способами:
- Аргумент командной строки (наивысший приоритет):Copy
- Переменная окружения (второй приоритет):Copy
- Файл среды (третий приоритет):
- Для разработки: создайте
.env.local
с вашим DSN - Для производства: создайте
.env
с вашим DSN GXP14
- Для разработки: создайте
[!WARNING] При работе в Docker используйте
host.docker.internal
вместоlocalhost
для подключения к базам данных, запущенным на вашем хост-компьютере. Например:mysql://user:password@host.docker.internal:3306/dbname
DBHub поддерживает следующие форматы строк подключения к базе данных:
База данных | Формат DSN | Пример |
---|---|---|
MySQL | mysql://[user]:[password]@[host]:[port]/[database] | mysql://user:password@localhost:3306/dbname?sslmode=disable |
MariaDB | mariadb://[user]:[password]@[host]:[port]/[database] | mariadb://user:password@localhost:3306/dbname?sslmode=disable |
PostgreSQL | postgres://[user]:[password]@[host]:[port]/[database] | postgres://user:password@localhost:5432/dbname?sslmode=disable |
SQL-сервер | sqlserver://[user]:[password]@[host]:[port]/[database] | sqlserver://user:password@localhost:1433/dbname?sslmode=disable |
SQLite | sqlite:///[path/to/file] или sqlite::memory: | sqlite:///path/to/database.db , sqlite:C:/Users/YourName/data/database.db (windows) или sqlite::memory: |
Оракул | oracle://[user]:[password]@[host]:[port]/[service_name] | oracle://username:password@localhost:1521/service_name?sslmode=disable |
Оракул
Если вы видите ошибку «NJS-138: соединения с этой версией сервера базы данных не поддерживаются node-oracledb в тонком режиме», вам необходимо использовать толстый режим, как описано ниже.
Докер
Используйте образ docker bytebase/dbhub-oracle-thick
вместо образа docker bytebase/dbhub
.
нпх
- Загрузите и установите Oracle Instant Client для вашей платформы
- Установите переменную среды
ORACLE_LIB_DIR
на путь к вашему Oracle Instant Client:
SQL-сервер
Дополнительные параметры запроса:
аутентификация
authentication=azure-active-directory-access-token
. Применимо только при запуске из Azure. См. DefaultAzureCredential .
Транспорт
- stdio (по умолчанию) — для прямой интеграции с такими инструментами, как Claude Desktop:Copy
- sse - для браузерных и сетевых клиентов:Copy
Параметры командной строки
Вариант | Описание | По умолчанию |
---|---|---|
демо | Запустить в демонстрационном режиме с образцом базы данных сотрудников | false |
dsn | Строка подключения к базе данных | Обязательно, если не в демонстрационном режиме |
транспорт | Режим транспорта: stdio или sse | stdio |
порт | Порт HTTP-сервера (применимо только при использовании --transport=sse ) | 8080 |
только для чтения | Ограничить выполнение SQL операциями только для чтения | false |
Демонстрационный режим использует базу данных SQLite в памяти, загруженную образцом базы данных сотрудников , которая включает таблицы для сотрудников, отделов, должностей, зарплат, сотрудников отделов и менеджеров отделов. Образец базы данных включает скрипты SQL для создания таблиц, загрузки данных и тестирования.
Разработка
- Установите зависимости:Copy
- Запустить в режиме разработки:Copy
- Сборка для производства:Copy
Отладка с помощью MCP Inspector
стдио
СШЭ
Подключитесь к конечной точке сервера DBHub /sse
Участники
История Звезды
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Универсальный сервер баз данных MCP, подключающийся к MySQL, PostgreSQL, SQLite, DuckDB и т. д.
Related Resources
Related MCP Servers
- -securityFlicense-qualityAn MCP server that provides safe, read-only access to SQLite databases through MCP. This server is built with the FastMCP framework, which enables LLMs to explore and query SQLite databases with built-in safety features and query validation.Last updated -21Python
- -securityAlicense-qualityAn MCP server for MotherDuck and local DuckDB.Last updated -359PythonMIT License
- -securityAlicense-qualityMCP to access any database accessible via JDBC such as Postgres, Oracle, mysql, mariadb, sqlite etc.Last updated -103Apache 2.0
- AsecurityAlicenseAqualityAn MCP server that provides read-only access to MySQL databases.Last updated -469517JavaScriptMIT License