Databricks MCP サーバー
Databricks用のモデル補完プロトコル(MCP)サーバー。MCPプロトコルを介してDatabricks機能へのアクセスを提供します。これにより、LLM対応ツールはDatabricksクラスター、ジョブ、ノートブックなどと連携できるようになります。
特徴
MCP プロトコル サポート: MCP プロトコルを実装して、LLM が Databricks と対話できるようにします。
Databricks API統合: Databricks REST API機能へのアクセスを提供します
ツール登録: Databricks の機能を MCP ツールとして公開します
非同期サポート: 効率的な操作のために asyncio で構築されています
Related MCP server: mcp-lancedb
利用可能なツール
Databricks MCP サーバーは次のツールを公開します。
list_clusters : すべての Databricks クラスターを一覧表示する
create_cluster : 新しい Databricks クラスターを作成する
terminate_cluster : Databricks クラスターを終了する
get_cluster : 特定の Databricks クラスターに関する情報を取得する
start_cluster : 終了した Databricks クラスターを起動します
list_jobs : すべての Databricks ジョブを一覧表示する
run_job : Databricksジョブを実行する
list_notebooks : ワークスペースディレクトリ内のノートブックを一覧表示する
export_notebook : ワークスペースからノートブックをエクスポートする
list_files : DBFSパス内のファイルとディレクトリを一覧表示する
execute_sql : SQL文を実行する
インストール
前提条件
Python 3.10以上
uvパッケージ マネージャー (MCP サーバーに推奨)
設定
まだインストールしていない場合は、
uvをインストールします。# MacOS/Linux curl -LsSf https://astral.sh/uv/install.sh | sh # Windows (in PowerShell) irm https://astral.sh/uv/install.ps1 | iexインストール後にターミナルを再起動してください。
リポジトリをクローンします。
git clone https://github.com/JustTryAI/databricks-mcp-server.git cd databricks-mcp-serveruvを使用してプロジェクトをセットアップします。# Create and activate virtual environment uv venv # On Windows .\.venv\Scripts\activate # On Linux/Mac source .venv/bin/activate # Install dependencies in development mode uv pip install -e . # Install development dependencies uv pip install -e ".[dev]"環境変数を設定します。
# Windows set DATABRICKS_HOST=https://your-databricks-instance.azuredatabricks.net set DATABRICKS_TOKEN=your-personal-access-token # Linux/Mac export DATABRICKS_HOST=https://your-databricks-instance.azuredatabricks.net export DATABRICKS_TOKEN=your-personal-access-token.env.exampleテンプレートに基づいて.envファイルを作成することもできます。
MCPサーバーの実行
MCP サーバーを起動するには、次のコマンドを実行します。
これらのラッパースクリプトは、 scriptsディレクトリにある実際のサーバースクリプトを実行します。サーバーが起動し、MCPプロトコル接続を受け入れる準備が整います。
スクリプト ディレクトリからサーバー スクリプトを直接実行することもできます。
Databricks リソースのクエリ
リポジトリには、Databricks リソースをすばやく表示するためのユーティリティ スクリプトが含まれています。
プロジェクト構造
プロジェクト構造の詳細なビューについては、 project_structure.md参照してください。
発達
コード標準
PythonコードはPEP 8スタイルガイドに準拠しており、行の最大長は100文字です。
インデントには4つのスペースを使用します(タブは使用しません)
文字列には二重引用符を使用する
すべてのクラス、メソッド、関数にはGoogleスタイルのドキュメント文字列が必要です
型ヒントはテストを除くすべてのコードに必要です
リンティング
このプロジェクトでは、次のリンティング ツールを使用します。
テスト
このプロジェクトではテストにpytestを使用しています。テストを実行するには、以下の手順に従ってください。
pytest を使用して直接テストを実行することもできます。
最低 80% のコード カバレッジがこのプロジェクトの目標です。
ドキュメント
APIドキュメントはSphinxを使用して生成され、
docs/apiディレクトリにあります。すべてのコードにはGoogleスタイルのドキュメント文字列が含まれています
使用例については
examples/ディレクトリを参照してください。
例
使用例についてはexamples/ディレクトリをご覧ください。例を実行するには、以下の手順を実行してください。
貢献
貢献を歓迎します!お気軽にプルリクエストを送信してください。
コードがプロジェクトのコーディング標準に準拠していることを確認する
新しい機能のテストを追加する
必要に応じてドキュメントを更新する
提出前にすべてのテストに合格していることを確認してください
ライセンス
このプロジェクトは MIT ライセンスに基づいてライセンスされています - 詳細については LICENSE ファイルを参照してください。