ClickHouse MCP Server について
ClickHouse MCP Serverは、ClickHouseデータベースをLLMクライアントに接続し、自然言語でのデータ探索を可能にします。テーブル構造やサンプルデータのリソースと、読み取り専用SQLツールを提供します。
主な機能
- 01ClickHouseデータベース接続
- 02テーブル構造とサンプルのリソース
- 03読み取り専用SQLの実行
- 04自然言語でのデータクエリ
活用シーン
- 01データベースのテーブルと構造の確認
- 02ClickHouseデータについて質問
- 03読み取り専用の分析クエリ実行
MCP 対応
データベース情報、テーブル構造、サンプル行をMCPリソースとして公開し、読み取り専用SQLと自然言語クエリのツールを提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
インストール方法は未掲載です
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ツール一覧はまだ取得されていません
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
ClickHouse MCP サーバー
ClickHouse データベースに接続し、Claude などの LLM が自然言語クエリを通じてデータを探索、分析できるようにする Model Context Protocol(MCP)サーバーです。
特長
- ClickHouse データベースに接続
- テーブルスキーマをリソースとして公開
- 自然言語の指示から SQL クエリを実行
- 読み取り専用の SQL クエリを実行
- macOS の Claude Desktop で動作
デモ
https://github.com/user-attachments/assets/b496b9b0-5955-49d5-8c26-733f34662d8f
インストール
- このリポジトリをクローンします
- 依存関係をインストールします。
npm install
.envファイルで環境変数を設定します(.env.exampleを参考にしてください)。DDL および DML の実行を制限するため、読み取り専用のデータベースユーザーを使用してください- プロジェクトをビルドします。
npm run build
使用方法
サーバーをローカルで実行する
npm start
Claude Desktop との連携
-
Claude Desktop の設定ファイルを作成または更新します。
- macOS の場合:
~/Library/Application Support/Claude/claude_desktop_config.json
- macOS の場合:
-
サーバー設定を追加します。
{
"mcpServers": {
"clickhouse-analytics": {
"command": "node",
"args": [
"/absolute/path/to/clickhouse-mcp-server/dist/index.js"
],
"env": {
"CLICKHOUSE_URL": "your_clickhouse_url",
"CLICKHOUSE_USERNAME": "your_username",
"CLICKHOUSE_PASSWORD": "your_password",
"CLICKHOUSE_DATABASE": "your_database"
}
}
}
}
- Claude Desktop を再起動します
利用可能な機能
リソース
db://info- テーブルやスキーマなどのデータベース情報table://{tableName}/schema- 特定のテーブルのスキーマtable://{tableName}/sample- 特定のテーブルのサンプルデータ(5 行)
ツール
execute-sql- データベースに対して読み取り専用の SQL クエリを実行natural-language-query- データについて自然言語で質問
セキュリティに関する考慮事項
- このサーバーでは読み取り専用の SQL クエリのみ実行できます
- 機密性の高い認証情報は環境変数に安全に保存してください
- このサーバーは、DDL または DML ステートメントの実行を防ぐため、基本的な検証を行います
- クエリの実行前に、必ずリクエストを確認してください
ライセンス
MIT
コメント
Markdown 対応
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。