Databricks MCP服务器

一个为Databricks设计的只读MCP(模型上下文协议)服务器,支持查询Databricks SQL、浏览元数据和监控作业/管道。

  • by ChrisChoTW
  • Python
  • 本地部署
  • 4 星标
  • 更新于
在 GitHub 查看 ChrisChoTW/databricks-mcp

使用说明

mcp数据库

用其他语言阅读: 正体中文

A. 只读 用于copula的MCP(模型上下文协议)服务器,使Claude能够查询copula SQL、浏览元数据和监视作业/管道。

特性

  • SQL查询:执行SELECT、SHOW、DESCRIBE查询(写入操作被阻止)
  • 元数据浏览:列出目录、架构、表和搜索表
  • 三角洲湖:查看表历史记录、详细信息和授权
  • 工作和管道:列出并监控Rancher作业和DLT管道
  • 查询历史:使用筛选器浏览SQL查询历史记录
  • 集群指标:从系统表中监视CPU、内存、网络使用情况

安装

先决条件

  • Python 3.13+
  • 紫外线 包管理器
  • 使用SQL仓库的copula工作区

设置

# Clone the repository
git clone https://github.com/ChrisChoTW/databricks-mcp.git
cd databricks-mcp

# Install dependencies
uv sync

# Create .env file
cp .env.example .env

配置

编辑 .env 使用您的copula凭据:

DATABRICKS_SERVER_HOSTNAME=your-workspace.cloud.databricks.com
DATABRICKS_HTTP_PATH=/sql/1.0/warehouses/your-warehouse-id
DATABRICKS_TOKEN=your-personal-access-token

用法

使用克劳德代码

添加到您的Claude Code MCP配置中(~/.claude.json):

{
  "mcpServers": {
    "databricks-sql": {
      "type": "stdio",
      "command": "uv",
      "args": [
        "--directory",
        "/path/to/databricks-mcp",
        "run",
        "python",
        "server.py"
      ],
      "env": {
        "DATABRICKS_SERVER_HOSTNAME": "your-workspace.cloud.databricks.com",
        "DATABRICKS_HTTP_PATH": "/sql/1.0/warehouses/your-warehouse-id",
        "DATABRICKS_TOKEN": "your-token"
      }
    }
  }
}

独立

uv run python server.py

可用工具

SQL和元数据

工具 说明
databricks_query 执行SQL查询(只读)
list_catalogs 列出所有目录
list_schemas 列出目录中的架构
list_tables 列出架构中的表
get_table_schema 获取表结构(描述扩展)
search_tables 按名称搜索表

三角洲湖

工具 说明
get_table_history 查看增量表更改历史记录
get_table_detail 查看Delta表详细信息
get_grants 查看对象权限
list_volumes 列出Unity目录卷

工作和管道

工具 说明
list_jobs 列出copula作业
get_job 获取作业详细信息
list_job_runs 列出作业运行历史记录
get_job_run 获取跑步详情
list_pipelines 列出DLT管道
get_pipeline 获取管道状态

计算与监控

工具 说明
list_query_history 列出SQL查询历史记录
list_warehouses 列出SQL仓库
list_clusters 列出集群
get_cluster_metrics 获取集群CPU/内存指标
get_cluster_events 获取集群事件

项目结构

databricks-mcp/
├── server.py         # Entry point
├── core.py           # Shared connections and MCP instance
└── tools/
    ├── query.py      # SQL queries and metadata
    ├── delta.py      # Delta Lake and permissions
    ├── jobs.py       # Jobs management
    ├── pipelines.py  # DLT Pipelines
    ├── compute.py    # Clusters and query history
    └── metrics.py    # Cluster metrics

安全

此服务器是 设计为只读:

  • ❌ INSERT、UPDATE、DELETE、DROP、TRUNCATE、MERGE、COPY被阻止
  • ✅ 允许选择、显示、描述、创建视图
  • 凭据通过环境变量传递(从未硬编码)

许可证

麻省理工学院

贡献

欢迎问题和拉取请求!