【databricks】Claude MCPをdatabricksで使ってみた1: Claudeとdatabricks Unity Catalogと接続する方法

【databricks】Claude MCPをdatabricksで使ってみた1: Claudeとdatabricks Unity Catalogと接続する方法

目次

初めに

Claude MCPとdatabricksの接続について3回に分けて検証していきたいと思います!

MCPとは?

MCP(Managed Cloud Platform)は、クラウドベースのデータ管理や処理を効率的に行うためのプラットフォームです。通常、データのインフラストラクチャ管理を簡素化し、データ分析のためのツールやサービスを提供します。特に、データが異なるシステムや環境間で流動的に移動する現代のデータ環境において、MCPは非常に重要な役割を果たします。

今回使ってみるMCP hostであるDatabricks, MCP clientであるClaudeとは?

  • Databricks:大規模なデータの処理と分析のための強力なプラットフォームであり、特にApache Sparkを活用したビッグデータ分析に特化しています。これにより、複雑なデータパイプラインの構築や、大規模なデータのクエリ処理が可能です。
  • Claude (Desktop):ClaudeはAI・機械学習を利用した解析や自動化ツールを提供します。特に、データ処理後のインサイトを得たり、モデルを構築するために使います。デスクトップ版はユーザーがローカル環境でも便利にAIツールを使えるようにするためのものです。

今回の検証: Unity CatalogとClaudeの接続

今回はClaudeをDatabricks内のデータベースであるUnity Catalogに接続してデータ分析をしてみたいと思います。イメージは下図の通りです。

環境設定

必要なもの

  • Claude desktop(アカウント)
  • databricksのアカウント

構築手順

1. API関連の設定

今回の方法では

1. SQL warehouse ID

2. databricks host

3. databricks API

この3つが必要です。databricks APIについてのみAPI発行の手順が必要で、他の2つはIDをコピーするだけです。

SQLwarehouse:

左バーのSQL warehouse → Connection details →HTTP pathを確認し/以降のIDをコピー

databricks host:

URLの中の次の部分を切り取ってください

databricks host ID 
┌────────────────────────────────┐ 
https://xxxxx.cloud.databricks.com/xxxxxxxxxxxxxxxxxxxxxxx

databricks API:

1.自身のプロフィール→設定→開発者に飛んでAccess tokenを作成

2.その時にできたAPIをコピー

2. Local Host MCP Serverを設定する

次のコマンドをファイルを作りたいレポジトリでクローンします。

git clone https://github.com/RafaelCartenet/mcp-databricks-server.git

3. claude_desktop_config.jsonに先ほどのファイルのディレクトリを入れる

claude desktop開発者用の設定から構成を編集を押すと、claude_desktop_config.jsonに誘導されます。

この中に次のコードを入れてください。

{
"mcpServers": {
"databricks_test": {
"command": "uv",
"args": [
"--directory",
"<your repository>/mcp-databricks-server",
"run",
"main.py"
],
"env": {
"DATABRICKS_HOST": "<your databricks host>",
"DATABRICKS_TOKEN": "<your databricks token>",
"DATABRICKS_SQL_WAREHOUSE_ID": "<your warehouse ID>"
}
}
}
}

これで設定完了です!claude desktopを再起動し、再度開発者用の設定を開くと、以下のようなdatabricks_testのmcpが見れるはずです。

 

実際に使ってみた

「Unity Catalog のsince_workspace_aws, dbt_kyamasakiからカスタマーごとの売上を出して、それをグラフとして出して、さらにインサイトも表示してください」という質問を投げてみました。

しっかりデータを参照しにいってくれてますね!みたいデータに辿り着くまで何度もクエリを投げているので少し時間はかかってしまっています。ダッシュボードも作ってくれました

ダッシュボードの出来も申し分ないです。

まとめ

今回はUnity CatalogとClaudeの接続を試してみました。予想以上に良くデータを分析してくれました。

Unity CatalogとClaudeによるMCP接続は大量にあるデータの分析やインサイトの導出による生産性の向上につながる可能性があります。

ローカルでMCPを使うのはそこまでハードルが高いわけではないので皆さんも試してみてください。

次回はdatabricks内蔵のAIとClaudeの接続を試してみます。

CTA
  • URLをコピーしました!
  • URLをコピーしました!
この記事を書いた人
目次