
Markov Databricks MCP

Overview
基本能力
产品定位
Databricks MCP 是一个基于模型完成协议(MCP)的服务器,专门为 Databricks 设计,允许通过 MCP 协议访问 Databricks 的功能。这使得 LLM 驱动的工具能够与 Databricks 集群、作业、笔记本等进行交互。
核心功能
- MCP 协议支持:实现 MCP 协议,允许 LLM 与 Databricks 交互
- Databricks API 集成:提供对 Databricks REST API 功能的访问
- 工具注册:将 Databricks 功能暴露为 MCP 工具
- 异步支持:使用 asyncio 构建,以提高操作效率
适用场景
- 自动化管理 Databricks 集群
- 运行和监控 Databricks 作业
- 访问和管理 Databricks 笔记本
- 执行 SQL 查询
工具列表
- 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 语句
常见问题解答
- 如何设置环境变量?
- 在 Windows 上使用
set
命令,在 Linux/Mac 上使用export
命令 - 如何启动 MCP 服务器?
- 运行
./scripts/start_mcp_server.sh
脚本 - 如何与 AI 客户端集成?
- 需要注册服务器并配置 MCP 配置文件
使用教程
使用依赖
- Python 3.10 或更高版本
uv
包管理器(推荐用于 MCP 服务器)
安装教程
- 安装
uv
: ```bash # MacOS/Linux curl -LsSf https://astral.sh/uv/install.sh | sh
# Windows (in PowerShell) irm https://astral.sh/uv/install.ps1 | iex ```
-
克隆仓库:
bash git clone https://github.com/markov-kernel/databricks-mcp.git cd databricks-mcp
-
设置项目: ```bash # 创建并激活虚拟环境 uv venv
# 在 Windows 上 ..venv\Scripts\activate
# 在 Linux/Mac 上 source .venv/bin/activate
# 安装依赖 uv pip install -e .
# 安装开发依赖 uv pip install -e ".[dev]" ```
- 设置环境变量: ```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 ```
调试方式
-
启动 MCP 服务器:
bash source .venv/bin/activate ./scripts/start_mcp_server.sh
-
查询 Databricks 资源: ```bash # 查看所有集群 uv run scripts/show_clusters.py
# 查看所有笔记本 uv run scripts/show_notebooks.py ```
- 运行测试: ```bash # 运行所有测试 .\scripts\run_tests.ps1
# 运行特定测试 .\scripts\run_tests.ps1 -Verbose -Coverage tests/test_clusters.py ```