跳过安装。2 分钟内即可运行。
在 cloud.anythingmcp.com 开始免费试用,一键添加 Databricks,然后将你的 AI 客户端(Claude、ChatGPT、Copilot 或 Cursor)指向生成的 MCP 端点。无需 Docker,无需 git clone,无需任何工程经验。
摘要
让你的 AI 使用你的 Databricks 工作区:在 SQL 仓库上运行 SQL,浏览 Unity Catalog 的目录、架构和表,查看集群、仓库、作业和运行记录,读取笔记本,并在你确认后启动或停止计算资源、触发作业。使用个人访问令牌连接。
试试这样问
Databricks 的示例提示
点击任意提示即可复制,然后粘贴到 Claude、ChatGPT、Cursor、Gemini、Copilot 或 OpenClaw 中,在该连接器上运行。
Claude 是 AI,可能会出错。请核对回答。
💡 无需安装? 直接使用 cloud.anythingmcp.com。 登录、点击 Connectors → Databricks、粘贴凭证、生成 MCP API key,即可完成。无 Docker、无
git clone、无本地服务器。
Databricks + ChatGPT
让你的 AI 使用你的 Databricks 工作区:在 SQL 仓库上运行 SQL,浏览 Unity Catalog 的目录、架构和表,查看集群、仓库、作业和运行记录,读取笔记本,并在你确认后启动或停止计算资源、触发作业。使用个人访问令牌连接。
前提条件
完整的设置说明已内置在连接器中 (在 store 中选择连接器时可见)。所需环境变量:
DATABRICKS_HOST, DATABRICKS_TOKEN
步骤 1 — 获取凭证
- 打开你的 Databricks 工作区,把地址栏中的主机名复制到
DATABRICKS_HOST,不要带https://,例如dbc-a1b2c3d4-e5f6.cloud.databricks.com(AWS)、adb-1234567890123456.7.azuredatabricks.net(Azure)或1234567890123456.7.gcp.databricks.com(Google Cloud)。 - 点击右上角的用户名,然后打开 Settings → Developer → Access tokens → Manage → Generate new token。填写备注和有效期,把令牌复制到
DATABRICKS_TOKEN:Databricks 只显示一次。工作区管理员必须允许使用个人访问令牌。 - 为了最小权限,请为一个 服务主体(service principal) 创建令牌,只授予 AI 需要的权限:数据上的 USE CATALOG、USE SCHEMA 和 SELECT,以及一个 SQL 仓库上的 CAN USE。连接器以令牌所属用户的权限操作。
- 安装连接器,运行
databricks_get_current_user,查看 AI 以谁的身份操作。
计算资源要花钱,所以 AI 会先问你:Databricks 按 DBU 对计算收费。对已停止的 SQL 仓库发起查询会自动启动它,运行中的仓库或集群在自动停止前一直计费。运行 SQL 之前,AI 会用 databricks_list_warehouses 检查仓库;如果仓库没有运行,它会告诉你查询会启动仓库以及仓库的规模,并等你同意。Serverless 仓库几秒钟就能启动。
在仓库上运行 SQL:databricks_execute_sql 运行一条语句,默认最多返回 200 行(上限 10,000 行)。凡是会更改数据、表或权限的语句(INSERT、UPDATE、DELETE、MERGE、CREATE、ALTER、DROP、GRANT),AI 都会先给你看完整的语句,并等你明确同意;到底允许做什么,由令牌在 Unity Catalog 中的权限决定。耗时较长的语句会在后台继续运行:databricks_get_statement 跟踪进度,databricks_get_statement_chunk 获取更多行。
Unity Catalog:databricks_list_catalogs、databricks_list_schemas、databricks_list_tables 和 databricks_get_table 会显示目录、架构、表、视图及其列,让 AI 用正确的名称编写 SQL。
其他所有更改也会先问你:databricks_start_cluster、databricks_terminate_cluster、databricks_start_warehouse、databricks_stop_warehouse、databricks_run_job、databricks_cancel_job_run 和 databricks_cancel_statement。终止集群或停止仓库会中断其上正在运行的查询和笔记本。这个连接器不会删除任何东西。
作业:databricks_list_jobs 和 databricks_get_job 显示作业、调度、参数和任务;databricks_run_job 立即触发一次运行;databricks_list_job_runs、databricks_get_job_run 和 databricks_get_run_output 显示运行记录、任务状态、错误和笔记本输出(保留 60 天)。
笔记本和文件:databricks_list_workspace 浏览文件夹和笔记本,databricks_export_notebook 返回小型笔记本的源代码,databricks_list_volume_files 列出 Unity Catalog 卷中的文件,databricks_list_dbfs 列出旧版 DBFS 路径。集群的 Spark 配置、环境变量和初始化脚本可能包含机密信息,因此不会返回。
常见错误:401,或 403 Invalid access token:令牌错误、过期或已被撤销,或者 DATABRICKS_HOST 指向了另一个工作区。403 PERMISSION_DENIED:用户缺少某项权限,例如 USE CATALOG、SELECT、仓库上的 CAN USE 或作业上的 CAN MANAGE RUN。404 RESOURCE_DOES_NOT_EXIST:ID 或名称错误,或者工作区没有启用 Unity Catalog。429:请求过多;请稍候重试。
该连接器不会创建、编辑或删除集群、仓库、作业、表或文件,不会上传文件,也不涉及 Delta Live Tables 管道、MLflow、Model Serving、Genie 和 Vector Search。
步骤 2 — 安装 adapter
curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d
步骤 3 — 在 ChatGPT 中添加连接器
你的服务器 URL: 在 AnythingMCP 中打开 MCP Servers → 此连接器所在的服务器,复制它的 URL(
https://cloud.anythingmcp.com/mcp/…)。本指南中出现YOUR_SERVER_ID的地方都用它替换。
ChatGPT 在网页版的 Plugins 页面把 MCP 服务器添加为插件,仅付费套餐可用,不再需要开发者模式。在 Business 工作区中只有管理员和所有者可以添加;在 Enterprise 和 Edu 中,管理员可以授予 Create plugins with MCPs 权限。
- 前往 chatgpt.com/plugins,点击 +,然后选择 Add custom MCP server。
- 填写名称,例如 Name:
Databricks。 - 在 Connection 下的 Server URL 中填入
https://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID,Authentication 保持为 OAuth。 - 选择 I understand and want to continue,然后点击 Create as a plugin。ChatGPT 提示时,登录 AnythingMCP 并允许访问。
- 在个人插件中安装这个新插件,然后在对话中输入 @ 并选择它。
可用工具
| Tool | What it does |
|---|---|
databricks_get_current_user | Get the Databricks user or service principal behind the token: user name, display name, id, active flag, groups and entitlements |
databricks_list_clusters | List the workspace's clusters (all-purpose and job clusters) with id, name, state, Spark version, node types, size or autoscale range… |
databricks_get_cluster | Get one cluster's state and configuration: Spark version, node types, workers or autoscale range, auto-termination, access mode, memory and… |
databricks_start_cluster | Start a terminated cluster |
databricks_terminate_cluster | Terminate (stop) a running cluster |
databricks_list_warehouses | List the SQL warehouses with id, name, state (RUNNING, STOPPED, STARTING), size, type, serverless flag, cluster counts, active sessions and… |
databricks_get_warehouse | Get one SQL warehouse: state, size, type, serverless flag, scaling range, active sessions, auto-stop minutes, health and its JDBC/ODBC… |
databricks_start_warehouse | Start a stopped SQL warehouse |
databricks_stop_warehouse | Stop a running SQL warehouse |
databricks_execute_sql | Run one SQL statement on a SQL warehouse and return columns and up to row_limit rows (default 200) |
databricks_get_statement | Get the state and result of a SQL statement started with databricks_execute_sql: status (PENDING, RUNNING, SUCCEEDED, FAILED, CANCELED)… |
databricks_get_statement_chunk | Get a further chunk of rows of a finished SQL statement, by chunk index (next_chunk_index of the previous answer) |
databricks_cancel_statement | Cancel a running SQL statement |
databricks_list_jobs | List the workspace's jobs with id, name, creator, schedule and creation time |
databricks_get_job | Get one job: name, description, run-as user, schedule or trigger, job parameters, concurrency, timeout and its tasks (key, dependencies… |
databricks_run_job | Trigger a run of an existing job now |
databricks_list_job_runs | List job runs, newest first, with run id, job id, state, start and end time, duration and a link to the run page |
databricks_get_job_run | Get one job run: state and result, times, trigger, parameters and each task's run_id, state and run page link |
databricks_get_run_output | Get the output of one task run: notebook exit value, SQL output, error message and trace, and logs |
databricks_cancel_job_run | Cancel a job run (asynchronously) |
databricks_list_catalogs | List the Unity Catalog catalogs the user can see, with name, type, owner and comment |
databricks_list_schemas | List the schemas of a Unity Catalog catalog with full name, owner and comment |
databricks_list_tables | List the tables and views of a Unity Catalog schema with full name, type (MANAGED, EXTERNAL, VIEW, MATERIALIZED_VIEW), format, owner and… |
databricks_get_table | Get a Unity Catalog table or view by full name: columns with types, nullability, comments and partitioning, table type, format, owner… |
databricks_list_workspace | List the contents of a workspace folder: notebooks (with language), files, folders, repos and libraries, with path, object id and… |
databricks_export_notebook | Get the source code of one notebook or workspace file as text (Python, SQL, Scala or R source) |
databricks_list_volume_files | List the files and folders in a Unity Catalog volume directory, with name, size and modification time |
databricks_list_dbfs | List a legacy DBFS directory (path, size, folder flag, modification time) |
示例提示
- “我们有哪些 SQL 仓库?现在哪些在运行?”
- “给我看 main.sales 里的表,以及 orders 表的列。”
- “上个月按国家统计的收入是多少?用 serverless 仓库,如果需要启动请先告诉我。”
- “昨晚的 nightly_etl 作业成功了吗?如果有任务失败,给我看错误信息。”
- “先告诉我 weekly_report 作业做什么、用哪个集群,然后现在运行它。”
FAQ
ChatGPT 免费套餐能用自定义 MCP 服务器吗? OpenAI 只为付费套餐提供自定义 MCP 服务器的说明,Free 套餐不在其列。
下一步
这份指南对你有帮助吗?