databricks-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| DATABRICKS_HOST | Yes | Databricks workspace URL (e.g., https://dbc-1234567890.cloud.databricks.com) | |
| DATABRICKS_TOKEN | No | Personal Access Token (PAT) for authentication | |
| DATABRICKS_CLIENT_ID | No | OAuth M2M client ID | |
| DATABRICKS_ACCOUNT_ID | No | Account ID for account-level APIs (optional) | |
| DATABRICKS_CLIENT_SECRET | No | OAuth M2M client secret |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| whoamiA | Return the authenticated principal (Databricks |
| auth_configA | Return the resolved Databricks MCP configuration (host, transport, auth method). Does NOT include any secrets. Useful for verifying configuration. |
| workspace_listB | List the contents of a workspace directory. |
| workspace_get_statusA | Get the status (object_type, path, language) of a workspace object. |
| workspace_mkdirsA | Create a workspace directory (and any necessary parents). |
| workspace_deleteB | Delete a workspace object (notebook, file, directory). |
| workspace_exportA | Export a workspace object (notebook or file). |
| workspace_importC | Import a workspace object (notebook or file). |
| workspace_list_filesA | List files under |
| workspace_read_fileA | Read the text content of a small file under |
| clusters_listA | List all clusters visible to the authenticated principal (paged). |
| clusters_getB | Fetch a cluster's current state and configuration. |
| clusters_createA | Create a Databricks cluster. Returns |
| clusters_editB | Edit a Databricks cluster's configuration. Returns |
| clusters_startB | Start a terminated cluster. |
| clusters_restartB | Restart a running cluster. |
| clusters_resizeA | Resize a cluster (must be RUNNING). |
| clusters_terminateA | Terminate a cluster (recoverable for 30 days; use :func: |
| clusters_deleteA | Permanently delete a cluster (terminates first). |
| clusters_eventsA | List cluster events (ordered from oldest by default). |
| clusters_list_node_typesA | List all available node types for cluster creation. |
| clusters_spark_versionsA | List all available Spark runtime versions. |
| jobs_listC | List jobs visible to the authenticated principal. |
| jobs_getA | Fetch a single job's definition. |
| jobs_createC | Create a Databricks job. Returns |
| jobs_updateC | Update a job's settings. |
| jobs_resetA | Fully replace a job's settings (overwrites all fields not in |
| jobs_deleteA | Delete a job (trash, recoverable for 30 days). |
| jobs_run_nowC | Trigger a job run and return the |
| jobs_runs_listC | List historical job runs. |
| jobs_runs_getB | Get details of a single run, including task list and lifecycle. |
| jobs_runs_get_outputA | Get the output (notebook output, logs, error) of a run. Useful after the run completes. |
| jobs_runs_cancelA | Cancel a run (no effect if already completed). |
| jobs_runs_cancel_allA | Cancel all currently active runs of a job. |
| jobs_runs_repairB | Re-run a failed run (optionally only specific tasks). |
| jobs_runs_exportA | Export and retrieve a run (returns notebook content and dashboard definitions). |
| warehouses_listA | List all SQL warehouses visible to the authenticated principal. Returns an empty list when there are no warehouses. |
| warehouses_getA | Fetch a single SQL warehouse's configuration and state. |
| warehouses_createC | Create a new SQL warehouse. Returns the created warehouse's |
| warehouses_editC | Edit an existing SQL warehouse's configuration. Returns the warehouse |
| warehouses_startB | Start a SQL warehouse. |
| warehouses_stopB | Stop a running SQL warehouse. |
| warehouses_deleteB | Permanently delete a SQL warehouse. |
| sql_statements_executeA | Execute a SQL statement against a warehouse. Returns the statement |
| sql_statements_getA | Get a statement's status and (when ready) its inline result manifest. |
| sql_statements_get_result_chunkA | Fetch a single chunk of an EXTERNAL_LINKS result. |
| sql_statements_cancelA | Cancel a running SQL statement. |
| queries_listC | List saved SQL queries. |
| queries_getA | Fetch a single saved SQL query definition. |
| queries_createC | Create a new saved SQL query. Returns |
| queries_updateC | Update a saved SQL query. |
| queries_deleteA | Delete a saved SQL query (trash). |
| alerts_listC | List SQL alerts. |
| alerts_getA | Fetch a single SQL alert definition. |
| alerts_createC | Create a new SQL alert. Returns |
| alerts_updateC | Update an existing SQL alert. |
| alerts_deleteB | Delete a SQL alert. |
| query_history_listA | List historical SQL query executions with optional filters. |
| lakeview_dashboard_listC | List Lakeview dashboards in the workspace. |
| lakeview_dashboard_getB | Get a Lakeview dashboard's metadata and content. |
| lakeview_dashboard_createC | Create a Lakeview dashboard. |
| lakeview_dashboard_updateB | Update a Lakeview dashboard (creates a draft). |
| lakeview_dashboard_deleteB | Trash a Lakeview dashboard. |
| lakeview_dashboard_publishC | Publish the latest draft of a Lakeview dashboard. |
| lakeview_dashboard_unpublishB | Unpublish a Lakeview dashboard. |
| lakeview_dashboard_trash_listB | List trashed Lakeview dashboards. |
| lakeview_dashboard_restoreB | Restore a trashed Lakeview dashboard. |
| lakeview_dashboard_purgeA | Permanently delete a trashed Lakeview dashboard. |
| lakeview_schedule_getA | Get a Lakeview dashboard schedule. |
| lakeview_schedule_listC | List Lakeview dashboard schedules. |
| lakeview_schedule_createB | Create a Lakeview dashboard schedule. |
| lakeview_schedule_updateC | Update a Lakeview dashboard schedule. |
| lakeview_schedule_deleteB | Delete a Lakeview dashboard schedule. |
| legacy_dashboards_listC | List legacy SQL dashboards ( |
| legacy_dashboard_getB | Get a legacy SQL dashboard. |
| uc_catalog_listB | List catalogs ( |
| uc_catalog_getA | Get a single catalog ( |
| uc_catalog_createC | Create a catalog ( |
| uc_catalog_updateC | Update a catalog ( |
| uc_catalog_deleteB | Delete a catalog ( |
| uc_schema_listC | List schemas ( |
| uc_schema_getA | Get a single schema ( |
| uc_schema_createC | Create a schema ( |
| uc_schema_updateC | Update a schema ( |
| uc_schema_deleteB | Delete a schema ( |
| uc_table_listB | List tables ( |
| uc_table_getC | Get a single table ( |
| uc_table_createC | Create a table ( |
| uc_table_updateC | Update a table ( |
| uc_table_deleteB | Delete a table ( |
| uc_volume_listC | List volumes ( |
| uc_volume_getA | Get a single volume ( |
| uc_volume_createC | Create a volume ( |
| uc_volume_updateB | Update a volume ( |
| uc_volume_deleteC | Delete a volume ( |
| uc_function_listC | List functions ( |
| uc_function_getB | Get a single function ( |
| uc_function_createC | Create a function ( |
| uc_function_updateA | Update a function ( |
| uc_function_deleteB | Delete a function ( |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 303 tools
Resource-prefixed names make most tools easy to tell apart, with each domain (clusters, jobs, UC, MLflow, etc.) following clear CRUD patterns. However, overlaps like uc_model vs mlflow_registered_models, workspace_list vs dbfs_list, and whoami vs account_whoami create some ambiguity in a 303-tool surface.
The dominant pattern is resource_subresource_verb (e.g., clusters_list, uc_table_create, sharing_providers_get), which is highly predictable. Minor deviations such as whoami, auth_config, jobs_run_now, vs_query_index, and clusters_list_node_types prevent a perfect score.
303 tools is an extreme mismatch for an agent-facing MCP surface; even though Databricks is a broad platform, no agent can effectively select from this many tools. This far exceeds the 'too many' threshold and significantly harms usability.
The tool surface is remarkably comprehensive, covering CRUD/lifecycle operations across clusters, jobs, warehouses, SQL, UC, MLflow, serving, sharing, secrets, permissions, SCIM, repos, DBFS, pools, apps, and account management. Minor gaps exist (e.g., account-level SCIM lacks update/patch, account storage configs lack get/update, legacy dashboards are read-only) but they are workarounds.