🎯 この記事で得られること
この記事を読むと、Claude for DesktopのWebコネクタ機能を使って、Databricks公式のMCP Serverに接続する方法が完璧に理解できます!
✨ 実現できること:
Claude for Desktopから、自然言語だけでDatabricksの強力な機能を操作できるようになります。具体的には以下の4つの公式MCP Serverが利用可能です:
- Unity Catalog関数サーバー 📊 - カタログに登録されたPython/SQL関数を自然言語で実行
- ベクトル検索サーバー 🔍 - セマンティック検索で関連情報を高精度に取得
- Genieスペースサーバー 🤖 - 自然言語でデータ分析、グラフ生成、洞察の抽出
- SQLサーバー 💾 - SQLクエリの実行とデータベース操作
これらすべてが「先月の売上TOP5を教えて」のような会話だけで実行できます!
💡 こんな人におすすめ:
- Databricks公式のManaged MCP Serverを使いたい方
- GUIで簡単に設定したい方(JSONファイル編集不要!)
- ローカルに追加ソフトをインストールしたくない方
- Unity CatalogやGenie、ベクトル検索などDatabricksの高度な機能を活用したい方
- セキュアなOAuth認証で企業環境で安心して使いたい方
⏰ 所要時間: 30分〜1時間(従来の方法より大幅に短縮!)
🎓 難易度: 初級(GUI操作だけで完結します)
🌐 Databricks ワークスペースURL形式とWebコネクタ対応状況
| クラウド | ワークスペースURL | Claude for Desktop Webコネクタ対応 |
|---|---|---|
| Azure | https://adb-[ワークスペースID].azuredatabricks.net |
❌ 非対応 |
| AWS | https://adb-[ワークスペースID].cloud.databricks.com |
✅ 対応 |
| GCP | https://adb-[ワークスペースID].gcp.databricks.com |
❌ 非対応 |
📚 目次
- 🎨 Webコネクタとは
- 📊 Databricks Managed MCP Serverの4つの種類
- 🔐 OAuth認証の基礎知識
- 🎒 事前準備
- 🎯 ステップ1:サービスプリンシパルの作成
- ⚙️ ステップ2:権限の設定
- 🔑 ステップ3:OAuthシークレットの生成
- 💻 ステップ4:WebコネクタでDatabricksを追加
- 🔬 ステップ5:動作確認
- 🔧 トラブルシューティング
- 🎭 実践的な使い方
- 🛡️ セキュリティのベストプラクティス
- 🎉 まとめ
🆕 Webコネクタとは?従来の方法との違い
Webコネクタの革新性
Webコネクタは、Claude for Desktopに2025年から標準搭載された新機能です。従来の設定方法と比べて、圧倒的に簡単になりました! 🎉
📊 従来の方法との比較
| 項目 | 従来の方法 ❌ | Webコネクタ ✅ |
|---|---|---|
| 設定方法 | JSONファイルを直接編集 | GUI画面で入力するだけ |
| 技術知識 | JSON構文、パス、環境変数の理解が必要 | 不要!コピー&ペーストだけ |
| ソフトインストール | Python、uvなど追加インストール必要 | 不要!Claude DesktopだけでOK |
| トラブル発生率 | 高い(パス、構文ミスなど) | 低い(入力項目が明確) |
| 設定時間 | 2-3時間 | 30分〜1時間 |
| 使用するサーバー | コミュニティ版(非公式) | Databricks公式Managed版 |
| メンテナンス | 自分で更新が必要 | Databricks側で自動管理 |
🎯 つまり: Webコネクタなら、プログラミング初心者でも迷わず設定できます!
🌟 Webコネクタのメリット
1. 圧倒的な簡単さ 📝
- JSON編集不要
- パスの指定不要
- インストール作業不要
2. 公式サポート 🏢
- Databricksが提供する純正サーバー
- 安定性と信頼性が高い
- 最新機能がすぐに使える
3. セキュリティ 🔒
- OAuth標準認証
- Databricks側で管理
- 企業環境でも安心
4. 高機能 ⚡
- Unity Catalog完全対応
- Genie統合
- ベクトル検索対応
🎯 Databricks Managed MCP Serverの4つの種類
Databricks公式は、用途に応じて4種類のManaged MCP Serverを提供しています。それぞれの特徴を理解しましょう! 📚
1️⃣ Unity Catalog関数サーバー 📊
できること:
Unity Catalogに登録されたPython関数やSQL関数を、自然言語で実行できます。
エンドポイント形式:
https://<workspace-url>/api/2.0/mcp/functions/{catalog}/{schema}
使用例:
「calculate_revenue関数を実行して、2024年の総売上を計算してください」
Claudeが自動的に:
1. main.defaultスキーマのcalculate_revenue関数を検索
2. 必要なパラメータを判断
3. 関数を実行
4. 結果を整形して表示
おすすめ用途:
- カスタム計算ロジックの実行
- データ変換処理
- ビジネスルールの適用
2️⃣ ベクトル検索サーバー 🔍
できること:
ベクトル検索インデックスを使用して、セマンティック(意味ベース)検索ができます。
エンドポイント形式:
https://<workspace-url>/api/2.0/mcp/vector-search/{catalog}/{schema}
使用例:
「"顧客満足度向上"に関連するドキュメントを検索してください」
Claudeが自動的に:
1. クエリをベクトル化
2. 意味的に類似したドキュメントを検索
3. 関連度の高い順にランキング
4. 結果を要約して提示
おすすめ用途:
- ナレッジベース検索
- 類似ドキュメント発見
- FAQ自動応答
- コンテンツ推薦
3️⃣ Genieスペースサーバー 🤖
できること:
Databricks Genieを使って、自然言語でデータ分析、可視化、洞察の抽出ができます。
エンドポイント形式:
https://<workspace-url>/api/2.0/mcp/genie/{genie_space_id}
使用例:
「2024年Q4の地域別売上トレンドを分析して、グラフで見せてください」
Claudeが自動的に:
1. Genieスペースにクエリを送信
2. データを分析
3. 適切な可視化を生成
4. トレンドと洞察を説明
おすすめ用途:
- アドホック分析
- ダッシュボード作成
- データドリブンな意思決定
- レポート自動生成
4️⃣ SQLサーバー 💾
できること:
SQLウェアハウスに対して、SQLクエリを直接実行できます。
エンドポイント形式:
https://<workspace-url>/api/2.0/mcp/dbsql/{warehouse_id}
使用例:
「sales_dataテーブルから先月の売上トップ10の商品を取得してください」
Claudeが自動的に:
1. 適切なSQLクエリを生成
2. SQLウェアハウスで実行
3. 結果を取得
4. 読みやすい形式で表示
おすすめ用途:
- データ抽出
- 集計レポート
- データ品質チェック
- ETL処理の確認
🎯 どれを選ぶべき?
最初に設定するなら:
- SQLサーバー - 最も汎用的で、すぐに使える
- Genieスペースサーバー - データ分析が主な目的なら
高度な用途なら:
- Unity Catalog関数サーバー - カスタムロジックを実行したい
- ベクトル検索サーバー - ドキュメント検索やRAGアプリを構築したい
💡 ヒント: 複数のサーバーを同時に登録できます!用途に応じて使い分けましょう。
🔐 OAuth認証の基礎知識
WebコネクタではOAuth M2M(Machine-to-Machine)認証を使用します。初めての方のために、基本から説明します 📚
OAuthって何?
**OAuth(オース)**は、パスワードを共有せずにアプリにアクセス権を与える業界標準の認証方式です。
🏨 ホテルのカードキーで例えると:
従来の方法(パスワード共有):
- マスターキーを第三者に渡す → 全部屋に入れてしまう 😱
- 紛失したら全館のカギ交換が必要
- 誰がいつ入室したか追跡困難
OAuth方式:
- 特定の部屋だけのカードキーを発行 → 必要な場所だけアクセス ✅
- 期限付きで自動的に無効化 → セキュリティが高い
- 紛失しても該当カードだけ無効化すればOK
OAuth M2M(Machine-to-Machine)
M2M認証は、人間の介入なしにアプリケーション同士が自動的に認証する方式です。
🤖 工場の自動化システムで例えると:
通常のOAuth(ユーザー認証):
1. ユーザーがログイン
2. パスワード入力
3. 2段階認証
4. ブラウザでアクセス許可
→ 人間の操作が必要
OAuth M2M(アプリ認証):
1. クライアントIDとシークレットを提示
2. 自動的にトークンを取得
3. アプリが勝手に動作
→ 完全自動!人間不要!
認証の流れ
Webコネクタを使うと、以下の流れで認証されます:
1. Claude Desktop起動
↓
2. クライアントIDとシークレットを使用
↓
3. Databricksに認証リクエスト
↓
4. アクセストークン取得(有効期限1時間)
↓
5. トークンを使ってMCP Serverにアクセス
↓
6. トークン期限切れ前に自動更新
🎯 重要なポイント:
- アクセストークンは1時間で自動的に期限切れ
- 自動更新されるので、ユーザーは何もしなくてOK
- 万が一漏洩しても被害は最小限
なぜOAuthが安全なのか
セキュリティの3原則:
1. 分離の原則 🔒
- クライアントシークレット ≠ パスワード
- 漏洩してもアカウント全体は守られる
2. 最小権限の原則 ⚖️
- 必要な権限だけを付与
- 不要なアクセスは完全にブロック
3. 時限性の原則 ⏰
- トークンは1時間で期限切れ
- 長期間の不正使用を防止
🎒 事前準備
設定を始める前に、必要なものを確認しましょう 📋
✅ 必要なもの
Databricks側
- Databricksワークスペースへのアクセス権限
- ワークスペース管理者権限(サービスプリンシパル作成用)
-
ワークスペースURL(例:
https://xxxxx.cloud.databricks.com)
ローカル環境
-
Claude for Desktop(最新版) ← これだけでOK!
- Windows、macOS、またはLinux対応
- バージョン0.7.0以降(Webコネクタ対応版)
事前知識
- 基本的なコピー&ペースト操作
- ブラウザの基本操作
🎉 それだけです! 従来の方法と違って、PythonやNode.jsのインストールは不要です!
🔍 Claude for Desktopのバージョン確認
Webコネクタ機能が使えるか確認しましょう:
Claude for Desktopを起動
↓
メニューバーから「ヘルプ」→「このアプリ について」
↓
バージョン番号を確認
✅ 0.13.108以降 → Webコネクタが使えます!
❌ 0.13.108以前 → アップデートしてください
🎯 ステップ1:サービスプリンシパルの作成
それでは、実際の設定を始めましょう!まずは、Databricks側で専用のIDを作成します 🚀
サービスプリンシパルとは?
サービスプリンシパルは、アプリケーション専用のユーザーIDです。
🤖 ロボット店員で例えると:
-
人間の店員(通常のユーザーアカウント)
- 名前:田中太郎
- ログインして作業
- 休暇、退職がある
-
ロボット店員(サービスプリンシパル)
- 名前:MCP-Server-Robot
- 自動で24時間365日稼働
- ログイン画面は使えない(API経由のみ)
📝 作成手順
方法A:ワークスペース管理画面から(推奨)
1. サービスプリンシパル管理画面を開く
Databricksワークスペースにログイン
↓
右上のユーザー名をクリック
↓
「設定」を選択
↓
「IDとアクセス」タブをクリック
↓
「サービスプリンシパル」の横にある「管理」をクリック
2. 新しいサービスプリンシパルを作成
「サービスプリンシパルを追加」ボタンをクリック
↓
検索ボックスの右側にあるドロップダウン矢印をクリック
↓
「新規追加」を選択
↓
わかりやすい名前を入力
例:claude-mcp-production
例:mcp-server-genie
例:databricks-mcp-sql
↓
「追加」ボタンをクリック
💡 命名のベストプラクティス:
| 名前の例 | 用途 | おすすめ度 |
|---|---|---|
claude-mcp-prod |
本番環境用 | ⭐⭐⭐⭐⭐ |
mcp-dev-2025 |
開発環境用 | ⭐⭐⭐⭐⭐ |
service-principal |
汎用的すぎる | ⭐ |
test |
用途不明 | ❌ |
3. 作成完了の確認
画面が自動的にサービスプリンシパルの詳細ページに移動します。
✅ 確認ポイント:
- サービスプリンシパルのApplication IDが表示される
- 「設定」「権限」「シークレット」タブが表示される
- 上部に設定した名前が表示される
📝 Application ID(クライアントID)をメモ!
Application IDは後で使用するので、今のうちにコピーしておきましょう:
Application ID: abcd1234-5678-90ef-ghij-klmnopqrstuv
このIDは、画面上部またはサービスプリンシパルの詳細に表示されています。
⚙️ ステップ2:権限の設定
作成したサービスプリンシパルに、必要な権限を付与します。どのMCP Serverを使うかによって設定が変わるので、丁寧に進めましょう 💪
📋 権限設定の全体像
権限は3つの層で設定します:
1. エンタイトルメント(基本権限)
↓
2. MCP Server種別ごとの必要権限
↓
3. データ・リソースへのアクセス権
1️⃣ エンタイトルメントの設定(全員必須)
エンタイトルメントは、Databricksで何ができるかを決める基本権限です。
🎯 設定手順:
サービスプリンシパルの詳細ページを開く
↓
「設定」タブをクリック
↓
以下の項目にチェック:
✅ 必須の設定:
- ☑ ワークスペースアクセス - これがないと何もできません!
✅ 使用するMCP Serverに応じて:
- ☑ Databricks SQLアクセス - SQLサーバー使用時に必要
設定後、「更新」ボタンをクリック
2️⃣ MCP Server種別ごとの権限設定
使用したいMCP Serverに応じて、異なる権限が必要です。
🔷 SQLサーバーを使う場合
必要な権限:
- SQLウェアハウスへのアクセス権
サイドバーから「SQLウェアハウス」を選択
↓
使用するウェアハウスを選択
↓
「権限」タブをクリック
↓
「ユーザーとグループを追加」をクリック
↓
サービスプリンシパル名を検索
↓
権限レベル:「使用可能」を選択
↓
「追加」をクリック
- Unity Catalogへのアクセス権
-- カタログへのアクセス
GRANT USE CATALOG ON CATALOG main TO `service-principal-id@email`;
-- スキーマへのアクセス
GRANT USE SCHEMA ON SCHEMA main.default TO `service-principal-id@email`;
-- テーブルの読み取り
GRANT SELECT ON TABLE main.default.* TO `service-principal-id@email`;
💡 GUI から設定する方法:
「カタログ」→ 対象のカタログ/スキーマ/テーブルを選択
↓
「権限」タブをクリック
↓
「権限を付与」ボタン
↓
サービスプリンシパルを選択
↓
☑ USE CATALOG / USE SCHEMA
☑ SELECT(読み取り)
↓
「権限を付与」をクリック
🔷 Unity Catalog関数サーバーを使う場合
必要な権限:
-- カタログとスキーマへのアクセス
GRANT USE CATALOG ON CATALOG main TO `service-principal-id@email`;
GRANT USE SCHEMA ON SCHEMA main.default TO `service-principal-id@email`;
-- 関数の実行権限
GRANT EXECUTE ON FUNCTION main.default.your_function TO `service-principal-id@email`;
-- または、スキーマ内の全関数に対して
GRANT EXECUTE ON SCHEMA main.default TO `service-principal-id@email`;
📝 どの関数を使うか決まっていない場合:
スキーマレベルでEXECUTE権限を付与しておくと便利です。
🔷 ベクトル検索サーバーを使う場合
必要な権限:
-- カタログとスキーマへのアクセス
GRANT USE CATALOG ON CATALOG main TO `service-principal-id@email`;
GRANT USE SCHEMA ON SCHEMA main.default TO `service-principal-id@email`;
-- ベクトル検索インデックスへのアクセス
GRANT READ ON VECTOR SEARCH INDEX main.default.your_index TO `service-principal-id@email`;
🔍 ベクトル検索インデックスの確認方法:
サイドバーから「Compute」→「Vector Search」
↓
利用可能なインデックス一覧が表示される
↓
使用するインデックスを確認
🔷 Genieスペースサーバーを使う場合
必要な権限:
Genieスペースへのアクセス権限が必要です。
サイドバーから「Genie」を選択
↓
使用したいGenieスペースを選択
↓
「設定」または「共有」ボタンをクリック
↓
サービスプリンシパルを追加
↓
権限:「使用可能」または「編集可能」を選択
💡 Genieスペースがない場合:
先にGenieスペースを作成する必要があります。Genieスペースは、特定のデータセットに対する自然言語分析環境です。
✅ 権限設定の確認チェックリスト
設定が完了したら、使用するMCP Serverに応じて確認しましょう:
SQLサーバー用:
- ワークスペースアクセスが有効
- Databricks SQLアクセスが有効
- SQLウェアハウスに「使用可能」権限
- Unity Catalogのカタログ/スキーマにUSE権限
- テーブルにSELECT権限
Unity Catalog関数サーバー用:
- ワークスペースアクセスが有効
- カタログ/スキーマにUSE権限
- 関数にEXECUTE権限
ベクトル検索サーバー用:
- ワークスペースアクセスが有効
- カタログ/スキーマにUSE権限
- ベクトル検索インデックスにREAD権限
Genieスペースサーバー用:
- ワークスペースアクセスが有効
- Genieスペースへのアクセス権
🎉 権限設定はこれで完了です!次はOAuthシークレットの生成に進みます。
🔑 ステップ3:OAuthシークレットの生成
ここが最も重要なステップです!シークレットは一度しか表示されないので、慎重に進めましょう 🔒
⚠️ 作業前の重要な準備
シークレットを生成する前に、以下を用意してください:
✅ 準備するもの:
- メモ帳アプリ(テキストエディタ)
- 落ち着いて作業できる環境
- 5-10分の集中できる時間
🚨 絶対に守ってください:
- シークレットはスクリーンショットを撮らない
- メールやチャットで送信しない
- 他の人に見せない
- 後で必ず使うので、確実に保存する
📝 シークレット生成の手順
1. シークレット生成画面を開く
サービスプリンシパルの詳細ページを開く
↓
「シークレット」タブをクリック
↓
「OAuthシークレット」セクションを見つける
↓
「シークレットを生成」ボタンをクリック
2. 有効期限を設定
ダイアログが表示されるので、有効期限を設定します:
有効期間を日数で入力(1〜730日)
🎯 推奨される期限設定:
| 環境 | 推奨期限 | 理由 |
|---|---|---|
| 個人学習 | 30日 | 短期間の実験用 |
| 開発環境 | 90日 | 定期的なメンテナンス |
| 本番環境 | 180日 | 安定性とセキュリティのバランス |
💡 ベストプラクティス:
- 最大の730日(2年)は避けましょう
- 90〜180日で設定し、カレンダーに更新リマインダーを設定
- 期限切れの2週間前に通知が来るように設定
期限を入力したら「生成」ボタンをクリック
3. 認証情報を安全に保存(超重要!)
画面に以下の2つの情報が表示されます:
1. クライアントID(Application ID)
例:abcd1234-5678-90ef-ghij-klmnopqrstuv
2. シークレット(Secret)
例:dapi1234567890abcdefghijklmnopqrstuvwxyz
⚠️ 超重要: 「完了」をクリックすると、シークレットは二度と表示されません!必ず保存を確認してください。
⚡ 今すぐ以下の作業を実施:
ステップ1: メモ帳を開く(Windows)またはテキストエディットを開く(Mac)
ステップ2: 以下の形式でコピー&ペースト
=== Databricks MCP Server 認証情報 ===
作成日: 2025-01-20
有効期限: 2025-07-20(180日後)
ワークスペースURL: https://your-workspace.cloud.databricks.com
クライアントID:
abcd1234-5678-90ef-ghij-klmnopqrstuv
クライアントシークレット:
dapi1234567890abcdefghijklmnopqrstuvwxyz
サービスプリンシパル名: claude-mcp-prod
使用予定のMCP Server: SQL Server, Genie Space
🎓 よくある質問
Q: シークレットをコピーし忘れました!
A: 大丈夫です 😊 新しいシークレットを生成し直せます。
同じサービスプリンシパルで再度「シークレットを生成」
↓
新しいシークレットが発行される
↓
複数のシークレットを同時に持つことも可能(最大5つ)
Q: 古いシークレットはどうなりますか?
A: 古いシークレットも有効期限まで使用できます。移行期間を設けたい場合に便利です。
Q: シークレットを削除できますか?
A: はい、「シークレット」タブから削除できます。削除すると即座に無効化されます。
🎉 OAuthシークレットの生成が完了しました!これで認証に必要な情報が揃いました。次はいよいよClaude DesktopのWebコネクタ設定です!
💻 ステップ4:WebコネクタでDatabricksを追加
お待たせしました!ここからがWebコネクタの真骨頂です。GUIだけで簡単に設定できます 🚀
🎯 Webコネクタ設定の全体の流れ
1. Claudeのコネクタ管理画面を開く
↓
2. Databricksを選択
↓
3. 必要な情報を入力(コピペするだけ!)
↓
4. 接続完了!
たったこれだけです!JSON編集は一切不要です 🎉
📝 詳細な設定手順
1️⃣ コネクタ管理画面を開く
Claude for Desktopを起動
Windowsの場合:
スタートメニュー → Claude for Desktop
macOSの場合:
アプリケーション → Claude
すると、「コネクタ」という画面が表示されます。
画面には2つのタブがあります:
- Web - リモートサーバー(今回はこちら!)
- デスクトップ拡張機能 - ローカルサーバー
2️⃣ Databricksコネクタを追加
Databricksの「+」ボタンをクリック
Databricksのカードの右側に「+」ボタンがあります。これをクリックしてください!
3️⃣ インストール画面で情報を入力
クリックすると、「インストール - Databricks」という画面が表示されます。
画面には以下の入力フィールドがあります:
📝 インストール - Databricks
Databricksをインストールするには、そのサイトから追加情報が必要です
1. DatabricksからサーバーURLを取得
[databricks.com ↗]
2. サーバーURLをここに貼り付けてください
[___________________________]
3. DatabricksからOAuth クライアントIDを取得
[↗]
4. OAuth クライアントIDをここに貼り付けてください
[___________________________]
5. DatabricksからOAuth クライアントシークレットを取得
[↗]
6. OAuth クライアントシークレットをここに貼り付けてください
[___________________________]
[キャンセル] [続ける]
ステップ1:サーバーURLの入力
保存しておいたワークスペースURLを入力します:
例:https://dbc-12345678-abcd.cloud.databricks.com
💡 重要な注意点:
-
https://を含める - 末尾に
/や/apiなどは付けない - ワークスペースのトップURLそのままを入力
ステップ2:OAuth クライアントIDの入力
保存しておいたクライアントID(Application ID)を入力します:
例:abcd1234-5678-90ef-ghij-klmnopqrstuv
💡 確認ポイント:
- 36文字のUUID形式(ハイフン含む)
- 先頭や末尾に空白が入っていないか確認
ステップ3:OAuth クライアントシークレットの入力
保存しておいたクライアントシークレットを入力します:
例:dapi1234567890abcdefghijklmnopqrstuvwxyz
💡 確認ポイント:
-
dapiで始まる文字列 - 40文字程度の英数字
- 先頭や末尾に空白が入っていないか確認
4️⃣ 接続を確立
すべての情報を入力したら:
「続ける」ボタンをクリック
⏰ 処理中: 数秒間、「接続中...」と表示されます。
✅ 成功すると:
- 画面が自動的にコネクタ一覧に戻ります
- Databricksのカードに ✓(チェックマーク)が表示されます
- 「接続済み」のステータスが表示されます
🎉 おめでとうございます!接続完了です!
✅ 設定完了チェックリスト
以下すべてにチェックが入れば、設定は完璧です!
- Claudeのコネクタ管理画面を開けた
- Databricksコネクタを見つけられた
- サーバーURLを正しく入力した
- クライアントIDを正しく入力した
- クライアントシークレットを正しく入力した
- 「続ける」ボタンをクリックした
- Databricksカードに✓マークが表示されている
- (オプション)追加のMCP Serverエンドポイントを設定した
🎊 完璧です! 次は実際に動作確認をしましょう!
🔬 ステップ5:動作確認
設定が完了したので、実際に動作するか確認しましょう! 🧪
1️⃣ 新しい会話を開始
Claude for Desktopで新しいチャットを開く
画面左上の「+新しいチャット」をクリック
または
ショートカットキー:Ctrl + N(Windows)/ Cmd + N(Mac)
2️⃣ MCP Server接続の確認
新しいチャット画面を開いたら、まず視覚的に接続を確認します 👀
ハンマーアイコンを探す
画面下部のメッセージ入力ボックスを見る
↓
右下隅に注目
↓
🔨 ハンマー(ツール)アイコンが表示されている?
✅ アイコンが見える → MCP Server接続成功! 🎉
❌ アイコンが見えない → トラブルシューティングへ 👇
利用可能なツールを確認
ハンマーアイコンをクリックすると、利用可能なツールが表示されます:
SQLサーバーを設定した場合:
-
execute_sql- SQLクエリ実行 -
list_tables- テーブル一覧 -
describe_table- テーブル構造確認
Unity Catalog関数サーバーを設定した場合:
-
list_functions- 関数一覧 -
execute_function- 関数実行 -
describe_function- 関数の詳細取得
ベクトル検索サーバーを設定した場合:
-
vector_search- ベクトル検索実行 -
list_indexes- インデックス一覧
Genieスペースサーバーを設定した場合:
-
ask_genie- Genieに質問 -
get_conversation- 会話履歴取得
3️⃣ 実際にテストクエリを実行
それでは、実際にClaudeに質問してみましょう! 🗣️
テスト1:基本的なクエリ(全MCP Server共通)
まず、接続確認として簡単な質問をします:
Databricksに接続できていますか?利用可能なツールを教えてください。
期待される動作:
Claudeが以下のように応答します:
はい、Databricksに接続できています!✅
現在利用可能なツールは以下の通りです:
1. execute_sql - SQLクエリを実行
2. list_tables - データベース内のテーブル一覧を取得
3. describe_table - テーブルの構造を確認
[その他のツールも表示される]
どのような操作を行いたいですか?
テスト2:SQLサーバーのテスト
SQLサーバーを設定した場合、簡単なクエリを実行してみましょう:
以下のSQLクエリを実行してください:
SELECT current_date() AS today, current_timestamp() AS now
期待される動作:
- Claudeが「ツールを使用してもよいですか?」と確認してくる
- 「許可」をクリック
-
execute_sqlツールが実行される - 結果がテーブル形式で表示される
表示例:
クエリを実行しました:
| today | now |
|------------|-------------------------|
| 2025-01-20 | 2025-01-20 14:30:45.123 |
現在の日付と時刻が正常に取得できました。
テスト3:Unity Catalogへのアクセス
カタログ構造を確認してみましょう:
Unity Catalogのカタログ一覧を表示してください
期待される動作:
Unity Catalogのカタログ一覧を取得しました:
📁 main(本番データ)
├─ 📂 default(デフォルトスキーマ)
├─ 📂 analytics(分析用)
└─ 📂 raw_data(生データ)
📁 samples(サンプルデータ)
└─ 📂 nyctaxi(NYCタクシーデータ)
どのカタログについて詳しく知りたいですか?
テスト4:Genieスペースの使用(設定した場合)
Genieに分析を依頼してみましょう:
Genieスペースを使って、先月の売上トレンドを分析してください
期待される動作:
Genieスペースで分析を実行しています...
【先月の売上トレンド分析結果】
📊 主な発見:
1. 売上は月初から緩やかに増加
2. 第3週に急激なピークを記録(イベント効果)
3. 月末に向けて安定的に推移
💡 洞察:
- 前月比15%増加
- 製品カテゴリAが全体の40%を占める
- 地域別では関東エリアが最も好調
[グラフが表示される]
さらに詳しい分析が必要ですか?
✅ 動作確認チェックリスト
すべて確認できたら成功です! 🎊
- ハンマーアイコンが表示される
- ツールリストにDatabricksツールが表示される
- Claudeがツールの使用許可を求めてくる
- ツールが正常に実行される
- 結果が適切に表示される
- エラーメッセージが表示されない
🎉 おめでとうございます!セットアップ完了です! 🎉
🔧 トラブルシューティング
動作確認でうまくいかなかった場合の解決方法を紹介します 💪
🚨 エラー1:ハンマーアイコンが表示されない
Webコネクタが正しく設定されていない可能性があります。
確認1:コネクタの接続状態を確認
Claude for Desktopの設定を開く
↓
「コネクタ」をクリック
↓
Databricksカードを確認:
✓マークが表示されている?
「接続済み」と表示されている?
❌ 接続されていない場合:
Databricksカードの「再接続」ボタンをクリック
↓
認証情報を再度入力
↓
接続を再試行
確認2:Claude for Desktopを再起動
Claude for Desktopを完全に終了
Windows: Alt + F4 または タスクトレイから終了
macOS: Cmd + Q
↓
システムトレイにClaudeが残っていないか確認
↓
Claude for Desktopを再起動
確認3:入力した情報が正しいか確認
サーバーURL:
✅ 正しい形式:
https://dbc-12345678-abcd.cloud.databricks.com
❌ 間違った形式:
https://dbc-12345678-abcd.cloud.databricks.com/ ← 末尾の / は不要
https://dbc-12345678-abcd.cloud.databricks.com/api ← /api は不要
dbc-12345678-abcd.cloud.databricks.com ← https:// が必要
クライアントID:
✅ 正しい形式:
abcd1234-5678-90ef-ghij-klmnopqrstuv
(36文字、ハイフン含むUUID形式)
❌ 間違い:
- 先頭や末尾に空白がある
- コピーミスで文字が欠けている
クライアントシークレット:
✅ 正しい形式:
dapi1234567890abcdefghijklmnopqrstuvwxyz
(dapiで始まる40文字程度の文字列)
❌ 間違い:
- 先頭や末尾に空白がある
- コピーミスで文字が欠けている
🚨 エラー2:「接続に失敗しました」と表示される
認証情報またはネットワークの問題が考えられます。
原因A:認証情報が無効
確認方法:
Databricksワークスペースにログイン
↓
サービスプリンシパルの詳細ページを開く
↓
「シークレット」タブを確認:
生成したシークレットが表示されている?
有効期限が切れていない?
対処法:
期限切れまたは削除されている場合:
1. 新しいOAuthシークレットを生成
2. Claude for Desktopで認証情報を更新
3. 接続を再試行
原因B:ワークスペースURLが間違っている
確認方法:
ブラウザでワークスペースURLを開く
↓
Databricksのログイン画面が表示される?
✅ ログイン画面が表示される → URLは正しい
❌ エラーページが表示される → URLを修正
対処法:
Databricksワークスペースにログイン
↓
ブラウザのアドレスバーからURLをコピー
例:https://dbc-12345678-abcd.cloud.databricks.com/workspace
↓
/workspace 以降を削除
正しいURL:https://dbc-12345678-abcd.cloud.databricks.com
↓
Claude for Desktopで再設定
原因C:ネットワーク接続の問題
確認方法:
# コマンドプロンプト(Windows)またはターミナル(Mac)で実行
ping your-workspace.cloud.databricks.com
応答があれば接続できています。
対処法:
- ファイアウォール設定を確認
- VPN接続を確認(企業環境の場合)
- インターネット接続を確認
🚨 エラー3:「Permission denied」権限エラー
ツールは実行されるが、権限エラーが出る場合。
原因:必要な権限が不足
確認手順:
Databricksワークスペースにログイン
↓
サービスプリンシパルの詳細ページを開く
↓
「設定」タブで確認:
☑ ワークスペースアクセス
☑ Databricks SQLアクセス(SQL使用時)
↓
使用するリソースの権限を確認:
- SQLウェアハウス →「使用可能」権限
- Unity Catalog → USE CATALOG, USE SCHEMA, SELECT権限
- Genieスペース → アクセス権限
対処法:
「ステップ2:権限の設定」に戻って、必要な権限をすべて付与してください。
🚨 エラー4:「Tool execution failed」ツール実行エラー
特定のツールだけが失敗する場合。
SQLクエリが失敗する場合
エラーメッセージ例:
Error: Table not found: main.default.your_table
対処法:
1. テーブル名が正しいか確認
2. Unity Catalogの権限を確認
3. SQLウェアハウスが起動しているか確認
関数実行が失敗する場合
エラーメッセージ例:
Error: Function not found: main.default.your_function
対処法:
1. 関数が存在するか確認
2. EXECUTE権限があるか確認
3. 関数のパラメータが正しいか確認
💡 デバッグのコツ
段階的にテスト:
レベル1:接続確認
「Databricksに接続できていますか?」
→ ハンマーアイコンが表示されるか確認
レベル2:簡単なクエリ
「SELECT 1」を実行
→ 基本的なSQL実行ができるか確認
レベル3:実データアクセス
カタログ一覧を取得
→ Unity Catalogへのアクセス権限を確認
レベル4:複雑な操作
実際のテーブルにクエリ
→ 本番環境での動作を確認
🆘 解決しない場合の相談先
コミュニティサポート:
- Anthropic Discord: #mcp-support チャンネル
- Databricks Community Forum: https://community.databricks.com/
- Stack Overflow: タグ
databricksmcpclaude
公式サポート:
- Claude サポート: https://support.anthropic.com/
- Databricks サポート: ワークスペース内のヘルプメニュー
質問する際に含める情報:
- OS とバージョン
- Claude Desktopのバージョン
- 使用しているMCP Serverの種類
- エラーメッセージの全文
- 試した対処法
🎨 実践的な使い方
セットアップが完了したら、実際にどう活用するか見ていきましょう! 🚀
💬 SQLサーバーの活用例
データ探索
# カタログの確認
「Unity Catalogに存在するすべてのカタログを教えてください」
# テーブル構造の確認
「main.default.sales_dataテーブルの構造を詳しく教えてください」
# サンプルデータの取得
「sales_dataテーブルから最新10件のデータを見せてください」
Claudeの応答例:
sales_dataテーブルの構造を確認しました:
📊 テーブル情報:
- カタログ:main
- スキーマ:default
- テーブル名:sales_data
- テーブルタイプ:MANAGED
- 作成日:2024-01-15
📋 カラム構造:
| カラム名 | データ型 | NULL許可 | 説明 |
|---------|---------|---------|------|
| order_id | BIGINT | NO | 注文ID(主キー) |
| customer_id | BIGINT | NO | 顧客ID |
| product_name | STRING | YES | 商品名 |
| amount | DECIMAL(10,2) | NO | 金額 |
| order_date | DATE | NO | 注文日 |
| status | STRING | YES | ステータス |
最新10件のデータ:
[テーブル表示]
このデータについて、さらに詳しく分析しますか?
データ分析
# 集計クエリ
「2024年の月別売上推移を集計してください」
# グループ分析
「商品カテゴリ別の売上トップ5を教えてください」
# 比較分析
「今月と先月の売上を地域別に比較してください」
Claudeの応答例:
2024年の月別売上推移を分析しました:
📈 月別売上サマリー:
| 月 | 売上高 | 前月比 | 前年同月比 |
|----|--------|--------|-----------|
| 1月 | ¥1,250,000 | - | +12.5% |
| 2月 | ¥1,180,000 | -5.6% | +8.2% |
| 3月 | ¥1,420,000 | +20.3% | +15.7% |
| ... | ... | ... | ... |
💡 主な発見:
1. 3月に最高売上を記録(春の販促効果)
2. 第2四半期は緩やかな上昇トレンド
3. 年間を通じて前年比プラス成長
さらに詳しい分析(時系列予測、異常値検出など)を行いますか?
レポート生成
「売上レポートを作成してください。以下の内容を含めてください:
- 期間:2024年Q4
- 項目:総売上、商品別売上、地域別売上、前年同期比較
- グラフを含めてください」
🤖 Genieスペースサーバーの活用例
自然言語での分析
「先月の顧客満足度はどうでしたか?トレンドと改善点を教えてください」
「どの製品ラインが最も成長していますか?理由も分析してください」
「競合他社と比較して、当社の強みと弱みを分析してください」
Claudeの応答例:
Genieスペースで顧客満足度を分析しました:
😊 先月の顧客満足度:82.5%
📊 詳細分析:
1. 総合評価
- 平均スコア:4.1 / 5.0
- 前月比:+3.2ポイント改善
- 目標達成率:95%
2. カテゴリ別スコア
- 商品品質:4.5 ⭐(優秀)
- 配送速度:4.2 ⭐(良好)
- カスタマーサポート:3.8 ⭐(要改善)
3. トレンド
[グラフ表示:過去6ヶ月の推移]
4. 顧客コメントのキーワード分析
ポジティブ:「品質が良い」「速い」「丁寧」
ネガティブ:「サポート対応が遅い」「返品手続きが複雑」
💡 改善提案:
1. サポートチームの人員増強
2. 返品プロセスの簡素化
3. チャットボットの導入検討
これらの改善策について、さらに深掘りしますか?
データドリブンな意思決定
「新製品Aの市場投入を検討しています。
類似製品の過去データから、売上予測と必要な在庫量を教えてください」
「マーケティング予算を20%削減する必要があります。
ROIが最も低いチャネルはどれですか?」
🔍 ベクトル検索サーバーの活用例
ナレッジベース検索
「"データベース接続エラー"の解決方法を過去のドキュメントから検索してください」
「"売上向上施策"に関連するすべての社内資料を見つけてください」
Claudeの応答例:
「データベース接続エラー」に関連するドキュメントを検索しました:
📄 検索結果(関連度順):
1. 【トラブルシューティングガイド】データベース接続問題
関連度:95%
更新日:2024-12-15
概要:一般的な接続エラーと解決手順を網羅
2. 【技術FAQ】ネットワーク・DB接続トラブル
関連度:87%
更新日:2024-11-20
概要:ネットワーク関連の問題も含めて解説
3. 【事例集】過去の障害対応記録
関連度:79%
更新日:2024-10-05
概要:実際の障害対応事例とその解決策
💡 推奨される対処法(統合された情報):
1. 接続文字列の確認
- ホスト名、ポート、認証情報を再確認
2. ネットワーク疎通確認
- pingコマンドでサーバーに到達できるか確認
3. ファイアウォール設定
- 必要なポートが開放されているか確認
4. データベースサーバー状態
- サーバーが起動しているか確認
どの項目について詳しく知りたいですか?
FAQ自動応答
「顧客から"配送が遅い"というクレームが来ました。
過去の対応例から、適切な返答テンプレートを提案してください」
📊 Unity Catalog関数サーバーの活用例
カスタム計算の実行
「calculate_customer_lifetime_value関数を使って、
顧客ID 12345 の生涯価値を計算してください」
「データ品質チェック関数を全テーブルに対して実行してください」
Claudeの応答例:
顧客生涯価値(CLV)を計算しました:
🎯 顧客ID 12345 のCLV分析:
基本情報:
- 顧客名:山田太郎
- 初回購入日:2022-03-15
- 総購入回数:24回
- 平均購入額:¥8,500
CLV計算結果:
━━━━━━━━━━━━━━━━━━━━━
💰 生涯価値:¥204,000
内訳:
- 過去の累積購入額:¥204,000
- 予測される将来価値:¥156,000
- 合計CLV:¥360,000
━━━━━━━━━━━━━━━━━━━━━
📊 顧客セグメント:プレミアム(上位10%)
💡 推奨アクション:
1. VIPプログラムへの招待
2. パーソナライズされた商品提案
3. 優先サポートの提供
この顧客に対する具体的な施策を立案しますか?
🎯 複合的な活用例
エンドツーエンドの分析ワークフロー
「以下の分析を順番に実行してください:
1. 先月の売上データをSQLで抽出
2. Genieで売上トレンドを分析
3. ベクトル検索で類似期間のレポートを検索
4. Unity Catalog関数で売上予測を実行
5. 総合レポートを作成」
Claudeが自動的に:
- 各MCP Serverを適切に使い分け
- データを収集・分析
- 洞察を統合
- 包括的なレポートを生成
💡 効率的な使い方のコツ
1. 具体的に質問する 🎯
❌ 悪い例:「売上を見せて」
✅ 良い例:「2024年Q4の商品カテゴリ別売上を、前年同期比と共に表形式で表示してください」
2. 段階的にリクエストする 📝
ステップ1:「まず全体像を教えてください」
ステップ2:「その中で気になる部分を詳しく分析」
ステップ3:「具体的なアクションプランを提案」
3. フィードバックを与える 💬
「もっと詳しく」
「別の角度から分析して」
「グラフで可視化して」
4. テンプレート化する 📋
よく使う質問はテンプレート化:
「毎週月曜日の定例レポート:
- 先週の売上サマリー
- トップ5商品
- 要注意指標のアラート」
🎓 まとめと次のステップ
おめでとうございます!Claude for DesktopのWebコネクタを使って、Databricks公式MCP Serverのセットアップが完了しました 🎉
📚 この記事で学んだこと
技術的な内容:
- Webコネクタの使い方(GUI操作だけで完結!)
- OAuth M2M認証の仕組み
- サービスプリンシパルの作成と管理
- 権限設定の最適な方法
- Databricks Managed MCP Serverの4種類の特徴
実践的なスキル:
- 自然言語でのデータ操作
- SQLを書かないデータ分析
- Genieを使った高度な分析
- ベクトル検索の活用
- Unity Catalog関数の実行
🚀 次にできること
レベル1:基本的な活用 📊
- 日常的なデータ確認をClaudeに任せる
- 定型レポートの自動生成
- アドホック分析の効率化
レベル2:高度な活用 🔥
- 複数のMCP Serverを組み合わせた分析
- カスタム関数の作成と実行
- ベクトル検索を使ったRAGアプリ構築
レベル3:エンタープライズ活用 🏢
- チーム全体での標準化
- 自動レポーティングシステムの構築
- データドリブンな意思決定の加速
💡 さらに学ぶためのリソース
公式ドキュメント:
コミュニティ:
- Anthropic Discord - #mcp-support チャンネル
- Databricks Community Forum
- GitHub - Databricks Labs
関連記事(これから書きたい内容):
- Unity Catalog関数の作成と登録方法
- Genieスペースの効果的な設定
- ベクトル検索インデックスの構築
- MCP Serverのセキュリティベストプラクティス
🔒 セキュリティの定期チェック
月次で以下を確認しましょう:
- OAuthシークレットの有効期限(180日後)
- サービスプリンシパルの権限レビュー
- 監査ログの異常チェック
- 不要なアクセス権の削除
- 認証情報のバックアップ確認
🎁 最後に
Webコネクタの登場により、MCP Serverの設定が驚くほど簡単になりました。JSON編集やコマンドライン操作が不要になり、誰でも気軽にDatabricksとClaudeを連携できるようになったのは素晴らしいことです!
この記事が、あなたのデータ分析ワークフローを大きく改善するきっかけになれば嬉しいです 😊
質問やフィードバックは、Qiitaのコメント欄またはTwitterでお気軽にどうぞ!
ハッピーデータアナリシス! 🚀📊✨
📖 参考文献
- Databricks公式ドキュメント - MCP on Databricks
- Anthropic - Model Context Protocol
- Databricks - Managed MCP Servers
- OAuth 2.0 仕様
🏷️ タグ
Databricks Claude MCP OAuth Unity Catalog Genie ベクトル検索 データ分析 AI 機械学習









