返回市场
MCP 数据处理服务器

MCP 数据处理服务器

作者:JordiNeil43 星标更新:2025-04-24

项目介绍

Databricks MCP 服务器

这是一个连接到 Databricks API 的模型上下文协议(MCP)服务器,允许大语言模型(LLMs)运行 SQL 查询、列出作业并获取作业状态。

功能

  • 在 Databricks SQL 仓库上运行 SQL 查询
  • 列出所有 Databricks 作业
  • 获取特定 Databricks 作业的状态
  • 获取关于 Databricks 作业的详细信息

预备条件

  • Python 3.7+
  • Databricks 工作区,包括:
    • 个人访问令牌
    • SQL 仓库端点
    • 运行查询和访问作业的权限

安装

  1. 克隆此仓库
  2. 创建并激活虚拟环境(推荐):
    python -m venv .venv
    source .venv/bin/activate  # 在 Windows 上:.venv\Scripts\activate
    
  3. 安装依赖项:
    pip install -r requirements.txt
    
  4. 在根目录创建一个 .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
    
  5. 测试你的连接(可选但推荐):
    python test_connection.py
    

获取 Databricks 凭证

  1. 主机:你的 Databricks 实例 URL(例如,your-instance.cloud.databricks.com
  2. 令牌:在 Databricks 中创建个人访问令牌:
    • 转到用户设置(点击右上角的用户名)
    • 选择“开发者”标签
    • 在“访问令牌”下点击“管理”
    • 生成一个新的令牌,并立即保存它
  3. HTTP 路径:对于你的 SQL 仓库:
    • 转到 Databricks 中的 SQL 仓库
    • 选择你的仓库
    • 查找连接详情并复制 HTTP 路径

启动服务器

启动 MCP 服务器:

python main.py

你可以通过运行以下命令使用检查器测试 MCP 服务器:

npx @modelcontextprotocol/inspector python3 main.py

可用的 MCP 工具

以下 MCP 工具可用:

  1. run_sql_query(sql: str) - 在你的 Databricks SQL 仓库上执行 SQL 查询
  2. list_jobs() - 列出工作区中的所有 Databricks 作业
  3. get_job_status(job_id: int) - 根据 ID 获取特定 Databricks 作业的状态
  4. get_job_details(job_id: int) - 获取关于特定 Databricks 作业的详细信息

使用示例与 LLMs

当与支持 MCP 协议的 LLMs 结合使用时,此服务器可以让你以自然语言方式与你的 Databricks 环境进行交互:

  • “显示数据库中的所有表”
  • “运行查询以计算客户表中的记录数”
  • “列出我的所有 Databricks 作业”
  • “检查作业 #123 的状态”
  • “显示作业 #456 的详细信息”

故障排除

连接问题

  • 确保你的 Databricks 主机正确且不包含 https:// 前缀
  • 检查你的 SQL 仓库是否正在运行且可访问
  • 验证你的个人访问令牌具有必要的权限
  • 运行包含的测试脚本:python test_connection.py

安全注意事项

  • 你的 Databricks 个人访问令牌提供了对你工作区的直接访问
  • 保护你的 .env 文件,切勿将其提交到版本控制中
  • 考虑仅使用具有适当权限范围的 Databricks 令牌
  • 在安全环境中运行此服务器