- Home
- MCP servers
- Databricks
Databricks
- python
0
GitHub Stars
python
Language
7 months ago
First Indexed
3 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"robkisk-databricks-mcp": {
"command": "./scripts/start_mcp_server.sh",
"args": [],
"env": {
"DATABRICKS_HOST": "https://your-databricks-instance.azuredatabricks.net",
"DATABRICKS_TOKEN": "your-personal-access-token",
"RUNNING_VIA_CURSOR_MCP": "true",
"DATABRICKS_WAREHOUSE_ID": "sql_warehouse_12345"
}
}
}
}You set up and run a Databricks MCP Server that exposes Databricks functionality through the MCP protocol. This enables large language model (LLM) powered tools to manage clusters, jobs, notebooks, files, SQL, and more inside your Databricks workspace in a structured, programmatic way.
How to use
Start the MCP server locally and register it with your MCP clients to start issuing Databricks operations through MCP tools. You can manage clusters, execute SQL, work with notebooks and workspace files, handle repos, and monitor job runs. Use the available tools by calling them from your MCP client, and tailor requests with parameters such as IDs, paths, and SQL statements to perform the actions you need.
How to install
Prerequisites: Python 3.10 or higher and the uvx MCP package manager.
Install from scratch
# Unix/macOS
curl -LsSf https://astral.sh/uv/install.sh | sh
# Windows (PowerShell)
irm https://astral.sh/uv/install.ps1 | iex
Set up the project locally
Clone the project, set up a virtual environment, and install dependencies in development mode. Then configure environment variables for Databricks access.
Configuration steps
Create and activate a virtual environment, install development dependencies, and provide Databricks credentials via environment variables.
Run the MCP server locally
Activate the virtual environment and start the server using the provided startup script.
Register with AI clients
Register the server with your chosen AI client (Cursor, Claude CLI, etc.) using the local start script and environment variables so that you can invoke MCP tools directly.
Usage patterns
- List resources: clusters, notebooks, files, and repos
- Create and manage resources: clusters, jobs, catalogs, schemas, and tables
- Execute SQL against a warehouse
- Retrieve file contents and metadata from the workspace
- Sync repos and run notebooks as part of a workflow
- Handle file uploads and downloads to DBFS
Notes
The server is designed to operate asynchronously for efficient interaction with Databricks APIs and long-running tasks.
Available tools
list_clusters
List all Databricks clusters with their IDs, names, and statuses.
create_cluster
Create a new Databricks cluster with the specified configuration.
terminate_cluster
Terminate a running Databricks cluster by its ID.
get_cluster
Retrieve details for a specific Databricks cluster.
start_cluster
Start a terminated cluster by its ID.
list_jobs
List all Databricks jobs in the workspace.
run_job
Trigger a Databricks job run by job ID or configuration.
run_notebook
Submit a one-time notebook run and wait for completion.
create_job
Create a new Databricks job with a given configuration.
delete_job
Delete a Databricks job by ID.
get_run_status
Get status information for a specific job run.
list_job_runs
List recent runs for a specified job.
cancel_run
Cancel a running job.
list_notebooks
List notebooks within a workspace directory.
export_notebook
Export a notebook from the workspace in a chosen format.
import_notebook
Import a notebook into the workspace.
delete_workspace_object
Delete a notebook or a directory in the workspace.
get_workspace_file_content
Retrieve content of a workspace file, such as JSON, notebooks, or scripts.
get_workspace_file_info
Get metadata for a workspace file without downloading content.
list_files
List files and directories in a DBFS path.
dbfs_put
Upload a small file to DBFS.
dbfs_delete
Delete a DBFS file or directory.
install_library
Install libraries on a cluster.
uninstall_library
Remove libraries from a cluster.
list_cluster_libraries
Check libraries installed on a cluster.
create_repo
Clone a Git repository into the workspace.
update_repo
Update an existing repository in the workspace.
list_repos
List repositories in the workspace.
pull_repo
Pull the latest commit for a Databricks repo.
list_catalogs
List Unity Catalog catalogs.
create_catalog
Create a new Unity Catalog catalog.
list_schemas
List schemas within a catalog.
create_schema
Create a new schema in a catalog.
list_tables
List tables within a schema.
create_table
Execute a CREATE TABLE statement.
get_table_lineage
Fetch lineage information for a table.
sync_repo_and_run_notebook
Pull a repository and execute a notebook in one call.
execute_sql
Execute a SQL statement against a specified warehouse; warehouse_id may be optional if DATABRICKS_WAREHOUSE_ID is set.