DBHub Analytics について
DBHub Analytics は、AI アシスタントをクラウドデータウェアハウスやリレーショナルデータベースに接続するオープンソースの MCP サーバーです。スキーマ探索と SQL ツールに加え、読み取り専用、行数制限、タイムアウトによる保護機能を備えます。
主な機能
- 017 種類のデータベースに接続
- 02TOML から複数データベースに接続
- 03カタログ、スキーマ、テーブルの探索
- 04読み取り専用と行数制限付き SQL 実行
- 05再利用可能なパラメーター付き SQL ツールの定義
- 06SSH トンネルと SSL/TLS の利用
活用シーン
- 01分析のため Databricks や BigQuery を検索
- 02スキーマ探索とデータベース問題の診断
- 03本番の読み取りレプリカを安全に検索
- 04複数データベースの分析結果を比較
MCP 対応
MCP クライアントに SQL 実行、データベースオブジェクト検索、設定可能なカスタムツールを提供します。DSN または複数データベース用 TOML 設定で対応データベースに接続します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y dbhub-analyticsDSNシークレットDatabase connection string (e.g., postgres://user:pass@host:5432/db)DB_TYPEDatabase type: postgres, mysql, mariadb, sqlserver, sqlite, databricks, bigqueryDB_HOSTDatabase hostnameDB_PORTDatabase portDB_USERDatabase usernameDB_PASSWORDシークレットDatabase passwordDB_NAMEDatabase name or SQLite file pathTRANSPORTTransport mode: stdio or httpPORTHTTP server port (default: 8080)IDInstance identifier for tool namesSSH_HOSTSSH server hostnameSSH_PORTSSH server port (default: 22)SSH_USERSSH usernameSSH_PASSWORDシークレットSSH passwordSSH_KEYシークレットPath to SSH private keySSH_PASSPHRASEシークレットSSH key passphraseローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
DBHub Analytics
Databricks、Google BigQuery、PostgreSQL、MySQL、SQL Server、SQLite、MariaDB に対応したユニバーサルなデータベース MCP サーバー
DBHub Analytics とは?
DBHub Analytics は、Claude Desktop、Claude Code、Cursor、VS Code Copilot などの AI アシスタントや、その他の MCP 互換クライアントをデータベースに接続する、オープンソースの MCP(Model Context Protocol) サーバーです。Databricks SQL ウェアハウス、Google BigQuery データセット、PostgreSQL、MySQL などに、統一された単一のインターフェースからクエリを実行できます。
+------------------+ +--------------+ +------------------+
| | | | | |
| Claude Desktop +--->+ +--->+ PostgreSQL |
| | | | | |
| Claude Code +--->+ +--->+ SQL Server |
| | | DBHub | | |
| Cursor +--->+ Analytics +--->+ SQLite |
| | | | | |
| VS Code +--->+ +--->+ MySQL |
| | | | | |
| Copilot CLI +--->+ +--->+ MariaDB |
| | | | | |
| | | +--->+ Databricks |
| | | | | |
| | | +--->+ BigQuery |
| | | | | |
+------------------+ +--------------+ +------------------+
MCP Clients MCP Server Databases
主な機能
- クラウドデータウェアハウス:分析ワークロード向けに Databricks SQL と Google BigQuery に接続できます
- 従来型データベース:PostgreSQL、MySQL、MariaDB、SQL Server、SQLite を完全にサポートします
- マルチデータベース:単一の TOML 設定ファイルで複数のデータベースに同時接続できます
- スキーマエクスプローラー:段階的に情報を表示し、カタログ、データセット、スキーマ、テーブル、カラムを参照できます
- 安全対策:読み取り専用モード、行数制限、クエリータイムアウトにより、制御不能な操作を防ぎます
- セキュアなアクセス:SSH トンネリング、SSL/TLS 暗号化、サービスアカウント認証に対応します
- 設定不要:DSN を指定するだけで利用できます。ドライバーのインストールや複雑な設定は不要です
対応データベース
| データベース | DSN プロトコル | ステータス |
|---|---|---|
| PostgreSQL | postgres:// | 安定版 |
| MySQL | mysql:// | 安定版 |
| MariaDB | mariadb:// | 安定版 |
| SQL Server | sqlserver:// | 安定版 |
| SQLite | sqlite:/// | 安定版 |
| Databricks SQL | databricks:// | 安定版 |
| Google BigQuery | bigquery:// | 安定版 |
MCP ツール
| ツール | 説明 |
|---|---|
execute_sql | 読み取り専用の強制と行数制限を適用して SQL クエリーを実行します |
search_objects | カタログ、スキーマ、テーブル、カラム、インデックス、ルーチンを参照します |
| カスタムツール | dbhub.toml で再利用可能なパラメーター付き SQL クエリーを定義します |
クイックスタート
NPM(推奨)
npx dbhub-analytics --dsn "postgres://user:password@localhost:5432/dbname"
Databricks SQL
npx dbhub-analytics --dsn "databricks://token:[email protected]/sql/2.0/warehouses/your_warehouse_id"
Google BigQuery
npx dbhub-analytics --dsn "bigquery://your-gcp-project/your_dataset?keyFile=/path/to/service-account.json&location=US"
Docker
docker run --rm --init \
--name dbhub-analytics \
--publish 8080:8080 \
amansingh63/dbhub-analytics \
--transport http \
--port 8080 \
--dsn "postgres://user:password@localhost:5432/dbname"
デモモード
npx dbhub-analytics --demo
AI アシスタントに接続する
Claude Desktop / Claude Code
claude_desktop_config.json または .mcp.json に追加します:
{
"mcpServers": {
"dbhub-analytics": {
"command": "npx",
"args": ["-y", "dbhub-analytics", "--dsn", "bigquery://your-project/your_dataset?keyFile=/path/to/sa.json&location=US"]
}
}
}
GitHub Copilot(VS Code)
.vscode/mcp.json に追加します:
{
"servers": {
"dbhub-analytics": {
"command": "npx",
"args": ["-y", "dbhub-analytics", "--dsn", "postgres://user:pass@localhost:5432/dbname"]
}
}
}
Cursor
Cursor の MCP 設定(~/.cursor/mcp.json)に追加します:
{
"mcpServers": {
"dbhub-analytics": {
"command": "npx",
"args": ["-y", "dbhub-analytics", "--dsn", "databricks://token:YOUR_TOKEN@host/sql/2.0/warehouses/ID"]
}
}
}
Windsurf
Windsurf の MCP 設定(~/.codeium/windsurf/mcp_config.json)に追加します:
{
"mcpServers": {
"dbhub-analytics": {
"command": "npx",
"args": ["-y", "dbhub-analytics", "--dsn", "mysql://user:pass@localhost:3306/dbname"]
}
}
}
TOML 設定によるマルチデータベース接続
複数のデータベースに接続するには、上記のいずれかのクライアントで TOML 設定ファイルを使用します:
{
"mcpServers": {
"dbhub-analytics": {
"command": "npx",
"args": ["-y", "dbhub-analytics", "--config", "/path/to/dbhub.toml"]
}
}
}
設定
DSN 接続文字列
| データベース | 形式 |
|---|---|
| PostgreSQL | postgres://user:pass@host:5432/dbname?sslmode=require |
| MySQL | mysql://user:pass@host:3306/dbname |
| MariaDB | mariadb://user:pass@host:3306/dbname |
| SQL Server | sqlserver://user:pass@host:1433/dbname |
| SQLite | sqlite:///path/to/file.db または sqlite:///:memory: |
| Databricks | databricks://token:TOKEN@host/sql/2.0/warehouses/ID?catalog=CAT&schema=SCH |
| BigQuery | bigquery://PROJECT_ID/DATASET?keyFile=/path/to/key.json&location=US |
マルチデータベースの設定(TOML)
複数のデータベースに同時接続できます。dbhub.toml ファイルを作成します:
[[sources]]
id = "databricks_prod"
type = "databricks"
host = "adb-xxx.azuredatabricks.net"
password = "dapi..."
path = "/sql/2.0/warehouses/abc123"
[[sources]]
id = "bigquery_analytics"
type = "bigquery"
project = "my-gcp-project"
database = "analytics_dataset"
location = "US"
[[sources]]
id = "postgres_prod"
type = "postgres"
host = "localhost"
port = 5432
database = "production"
user = "dbuser"
password = "secret"
次に、以下を実行します:
npx dbhub-analytics --config dbhub.toml
詳しくは、マルチデータベースの設定 とコマンドラインオプションをご覧ください。
ユースケース
- データアナリスト:Claude に自然言語で Databricks または BigQuery のデータウェアハウスをクエリするよう依頼できます
- バックエンドエンジニア:データベースのスキーマを調べ、診断用クエリを実行し、AI を使って問題をデバッグできます
- DevOps/SRE:読み取り専用モードと行数制限を使って、本番環境のリードレプリカに安全に接続できます
- データサイエンティスト:複数のデータベースに同時にクエリを実行し、PostgreSQL と BigQuery のインサイトを結合できます
開発
# Install dependencies
pnpm install
# Run in development mode
pnpm dev
# Build for production
pnpm build
# Run tests
pnpm test
クレジット
オープンソースのデータベース DevSecOps プラットフォームである Bytebase の DBHub を基盤として構築されています。MIT ライセンスのもとで提供されています。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。