article
README
🚀 Databricks MCP 服务器
Databricks MCP 服务器是一个模型上下文协议(MCP)服务器,它连接到 Databricks API,能让大语言模型运行 SQL 查询、列出作业并获取作业状态,为使用 Databricks 环境提供了便捷的交互方式。
🚀 快速开始
运行服务器
启动 MCP 服务器:
python main.py
你可以使用 inspector 测试此 MCP 服务器,运行:
npx @modelcontextprotocol/inspector python3 main.py
✨ 主要特性
- 在 Databricks SQL 仓库上运行 SQL 查询
- 列出所有 Databricks 作业
- 获取特定 Databricks 作业的状态
- 获取有关特定 Databricks 作业的详细信息
📦 安装指南
先决条件
- Python 3.7+
- 配备以下内容的 Databricks 工作区:
- 个人访问令牌
- SQL 仓库端点
- 运行查询和访问作业的权限
安装步骤
- 克隆此存储库
- 创建并激活虚拟环境(推荐):
python -m venv .venv source .venv/bin/activate # 在 Windows 上:.venv\Scripts\activate - 安装依赖项:
pip install -r requirements.txt - 在根目录下创建一个
.env文件,包含以下变量:DATABRICKS_HOST=your-databricks-instance.cloud.databricks.com DATABRICKS_TOKEN=your-personal-access-token DATABRICKS_HTTP_PATH=/sql/1.0/warehouses/your-warehouse-id - 测试你的连接(可选但推荐):
python test_connection.py
获取 Databricks 凭证
- 主机:你的 Databricks 实例 URL(例如,
your-instance.cloud.databricks.com) - 令牌:在 Databricks 中创建个人访问令牌:
- 转到用户设置(点击右上角的用户名)
- 选择“开发者”标签
- 在“访问令牌”下点击“管理”
- 生成新令牌并立即保存
- HTTP 路径:对于你的 SQL 仓库:
- 转到 Databricks 中的 SQL 仓库
- 选择你的仓库
- 查找连接详细信息并复制 HTTP 路径
💻 使用示例
基础用法
当与支持 MCP 协议的 LLM 结合使用时,此服务器使你可以通过自然语言与你的 Databricks 环境交互,例如:
- "显示数据库中的所有表格"
- "运行查询以查看客户表中的记录数"
- "列出我的所有 Databricks 作业"
- "检查作业 #123 的状态"
- "显示作业 #456 的详细信息"
高级用法
以下是启动 MCP 服务器和使用 inspector 测试服务器的命令:
# 启动 MCP 服务器
python main.py
# 使用 inspector 测试此 MCP 服务器
npx @modelcontextprotocol/inspector python3 main.py
📚 详细文档
可用的 MCP 工具
以下 MCP 工具可用:
- run_sql_query(sql: str) - 在你的 Databricks SQL 仓库上执行 SQL 查询
- list_jobs() - 列出工作区中的所有 Databricks 作业
- get_job_status(job_id: int) - 通过作业 ID 获取特定 Databricks 作业的状态
- get_job_details(job_id: int) - 获取特定 Databricks 作业的详细信息
🔧 技术细节
故障排除
连接问题
- 确保你的 Databricks 主机正确且不包含
https://前缀 - 检查你的 SQL 仓库是否正在运行并可访问
- 验证个人访问令牌具有必要的权限
- 运行包含的测试脚本:
python test_connection.py
安全注意事项
- 你的 Databricks 个人访问令牌提供对你工作区的直接访问
- 确保你的
.env文件安全并从未提交到版本控制中 - 考虑使用权限范围适当的 Databricks 令牌
- 在安全的环境中运行此服务器
Scan to join WeChat group