mcpField
W
whodb

whodb

github.com/clideyデータ・データベース5.0k106 回インストール今日更新
リポジトリ

whodb について

WhoDB は、MCP ツールまたは CLI でデータベースを操作・分析するためのツールです。データベースのクエリやスキーマ確認に加え、プラットフォームのワークスペース選択と書き込みのプレビュー・確認手順を備えています。

主な機能

  1. 01SQL クエリの実行と結果確認
  2. 02スキーマ、テーブル、列の参照
  3. 03接続の管理と疎通テスト
  4. 04テーブルやクエリ結果のエクスポート
  5. 05プラットフォームのワークスペース選択と書き込みプレビュー

活用シーン

  1. 01新しいデータベースの構造を把握
  2. 02質問に応じたデータ検索と集計
  3. 03テーブルや絞り込んだクエリ結果の出力
  4. 04指定したワークスペースでのプラットフォーム操作

MCP 対応

`whodb mcp serve` はプラットフォームツールを公開し、データベースモジュールを有効にするとデータベースへ直接 MCP 接続できます。MCP ツールでクエリとスキーマ確認ができ、プラットフォームへの書き込みにはプレビューと承認済みの確認が必要です。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/clidey/whodb --skill whodb

インストール後、Claude Code で/whodbを入力して読み込まれたか確認します。

詳細

WhoDB データベースアシスタント

データベース操作には WhoDB を利用できます。これらのツールとコマンドを使って、データベースに関するタスクを支援してください。

Platform MCP(デフォルト)

whodb mcp serve はホストされたプラットフォームツールを公開します。必要なホストごとに whodb login --host <url> でサインインしてください。まず whodb_platform_hosts で保存済みの ホストとアカウントを確認し、次に workspace: {host} を指定して whodb_platform_orgs を、workspace: {host, org} を指定して whodb_platform_projects を実行します。

whodb_platform_workspace_resolve で対象を特定します。UAT、本番環境、またはプロジェクトをまたいで作業する場合は、以降のツールに 明示的な workspace: {host, org, project} を指定してください。対象は並列呼び出しを含めて各呼び出しに適用され、 保存済みのデフォルトは変更されません。返された scope を確認してください。別のセッションのデフォルトを切り替えるために whodb use を実行しないでください。対象を省略した場合は、プロセスのオーバーライド、次に保存済みのデフォルトが使用されます。操作とペイロードについては whodb://platform/schema を参照してください。

書き込み操作は、ホスト、アカウント、組織、プロジェクトに紐づいたプレビューを返します。 そのプレビューの内容が承認された後にのみ確定してください。デフォルトを変更しても、保留中の確認先は変更されません。ホストで認証が必要な場合は whodb login --host <url> を実行するよう依頼してください。プロジェクトごとのログインは必要ありません。

ガイド付きセットアップ

このスキルは任意です。WhoDB MCP は独自の手順、ツールスキーマ、セットアップガイダンスを提供します。このスキルと異なる場合は、ライブ MCP ディスカバリーを優先してください。エントリーは 1 つだけにしてください。コマンドは whodb、引数は ["mcp", "serve"] です。

action: "inspect" を指定して whodb_mcp_setup を使用し、設定、対象、選択肢、設定スキーマを確認します。ユーザーの希望を尋ねた後、patch を指定して action: "preview" を実行します。提案された設定を提示し、返された confirmation_token と approved: true を指定して action: "apply" を実行する前に承認を得てください。apply と一緒にパッチを送信しないでください。トークンの有効期限は 5 分です。有効なのは最新のプレビューのみです。設定を変更した後は MCP を再起動し、その後 action: "verify" を実行してください。検証ではアクティブな設定を確認します。省略されたパッチフィールドは保持されます。

このフローにシェルアクセスは必要ありません。ブラウザーでのサインインと認証情報の入力はユーザーが行います。チャットで認証情報を尋ねないでください。セットアップツールが除外されている場合は、ユーザーに whodb setup を実行するよう依頼してください。CLI エージェントは代わりに whodb setup inspect、validate、apply --yes、verify を使用できます。 アクティブなモジュールと制限については whodb://mcp/configuration を確認してください。 プラットフォームの呼び出しでは workspace を、データベースの呼び出しでは connection を対象に指定します。

データベース専用 MCP

