FabricFabric
Databricks

Discovery & health

Discover catalogs, schemas, tables, warehouses, clusters, and jobs from chat, and validate your Databricks source with live health tests.

Fabric Agents can automatically discover Databricks resources and run an enhanced health check against your workspace. Both use the credentials of your configured Databricks source.

Discovery tools

Nine session tools are available to the agent whenever a Databricks source is configured. All are read-only and allowed in Safe/Explore mode:

ToolDatabricks APIReturns
databricks_discover_catalogsGET /api/2.1/unity-catalog/catalogsUnity Catalog catalogs
databricks_discover_schemasGET /api/2.1/unity-catalog/schemasSchemas in a catalog
databricks_discover_tablesGET /api/2.1/unity-catalog/tablesTables in a schema
databricks_discover_warehousesGET /api/2.0/sql/warehousesSQL warehouses
databricks_discover_clustersGET /api/2.1/clusters/listClusters
databricks_discover_jobsGET /api/2.1/jobs/listJobs
databricks_discover_genie_spacesGET /api/2.0/genie/spacesGenie spaces (empty if Genie is unavailable)
databricks_discover_vector_indexesGET /api/2.0/vector-search/indexesVector Search indexes (empty if unavailable)
databricks_discover_pipelinesGET /api/2.1/pipelinesLakeflow (DLT) pipelines

List endpoints follow next_page_token pagination automatically (up to 10 pages), so large workspaces are no longer truncated to the first page. Every request carries a User-Agent: fabric-agents/<version> header, so agent traffic is identifiable in Databricks audit logs, and all requests are host-validated, HTTPS-only, and never follow redirects.

Consumption reporting

A tenth tool, databricks_consumption_report, aggregates per-source cost, DBU, and token usage captured from Databricks API responses during the current app run — optionally including data-lineage events extracted from SQL statements the agent executed. Figures are best-effort attribution held in memory, not billing data; for authoritative costs, query system.billing.usage (see Platform services).

Example prompts

Ask the agent naturally — it maps your request to the appropriate tool:

PromptWhat it does
"List catalogs"Calls GET /api/2.1/unity-catalog/catalogs
"Show tables in main.default"Calls GET /api/2.1/unity-catalog/tables?catalog_name=main&schema_name=default
"List SQL warehouses"Calls GET /api/2.0/sql/warehouses
"Show clusters"Calls GET /api/2.1/clusters/list
"List jobs"Calls GET /api/2.1/jobs/list

Discovery permissions

ResourceMinimum privilegeWhy
CatalogsBROWSE + USE CATALOGRequired to list and access catalogs
SchemasUSE SCHEMARequired to list schemas within a catalog
TablesBROWSE (list) / SELECT (read)BROWSE for discovery; SELECT for data
ClustersCAN VIEWRequired to list clusters
JobsCAN VIEWRequired to list jobs
SQL WarehousesCAN USERequired to list and query warehouses

Scaffold enrichment

Discovery also powers project scaffolding: when you run databricks init through the chat agent with a connected source, the handler discovers your first running warehouse, default catalog and schema, and first Genie space, then pre-fills the scaffolded project's .env.example with those non-secret IDs. See Harness bridge.

Live health tests

source test performs a live validation of your Databricks source in three stages:

  1. Authentication — probes GET /api/2.0/preview/scim/v2/Me to verify the PAT or OAuth token is valid.
  2. Unity Catalog reachability — lists catalogs to confirm BROWSE + USE CATALOG grants are present.
  3. Compute visibility — lists SQL warehouses and clusters to confirm workspace permissions.

The result includes per-endpoint status lines and discovered resource counts (e.g. Connected. Found 4 catalogs, 2 warehouses, 3 clusters).

Running the test

fabric-cli source test databricks-pat
# or
fabric-cli source test databricks-oauth
# or
fabric-cli source test databricks-oauth-u2m

Interpreting results

ResultMeaning
connectedAll checks passed. The source is ready for discovery and queries.
errorAuthentication failed (401). Check credentials — regenerate the PAT or re-run the OAuth flow.
disconnectedThe workspace is unreachable or endpoints returned server errors. Check the URL and network.
Warnings (⚠) on individual endpointsAuth works but a specific API is unavailable or blocked. Verify the corresponding grants (e.g. BROWSE + USE CATALOG for Unity Catalog).

On this page