Skip to content

Databricks SQL Query Tool

Run SQL against Databricks workspace tables with either CLI profile or direct host/token authentication.

Terminal window
uv add crewai-tools[databricks-sdk]
  • DATABRICKS_CONFIG_PROFILE or (DATABRICKS_HOST + DATABRICKS_TOKEN)

Create a personal access token and find host details in the Databricks workspace under User Settings → Developer. Docs: https://docs.databricks.com/en/dev-tools/auth/pat.html

from crewai import Agent, Task, Crew
from crewai_tools import DatabricksQueryTool
tool = DatabricksQueryTool(
default_catalog="main",
default_schema="default",
)
agent = Agent(
role="Data Analyst",
goal="Query Databricks",
tools=[tool],
verbose=True,
)
task = Task(
description="SELECT * FROM my_table LIMIT 10",
expected_output="10 rows",
agent=agent,
)
crew = Crew(
agents=[agent],
tasks=[task],
verbose=True,
)
result = crew.kickoff()
print(result)
  • query (required): SQL query to execute
  • catalog (optional): Override default catalog
  • db_schema (optional): Override default schema
  • warehouse_id (optional): Override default SQL warehouse
  • row_limit (optional): Maximum rows to return (default: 1000)
  • default_catalog
  • default_schema
  • default_warehouse_id
  • Authentication errors: verify DATABRICKS_HOST begins with https:// and token is valid.
  • Permissions: ensure your SQL warehouse and schema are accessible by your token.
  • Limits: long‑running queries should be avoided in agent loops; add filters/limits.