whodb setup でデータベースモジュールを有効にしてください。両方のモジュールを同じ whodb mcp serve 接続で実行できます。--database は高度なプロセスオーバーライドとして引き続き使用できます。 これは WhoDB プラットフォームサーバーを介さずにデータベースへ直接接続します。データベースは リモートに配置することもできます。ターミナル UI は whodb --tui で利用できます。

データベースツール

データベース専用 MCP が設定されている場合は、以下のツールを直接使用します。

whodb_connections

利用可能なすべてのデータベース接続を一覧表示します。

No parameters required.
Returns: List of connection names with type and source (env/saved).
whodb_query

データベースに対して SQL クエリを実行します。

Parameters:
- connection: Connection name (optional if only one connection exists)
- query: SQL query to execute

Example: whodb_query(connection="mydb", query="SELECT * FROM users LIMIT 10")
whodb_schemas

データベース内のすべてのスキーマを一覧表示します。

Parameters:
- connection: Connection name (optional if only one connection exists)
- include_tables: Set true to also return tables within each schema (optional)

Example: whodb_schemas(connection="mydb")
Example: whodb_schemas(connection="mydb", include_tables=true)
whodb_tables

スキーマ内のすべてのテーブルを一覧表示します。

Parameters:
- connection: Connection name (optional if only one connection exists)
- schema: Schema name (optional, uses default if not specified)
- include_columns: Set true to also return column details for every table (optional)

Example: whodb_tables(connection="mydb", schema="public")
Example: whodb_tables(connection="mydb", schema="public", include_columns=true)
whodb_columns

テーブルのカラムについて説明します。

Parameters:
- connection: Connection name (optional if only one connection exists)
- table: Table name (required)
- schema: Schema name (optional)

Example: whodb_columns(connection="mydb", table="users")

CLI コマンド(フォールバック)

MCP ツールを利用できない場合は、Bash 経由で CLI を直接使用します。

クエリの実行
whodb query "SELECT * FROM users LIMIT 10" --connection mydb --format json
スキーマの確認
# List schemas
whodb schemas --connection mydb --format json

# List tables
whodb tables --connection mydb --schema public --format json

# Describe columns
whodb columns --connection mydb --table users --format json
接続の管理
# List connections
whodb connections list --format json

# Test connection
whodb connections test mydb

# Add new connection (interactive)
whodb connections add --name mydb --type Postgres --host localhost --database mydb
データのエクスポート
# Export to CSV
whodb export --connection mydb --table users --output users.csv

# Export query results
whodb export --connection mydb --query "SELECT * FROM orders" --output orders.xlsx

ワークフローの例

新しいデータベースを調べる(効率的な方法)
  1. 接続を一覧表示します:whodb_connections
  2. 1 回の呼び出しでカラムとともにテーブルを取得します:whodb_tables(connection="name", include_columns=true)
  3. サンプルデータを取得します:whodb_query(connection="name", query="SELECT * FROM users LIMIT 5")

クエリ結果にはカラム名とともに column_types が含まれるため、別途呼び出さなくてもデータ型を確認できます。

新しいデータベースの調査(複数スキーマ)
  1. 接続を一覧表示します:whodb_connections
  2. テーブルを含むすべてのスキーマを取得します:whodb_schemas(connection="name", include_tables=true)
  3. 対象のスキーマの列を取得します:whodb_tables(connection="name", schema="public", include_columns=true)
  4. クエリを実行します:whodb_query(connection="name", query="SELECT * FROM users LIMIT 5")
データに関する質問への回答
  1. まずスキーマを把握します。テーブル構造を確認してください
  2. 適切なフィルターを使って、目的を絞ったクエリを作成します
  3. 調査用のクエリでは、必ずLIMITを使用します
  4. 結果をわかりやすく読みやすい形式で提示します

ベストプラクティス

  • クエリを作成する前に、必ずスキーマを調査してください
  • 調査用のクエリではLIMITを使用し、出力が多くなりすぎないようにしてください
  • *明確さを高めるため、SELECT よりも特定の列を指定してください
  • whodb_columnsで外部キーを確認し、関係を把握してください
  • 出力をプログラムで解析する場合は、JSON形式(--format json)を使用してください
  • 認証情報は絶対に公開しないでください。接続文字列ではなく、接続名を使用してください

コメント