mcpField
D
db-view-mcp

db-view-mcp

ローカル
github.com/conte777データベース012 週間前に更新

db-view-mcp について

db-view-mcpは、AIアシスタントからPostgreSQLやClickHouseにアクセスするためのMCPサーバーです。クエリ、スキーマ、分析ツールを備え、stdioとHTTPに対応し、読み取り専用操作にはSQL検証を適用します。

主な機能

  1. 01複数のPostgreSQLとClickHouseへの接続
  2. 02SQLの読み取りと書き込み
  3. 03スキーマ確認とDDL出力
  4. 04クエリ分析とスロークエリ追跡
  5. 05stdioまたはHTTPトランスポート

活用シーン

  1. 01IDE連携アシスタントからデータベースを検索する
  2. 02HTTPでリモートデータベースアクセスを提供する
  3. 03検索前にテーブルや列を確認する
  4. 04クエリプランとスロークエリを調査する

MCP 対応

MCPサーバーは、データベース検索、スキーマ確認、クエリ分析ツールをMCPクライアントに公開します。stdioとHTTPに対応し、HTTPではBearer認証を任意で設定できます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"db-view": {
"command": "npx",
"args": [
"-y",
"@conte777/db-view-mcp"
]
}
}
}
起動コマンドnpx -y @conte777/db-view-mcp

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@conte777/db-view-mcp

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

db-view-mcp

npm CI

AI アシスタントが PostgreSQL と ClickHouse のデータベースに直接アクセスできる MCP サーバーです。 ローカルの IDE 連携やリモートネットワークアクセス向けに、stdio と HTTP の両方のトランスポートに 対応しています。

機能

  • マルチデータベース — PostgreSQL と ClickHouse の任意の数のインスタンスに同時に接続できます
  • デュアルトランスポート — IDE 連携(Cursor、Claude Code)には stdio、リモート/複数クライアントアクセスには HTTP を使用します
  • 読み取り・書き込みツール — 行数制限付きの SELECT、INSERT/UPDATE/DELETE、DDL、トランザクション
  • スキーマのイントロスペクション — テーブルの一覧表示、カラムの説明、DDL 全体のエクスポート
  • クエリ分析 — EXPLAIN / EXPLAIN ANALYZE、低速クエリの追跡
  • SQL の安全性 — 読み取り専用ツールが SQL を検証し、誤った書き込みをブロックします
  • 柔軟なツールモード — database パラメーターを持つ単一のツール、またはデータベースごとに個別のツール
  • 遅延接続 — デフォルトでは、初回使用時にデータベースへ接続します
  • Bearer 認証 — HTTP トランスポートで任意のトークン認証を使用できます
  • セッション管理 — ステートフル(セッションごとの MCP サーバー)またはステートレス HTTP モード

インストール

npm install @conte777/db-view-mcp

または、ソースをクローンしてビルドします。

git clone <repo-url>
cd db-view-mcp
npm install
npm run build

クイックスタート

1. 設定

サンプル設定をコピーして編集します。

cp config.example.json config.json

最小限の stdio 設定:

{
  "databases": [
    {
      "id": "main_pg",
      "type": "postgresql",
      "host": "localhost",
      "port": 5432,
      "database": "myapp",
      "user": "admin",
      "password": "secret123"
    }
  ]
}

すべてのフィールド、デフォルト値、および設定の完全なリファレンス(SSL/TLS、データベースごとのオーバーライド、環境変数の置換、HTTP トランスポート)については、docs/configuration.md を参照してください。

2. 実行
# Stdio (default)
npm start -- --config config.json

# HTTP (set transport.type to "http" in config, or override on the CLI)
npm start -- --config config.json --transport http

# Development (no build needed)
npm run dev -- --config config.json
3. MCP クライアントを追加

Claude Desktop(claude_desktop_config.json)または Claude Code(.mcp.json)、stdio:

{
  "mcpServers": {
    "database": {
      "command": "npx",
      "args": ["-y", "@conte777/db-view-mcp", "--config", "/path/to/config.json"]
    }
  }
}

任意の MCP クライアント、HTTP:

node dist/index.js --config config.json --transport http
# Server listens on http://127.0.0.1:3000/mcp

セッション、認証、curl の例については、docs/http-transport.md を参照してください。

ドキュメント

ドキュメント内容
docs/configuration.mdすべての設定フィールド、デフォルト値、SSL/TLS、rowFormat、環境変数の置換、ホットリロード
docs/tools.md9 つのツール:パラメーター、出力、例、エラーコード、データベースごとのモード
docs/http-transport.mdstdio と HTTP の比較、セッション、Bearer 認証、/health、curl
docs/security.md読み取り専用 SQL バリデーター、拒否リスト、レスポンス上限、ネットワークへの公開
docs/architecture.mdソースツリー、レイヤー、コネクターモデル、ライフサイクル(ホットリロード、シャットダウン)
CONTRIBUTING.mdビルド、テスト、Lint、フック、CI

ClickHouse の制限事項

  • トランザクションはサポートされていません(transaction begin は例外をスローします)。
  • クエリの params は無視されます。SQL では ClickHouse のネイティブな {name:Type} 構文を使用してください。

開発

ビルド/テスト/Lint コマンド、カバレッジのしきい値、Git フック、CI については、CONTRIBUTING.md を参照してください。

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。