The Databricks Workspace connector lets your AI agent work with Databricks Workspace. You connect it once with a service principal, and Scalekit authenticates every call, so your agent never handles credentials. It comes with 53 tools.
- Tools
- 53
- What they doRead · write · destructive
- 28 · 18 · 728 read18 write7 destructive
- Users sign in with
- Service account
What you can do
- Run SQL queries: execute SQL on a SQL warehouse, fetch results, and cancel running statements
- Explore data: browse Unity Catalog catalogs, schemas, tables, and columns, including key constraints
- Manage jobs: create and delete jobs, trigger runs, and check run status and results
- Manage clusters and warehouses: create, resize, start, restart, and terminate clusters, and start or stop SQL warehouses
- Work with notebooks and files: list, import, export, and delete notebooks, and read or write files in DBFS
- Manage repos and secrets: clone Git repos, switch branches, and store secrets in secret scopes
Setup
Install the SDK
Terminal window npm install @scalekit-sdk/node dotenvTerminal window pip install scalekit-sdk-python python-dotenvSet your credentials
Add your Scalekit credentials to your
.envfile. Find values in app.scalekit.com > Developers > API Credentials..env SCALEKIT_ENVIRONMENT_URL=<your-environment-url>SCALEKIT_CLIENT_ID=<your-client-id>SCALEKIT_CLIENT_SECRET=<your-client-secret>Create the Databricks Workspace connection
In AgentKit > Connections, create a Databricks Workspace connection. The name you give it is the
connection_nameyour code passes. See Configure connections.
Tools
Pass the exact name toexecute_tooldatabricksworkspace_cluster_getGet details of a specific Databricks cluster by cluster ID.Read-onlyGet Cluster
Get details of a specific Databricks cluster by cluster ID.
Inputs
cluster_idstringrequired- The unique identifier of the cluster.
databricksworkspace_clusters_listList all clusters in the Databricks workspace.Read-onlyList Clusters
List all clusters in the Databricks workspace.
Inputs
This tool takes no inputs.
databricksworkspace_dbfs_listList the contents of a directory on the Databricks File System (DBFS).Read-onlyList DBFS Directory
List the contents of a directory on the Databricks File System (DBFS).
Inputs
pathstringrequired- The DBFS path to list.
databricksworkspace_dbfs_readRead up to 1 MB of a file's contents from the Databricks File System (DBFS).Read-onlyRead DBFS File
Read up to 1 MB of a file's contents from the Databricks File System (DBFS). The response returns the content base64-encoded. Use offset and length to page through larger files.
Inputs
pathstringrequired- The DBFS path of the file to read.
lengthinteger- Number of bytes to read, starting at offset. Maximum is 1,048,576 (1 MB).
offsetinteger- Byte offset to start reading from.
databricksworkspace_information_schema_columnsList columns for a table using INFORMATION_SCHEMA.COLUMNS.Read-onlyList Columns (INFORMATION_SCHEMA)
List columns for a table using INFORMATION_SCHEMA.COLUMNS. Returns column name, data type, nullability, numeric precision/scale, max char length, and comment.
Inputs
catalogstringrequired- The catalog containing the table.
schemastringrequired- The schema containing the table.
tablestringrequired- The table to list columns for.
warehouse_idstringrequired- The ID of the SQL warehouse to run the query on.
databricksworkspace_information_schema_schemataList all schemas within a catalog using INFORMATION_SCHEMA.SCHEMATA.Read-onlyList Schemas (INFORMATION_SCHEMA)
List all schemas within a catalog using INFORMATION_SCHEMA.SCHEMATA. Used for schema discovery during setup.
Inputs
catalogstringrequired- The catalog to list schemas from.
warehouse_idstringrequired- The ID of the SQL warehouse to run the query on.
databricksworkspace_information_schema_table_constraintsList PRIMARY KEY and FOREIGN KEY constraints for tables in a schema using INFORMATION_SCHEMA.TABLE_CONSTRAINTS.Read-onlyList Table Constraints (INFORMATION_SCHEMA)
List PRIMARY KEY and FOREIGN KEY constraints for tables in a schema using INFORMATION_SCHEMA.TABLE_CONSTRAINTS. Used to auto-detect join keys.
Inputs
catalogstringrequired- The catalog containing the schema.
schemastringrequired- The schema to list constraints from.
warehouse_idstringrequired- The ID of the SQL warehouse to run the query on.
databricksworkspace_information_schema_tablesList tables and views in a schema using INFORMATION_SCHEMA.TABLES.Read-onlyList Tables (INFORMATION_SCHEMA)
List tables and views in a schema using INFORMATION_SCHEMA.TABLES. Returns table name, type (MANAGED, EXTERNAL, VIEW, etc.), and comment for schema discovery.
Inputs
catalogstringrequired- The catalog to query INFORMATION_SCHEMA from.
schemastringrequired- The schema to list tables from.
warehouse_idstringrequired- The ID of the SQL warehouse to run the query on.
databricksworkspace_job_getGet details of a specific Databricks job by job ID.Read-onlyGet Job
Get details of a specific Databricks job by job ID.
Inputs
job_idintegerrequired- The unique identifier of the job.
databricksworkspace_job_run_getRetrieve the metadata and status of a single Databricks job run, including its state, start/end times, and task results.Read-onlyGet Job Run
Retrieve the metadata and status of a single Databricks job run, including its state, start/end times, and task results. Complements databricksworkspace_job_runs_list, which only lists summaries.
Inputs
run_idstringrequired- The ID of the job run to retrieve.
databricksworkspace_job_runs_listList all job runs in the Databricks workspace, optionally filtered by job ID.Read-onlyList Job Runs
List all job runs in the Databricks workspace, optionally filtered by job ID.
Inputs
job_idinteger- Filter runs by a specific job ID. If omitted, returns runs for all jobs.
limitinteger- The number of runs to return. Defaults to 20. Maximum is 1000.
offsetinteger- The offset of the first run to return.
databricksworkspace_jobs_listList all jobs in the Databricks workspace.Read-onlyList Jobs
List all jobs in the Databricks workspace.
Inputs
limitinteger- The number of jobs to return. Defaults to 20. Maximum is 100.
offsetinteger- The offset of the first job to return.
databricksworkspace_permissions_getRetrieve the access control list (permissions) for a Databricks object such as a cluster, job, notebook, or SQL warehouse.Read-onlyGet Object Permissions
Retrieve the access control list (permissions) for a Databricks object such as a cluster, job, notebook, or SQL warehouse.
Inputs
request_object_idstringrequired- The ID of the object to retrieve permissions for.
request_object_typestringrequired- The type of object to retrieve permissions forone of
clustersdirectoriesjobsnotebooksregistered-modelswarehouses
databricksworkspace_repos_listList Git repositories linked into the Databricks workspace, optionally filtered by path prefix.Read-onlyList Repos
List Git repositories linked into the Databricks workspace, optionally filtered by path prefix.
Inputs
next_page_tokenstring- Token for the next page of results
path_prefixstring- Filter repos to only those whose workspace path starts with this prefix
databricksworkspace_scim_me_getRetrieve information about the currently authenticated service principal in the Databricks workspace.Read-onlyGet Current Service Principal
Retrieve information about the currently authenticated service principal in the Databricks workspace.
Inputs
This tool takes no inputs.
databricksworkspace_scim_users_listList all users in the Databricks workspace using the SCIM v2 API.Read-onlyList Users
List all users in the Databricks workspace using the SCIM v2 API.
Inputs
countinteger- Maximum number of results to return per page.
filterstring- SCIM filter expression to narrow results (e.g. userName eq "user@example.com").
startIndexinteger- 1-based index of the first result to return. Used for pagination.
databricksworkspace_secrets_listList the secret keys stored within a Databricks secret scope.Read-onlyList Secrets
List the secret keys stored within a Databricks secret scope. Only key names and metadata are returned, never secret values.
Inputs
scopestringrequired- The name of the secret scope to list keys from.
databricksworkspace_secrets_scopes_listList all secret scopes available in the Databricks workspace.Read-onlyList Secret Scopes
List all secret scopes available in the Databricks workspace.
Inputs
This tool takes no inputs.
databricksworkspace_sql_statement_getGet the status and results of a previously executed SQL statement by its statement ID.Read-onlyGet SQL Statement Status
Get the status and results of a previously executed SQL statement by its statement ID.
Inputs
statement_idstringrequired- The ID of the SQL statement to retrieve.
databricksworkspace_sql_statement_result_chunk_getFetch a specific result chunk for a paginated SQL statement result.Read-onlyGet SQL Statement Result Chunk
Fetch a specific result chunk for a paginated SQL statement result. Use when a statement result has multiple chunks (large result sets).
Inputs
chunk_indexintegerrequired- The index of the result chunk to fetch (0-based).
statement_idstringrequired- The ID of the SQL statement.
databricksworkspace_sql_warehouse_getGet details of a specific Databricks SQL warehouse by its ID.Read-onlyGet SQL Warehouse
Get details of a specific Databricks SQL warehouse by its ID.
Inputs
warehouse_idstringrequired- The ID of the SQL warehouse to retrieve.
databricksworkspace_sql_warehouses_listList all SQL warehouses available in the Databricks workspace.Read-onlyList SQL Warehouses
List all SQL warehouses available in the Databricks workspace.
Inputs
This tool takes no inputs.
databricksworkspace_unity_catalog_catalogs_listList all Unity Catalogs accessible to the service principal in the Databricks workspace.Read-onlyList Unity Catalogs
List all Unity Catalogs accessible to the service principal in the Databricks workspace.
Inputs
This tool takes no inputs.
databricksworkspace_unity_catalog_schemas_listList all schemas within a Unity Catalog in the Databricks workspace.Read-onlyList Unity Catalog Schemas
List all schemas within a Unity Catalog in the Databricks workspace.
Inputs
catalog_namestringrequired- The name of the catalog to list schemas from.
databricksworkspace_unity_catalog_tables_listList all tables and views within a schema in a Unity Catalog in the Databricks workspace.Read-onlyList Unity Catalog Tables
List all tables and views within a schema in a Unity Catalog in the Databricks workspace.
Inputs
catalog_namestringrequired- The name of the catalog containing the schema.
schema_namestringrequired- The name of the schema to list tables from.
databricksworkspace_workspace_exportExport a Databricks notebook or directory.Read-onlyExport Workspace Object
Export a Databricks notebook or directory. Directories can only be exported as DBC archives. The response contains the content base64-encoded.
Inputs
pathstringrequired- The absolute workspace path of the notebook or directory to export.
formatstring- Export format for the objectone of
DBCHTMLJUPYTERSOURCEdefaultSOURCE
databricksworkspace_workspace_get_statusGet metadata about a Databricks workspace object (notebook, folder, or file), including its object type, language, and object ID.Read-onlyGet Workspace Object Status
Get metadata about a Databricks workspace object (notebook, folder, or file), including its object type, language, and object ID.
Inputs
pathstringrequired- The absolute workspace path of the object.
databricksworkspace_workspace_listList the contents (notebooks, folders, libraries) of a Databricks workspace directory.Read-onlyList Workspace Objects
List the contents (notebooks, folders, libraries) of a Databricks workspace directory.
Inputs
pathstringrequired- The absolute workspace path to list.
databricksworkspace_cluster_createCreate and start a new Databricks compute cluster.WriteCreate Cluster
Create and start a new Databricks compute cluster. Specify either a fixed number of workers or an autoscaling range.
Inputs
cluster_namestringrequired- Display name for the new cluster
node_type_idstringrequired- The instance type for driver and worker nodes
spark_versionstringrequired- The Databricks Runtime version to use for the cluster
autotermination_minutesinteger- Automatically terminate the cluster after this many minutes of inactivity. Set to 0 to disable.default
60 max_workersinteger- Maximum number of workers when autoscaling. Provide with min_workers instead of num_workers.
min_workersinteger- Minimum number of workers when autoscaling. Provide with max_workers instead of num_workers.
num_workersinteger- Fixed number of worker nodes. Omit and use min_workers/max_workers instead to enable autoscaling.
databricksworkspace_cluster_editEdit the configuration of an existing Databricks cluster.WriteEdit Cluster
Edit the configuration of an existing Databricks cluster. The cluster must be running or terminated; this replaces its full configuration, so include every field you want to keep, not just the ones you're changing.
Inputs
cluster_idstringrequired- The unique identifier of the cluster to edit.
cluster_namestringrequired- Display name for the cluster
node_type_idstringrequired- The instance type for driver and worker nodes
spark_versionstringrequired- The Databricks Runtime version to use for the cluster
autotermination_minutesinteger- Automatically terminate the cluster after this many minutes of inactivity. Set to 0 to disable.default
60 max_workersinteger- Maximum number of workers when autoscaling. Provide with min_workers instead of num_workers.
min_workersinteger- Minimum number of workers when autoscaling. Provide with max_workers instead of num_workers.
num_workersinteger- Fixed number of worker nodes. Omit and use min_workers/max_workers instead to enable autoscaling.
databricksworkspace_cluster_resizeResize a running Databricks cluster by setting a fixed worker count or an autoscaling range.WriteResize Cluster
Resize a running Databricks cluster by setting a fixed worker count or an autoscaling range.
Inputs
cluster_idstringrequired- The unique identifier of the cluster to resize.
max_workersinteger- Maximum number of workers when autoscaling. Provide with min_workers instead of num_workers.
min_workersinteger- Minimum number of workers when autoscaling. Provide with max_workers instead of num_workers.
num_workersinteger- Fixed number of worker nodes. Omit and use min_workers/max_workers instead to enable autoscaling.
databricksworkspace_cluster_restartRestart a running Databricks cluster by cluster ID.WriteRestart Cluster
Restart a running Databricks cluster by cluster ID. Useful for clearing cached state or applying updated init scripts.
Inputs
cluster_idstringrequired- The unique identifier of the cluster to restart.
databricksworkspace_cluster_startStart a terminated Databricks cluster by cluster ID.WriteStart Cluster
Start a terminated Databricks cluster by cluster ID.
Inputs
cluster_idstringrequired- The unique identifier of the cluster to start.
databricksworkspace_dbfs_putWrite a small file (up to 2 MB) to the Databricks File System (DBFS) in a single call, creating any needed parent directories.WriteWrite DBFS File
Write a small file (up to 2 MB) to the Databricks File System (DBFS) in a single call, creating any needed parent directories. For larger files, use the streaming create/add-block/close APIs instead.
- Idempotent
Inputs
contents_base64stringrequired- Base64-encoded file contents to write. Maximum 2 MB after encoding.
pathstringrequired- The DBFS path to write the file to.
overwriteboolean- Whether to overwrite an existing file at the destination pathdefault
false
databricksworkspace_job_createCreate a new Databricks job definition made up of one or more tasks.WriteCreate Job
Create a new Databricks job definition made up of one or more tasks.
Inputs
namestringrequired- Display name for the new job
tasksarrayrequired- Array of task definitions that make up the job. Each task needs a unique task_key plus one task type (notebook_task, spark_jar_task, python_wheel_task, sql_task, etc.) and either existing_cluster_id or new_cluster.
job_clustersarray- Shared cluster definitions that tasks can reference by job_cluster_key instead of using existing_cluster_id or new_cluster per task
max_concurrent_runsinteger- Maximum number of concurrent runs allowed for this job
tagsobject- Key-value tags attached to the job
timeout_secondsinteger- Timeout applied to each run of this job
databricksworkspace_job_run_nowTrigger an immediate run of a Databricks job by job ID.WriteTrigger Job Run
Trigger an immediate run of a Databricks job by job ID.
Inputs
job_idintegerrequired- The unique identifier of the job to run.
databricksworkspace_permissions_updateUpdate the access control list (permissions) for a Databricks object such as a cluster, job, notebook, or SQL warehouse.WriteUpdate Object Permissions
Update the access control list (permissions) for a Databricks object such as a cluster, job, notebook, or SQL warehouse. Existing grants not included in the access control list are preserved unless explicitly overridden.
- Idempotent
Inputs
access_control_listarrayrequired- JSON array of access control entries to apply. Each entry has one grantee key (user_name, group_name, or service_principal_name) and a permission_level.
request_object_idstringrequired- The ID of the object to update permissions for.
request_object_typestringrequired- The type of object to update permissions forone of
clustersdirectoriesjobsnotebooksregistered-modelswarehouses
databricksworkspace_repo_createClone a Git repository into the Databricks workspace.WriteCreate Repo
Clone a Git repository into the Databricks workspace.
Inputs
providerstringrequired- The Git provider hosting the repositoryone of
awsCodeCommitazureDevOpsServicesbitbucketCloudbitbucketServergitHubgitHubEnterprisegitLabgitLabEnterpriseEdition urlstringrequired- The HTTPS clone URL of the Git repository
pathstring- Desired workspace path for the cloned repo. If omitted, Databricks places it under /Repos/{user}/{repo name}.
databricksworkspace_repo_updateCheck out a different branch or tag in a Databricks repo, or pull the latest changes for the currently checked-out branch.WriteUpdate Repo
Check out a different branch or tag in a Databricks repo, or pull the latest changes for the currently checked-out branch.
- Idempotent
Inputs
repo_idstringrequired- The ID of the repo to update.
branchstring- Name of the branch to check out. Provide either branch or tag, not both.
tagstring- Name of the tag to check out. Provide either branch or tag, not both.
databricksworkspace_secret_putCreate or overwrite a secret in a Databricks secret scope.WritePut Secret
Create or overwrite a secret in a Databricks secret scope. Provide exactly one of string_value or bytes_value (base64-encoded).
- Idempotent
Inputs
keystringrequired- The key name under which to store the secret.
scopestringrequired- The name of the secret scope to write the secret into.
bytes_valuestring- Base64-encoded bytes value to store. Use instead of string_value.
string_valuestring- The UTF-8 string value to store. Use instead of bytes_value.
databricksworkspace_secret_scope_createCreate a new secret scope in the Databricks workspace, backed by Databricks or an Azure Key Vault.WriteCreate Secret Scope
Create a new secret scope in the Databricks workspace, backed by Databricks or an Azure Key Vault.
Inputs
scopestringrequired- Name of the new secret scope.
backend_azure_keyvaultobject- Azure Key Vault connection details. Required when scope_backend_type is AZURE_KEYVAULT.
initial_manage_principalstring- The initial principal granted MANAGE permission on this scope. Only 'users' is supported for Databricks-backed scopes.
scope_backend_typestring- The backend used to store the scope's secretsone of
DATABRICKSAZURE_KEYVAULT
databricksworkspace_sql_statement_cancelCancel a running SQL statement by its statement ID.WriteCancel SQL Statement
Cancel a running SQL statement by its statement ID.
- Idempotent
Inputs
statement_idstringrequired- The ID of the SQL statement to cancel.
databricksworkspace_sql_statement_executeExecute a SQL statement on a Databricks SQL warehouse and return the results.WriteExecute SQL Statement
Execute a SQL statement on a Databricks SQL warehouse and return the results.
Inputs
statementstringrequired- The SQL statement to execute.
warehouse_idstringrequired- The ID of the SQL warehouse to execute the statement on.
catalogstring- The catalog to use for the statement execution.
schemastring- The schema to use for the statement execution.
databricksworkspace_sql_warehouse_startStart a stopped Databricks SQL warehouse by its ID.WriteStart SQL Warehouse
Start a stopped Databricks SQL warehouse by its ID.
Inputs
warehouse_idstringrequired- The ID of the SQL warehouse to start.
databricksworkspace_sql_warehouse_stopStop a running Databricks SQL warehouse by its ID.WriteStop SQL Warehouse
Stop a running Databricks SQL warehouse by its ID.
Inputs
warehouse_idstringrequired- The ID of the SQL warehouse to stop.
databricksworkspace_workspace_importImport a notebook into the Databricks workspace from base64-encoded content.WriteImport Workspace Object
Import a notebook into the Databricks workspace from base64-encoded content. Can also be used to create a notebook from source text.
- Idempotent
Inputs
content_base64stringrequired- Base64-encoded content of the notebook to import.
pathstringrequired- The absolute workspace path to import the notebook to.
formatstring- Format of the content being importedone of
DBCHTMLJUPYTERSOURCEdefaultSOURCE languagestring- Programming language of the notebook, required when format is SOURCEone of
PYTHONRSCALASQL overwriteboolean- Whether to overwrite an existing object at the destination pathdefault
false
databricksworkspace_cluster_permanent_deletePermanently delete a Databricks cluster by cluster ID.DestructivePermanently Delete Cluster
Permanently delete a Databricks cluster by cluster ID. Unlike terminating a cluster, this removes it entirely and it can no longer be started or listed. This action is irreversible.
Inputs
cluster_idstringrequired- The unique identifier of the cluster to permanently delete.
databricksworkspace_cluster_terminateTerminate a Databricks cluster by cluster ID.DestructiveTerminate Cluster
Terminate a Databricks cluster by cluster ID. The cluster will be deleted and all its associated resources released.
Inputs
cluster_idstringrequired- The unique identifier of the cluster to terminate.
databricksworkspace_dbfs_deletePermanently delete a file or directory from the Databricks File System (DBFS).DestructiveDelete DBFS File
Permanently delete a file or directory from the Databricks File System (DBFS). This action is irreversible.
- Idempotent
Inputs
pathstringrequired- The DBFS path of the file or directory to delete.
recursiveboolean- Whether to recursively delete a directory and its contentsdefault
false
databricksworkspace_job_deleteDelete a Databricks job by job ID.DestructiveDelete Job
Delete a Databricks job by job ID. Active runs are not stopped; the job is removed once its runs finish.
Inputs
job_idintegerrequired- The unique identifier of the job to delete.
databricksworkspace_repo_deletePermanently remove a Git repo from the Databricks workspace.DestructiveDelete Repo
Permanently remove a Git repo from the Databricks workspace. This unlinks the repo and deletes its workspace files; it does not affect the remote Git repository. This action is irreversible.
- Idempotent
Inputs
repo_idstringrequired- The ID of the repo to delete.
databricksworkspace_secret_deleteDelete a secret key from a Databricks secret scope.DestructiveDelete Secret
Delete a secret key from a Databricks secret scope. This action is irreversible.
- Idempotent
Inputs
keystringrequired- The key name of the secret to delete.
scopestringrequired- The name of the secret scope containing the key.
databricksworkspace_workspace_deletePermanently delete a notebook or directory from the Databricks workspace.DestructiveDelete Workspace Object
Permanently delete a notebook or directory from the Databricks workspace. This action is irreversible.
- Idempotent
Inputs
pathstringrequired- The absolute workspace path of the object to delete.
recursiveboolean- Whether to recursively delete a directory and its contentsdefault
false
No tools match.