Databricks MCP Server

Databricks MCP Server

site icon
2025.03.23 0
PythonDatabricks 管理LLM 集成开发效率数据库
Databricks MCP Server 是一个基于模型完成协议(MCP)的服务器,专为 Databricks 设计,通过 MCP 协议提供对 Databricks 功能的访问。它允许 LLM 驱动的工具与 Databricks 集群、作业、笔记本等进行交互。该服务器支持 MCP 协议,集成了 Databricks REST API,并提供了工具注册功能,支持异步操作。
View on GitHub

Overview

基本能力

产品定位

Databricks MCP Server 是一个基于模型完成协议(MCP)的服务器,专为 Databricks 设计,通过 MCP 协议提供对 Databricks 功能的访问。

核心功能

  • MCP 协议支持:实现 MCP 协议,允许 LLM 与 Databricks 交互
  • Databricks API 集成:提供对 Databricks REST API 功能的访问
  • 工具注册:将 Databricks 功能暴露为 MCP 工具
  • 异步支持:使用 asyncio 构建,以提高操作效率

适用场景

  • LLM 驱动的工具需要与 Databricks 集群、作业、笔记本等进行交互的场景
  • 需要自动化管理 Databricks 资源的场景

工具列表

  • 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 服务器)

安装教程

  1. 安装 uv(如果尚未安装): ```bash # MacOS/Linux curl -LsSf https://astral.sh/uv/install.sh | sh

# Windows (in PowerShell) irm https://astral.sh/uv/install.ps1 | iex ``` 安装完成后重启终端。

  1. 克隆仓库: bash git clone https://github.com/JustTryAI/databricks-mcp-server.git cd databricks-mcp-server

  2. 使用 uv 设置项目: ```bash # 创建并激活虚拟环境 uv venv

# Windows ..venv\Scripts\activate

# Linux/Mac source .venv/bin/activate

# 以开发模式安装依赖 uv pip install -e .

# 安装开发依赖 uv pip install -e ".[dev]" ```

  1. 设置环境变量: ```bash # 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` 文件。

调试方式

  1. 启动 MCP 服务器: ```bash # Windows .\start_mcp_server.ps1

# Linux/Mac ./start_mcp_server.sh ```

  1. 查询 Databricks 资源: ```bash # 查看所有集群 uv run scripts/show_clusters.py

# 查看所有笔记本 uv run scripts/show_notebooks.py ```

许可证

该项目遵循 MIT 开源许可条款。