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 集群
终止Databricks 集群
get_cluster :获取有关特定 Databricks 集群的信息
start_cluster :启动已终止的 Databricks 集群
list_jobs :列出所有 Databricks 作业
run_job :运行 Databricks 作业
list_notebooks :列出工作区目录中的笔记本
export_notebook :从工作区导出笔记本
list_files :列出 DBFS 路径中的文件和目录
执行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-server使用
uv设置项目:# 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 风格的文档字符串
除测试外,所有代码都需要类型提示
代码检查
该项目使用以下 linting 工具:
测试
该项目使用 pytest 进行测试。要运行测试:
您还可以直接使用 pytest 运行测试:
该项目的目标是最低代码覆盖率达到 80%。
文档
API 文档是使用 Sphinx 生成的,可以在
docs/api目录中找到所有代码都包含 Google 风格的文档字符串
请参阅
examples/目录以获取使用示例
示例
查看examples/目录以获取用法示例。要运行示例,请执行以下操作:
贡献
欢迎贡献代码!欢迎提交 Pull 请求。
确保您的代码遵循项目的编码标准
为任何新功能添加测试
根据需要更新文档
提交前验证所有测试均已通过
执照
该项目根据 MIT 许可证获得许可 - 有关详细信息,请参阅 LICENSE 文件。