Databricks

Your Databricks Lakehouse in natural language: run SQL on your SQL warehouses, track long-running qu

Should I use this

Quality & Safety

B
Description quality
97%
Schema completeness
68%
Naming quality
81%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (1)

  • LOWTool 'connect' description lacks action verbin connect

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~2,794Tokens (tool definitions)
~761 BTypical response size
Significant attention impact (2.18% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "databricks-mcp": {
      "url": "https://api.mcp.ai/p_databricks"
    }
  }
}

Remote endpoints

https://api.mcp.ai/p_databricksstreamable-http

What it can do

Tool inventory

Tools (17)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢databricks_list_accounts(account)

Lista os workspaces Databricks conectados a este install — host, label.

Input Schema

{
  "type": "object",
  "properties": {
    "account": {
      "type": "string"
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢databricks_current_user(account)

Identifica o usuário do PAT no workspace (whoami via SCIM Me). Útil pra confirmar qual conta/host está conectado e validar o token.

Input Schema

{
  "type": "object",
  "properties": {
    "account": {
      "type": "string"
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢databricks_list_warehouses(account)

Lista os SQL warehouses do workspace (id, name, state, cluster_size, warehouse_type). Use o `id` em databricks_run_sql (ou deixe o run_sql escolher um RUNNING automaticamente).

Input Schema

{
  "type": "object",
  "properties": {
    "account": {
      "type": "string"
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢databricks_get_warehouse(ids, account)

Detalha um ou mais SQL warehouses por id. Aceita lista (`ids`).

Input Schema

{
  "type": "object",
  "properties": {
    "ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "account": {
      "type": "string"
    }
  },
  "required": [
    "ids"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢databricks_run_sql(statement, warehouse_id, catalog, schema, parameters, ...)

Executa uma instrução SQL num SQL warehouse (Statement Execution API). Retorna colunas + linhas quando termina dentro do wait_timeout; senão devolve statement_id + state pra polling via databricks_get_statement. Se `warehouse_id` não for informado, escolhe um warehouse RUNNING automaticamente. PREFIRA queries parametrizadas (`parameters`) a interpolar valores na string (proteção contra SQL injection). SQL é arbitrário (pode DML/DDL) — confirme antes de mutar dados. Bulk support: accepts warehouse_ids for batched execution.

Input Schema

{
  "type": "object",
  "properties": {
    "statement": {
      "type": "string"
    },
    "warehouse_id": {
      "type": "string"
    },
    "catalog": {
      "type": "string"
    },
    "schema": {
      "type": "string"
    },
    "parameters": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "value": {
            "type": "string"
          },
          "type": {
            "type": "string"
          }
        },
        "required": [
          "name",
          "value"
        ]
      }
    },
    "row_limit": {
      "type": "number"
    },
    "wait_timeout": {
      "type": "string"
    },
    "on_wait_timeout": {
      "type": "string",
      "enum": [
        "CONTINUE",
        "CANCEL"
      ]
    },
    "account": {
      "type": "string"
    },
    "warehouse_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "statement"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢databricks_get_statement(statement_ids, account)

Status + resultado de um ou mais statements por id (polling de queries longas que voltaram PENDING/RUNNING do run_sql). Aceita lista (`statement_ids`).

Input Schema

{
  "type": "object",
  "properties": {
    "statement_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "account": {
      "type": "string"
    }
  },
  "required": [
    "statement_ids"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🔴databricks_cancel_statement(statement_ids, account)

Cancela um ou mais statements em execução por id. Aceita lista (`statement_ids`).

Input Schema

{
  "type": "object",
  "properties": {
    "statement_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "account": {
      "type": "string"
    }
  },
  "required": [
    "statement_ids"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢databricks_list_catalogs(account)

Lista os catálogos do Unity Catalog visíveis ao PAT (name, comment, owner).

Input Schema

{
  "type": "object",
  "properties": {
    "account": {
      "type": "string"
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢databricks_list_schemas(catalog_name, account)

Lista os schemas (databases) de um catálogo Unity. Informe `catalog_name`.

Input Schema

{
  "type": "object",
  "properties": {
    "catalog_name": {
      "type": "string"
    },
    "account": {
      "type": "string"
    }
  },
  "required": [
    "catalog_name"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢databricks_list_tables(catalog_name, schema_name, account)

Lista as tabelas de um schema Unity (name, table_type, data_source_format). Informe `catalog_name` e `schema_name`.

Input Schema

{
  "type": "object",
  "properties": {
    "catalog_name": {
      "type": "string"
    },
    "schema_name": {
      "type": "string"
    },
    "account": {
      "type": "string"
    }
  },
  "required": [
    "catalog_name",
    "schema_name"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢databricks_get_table(full_names, account)

Detalha uma ou mais tabelas (colunas, tipos) por nome completo `catalog.schema.table`. Aceita lista (`full_names`).

Input Schema

{
  "type": "object",
  "properties": {
    "full_names": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "account": {
      "type": "string"
    }
  },
  "required": [
    "full_names"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢show_version

Show the current MCP platform and adapter versions.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡report_bug(message, context, conversation)

Report a bug, missing feature, or send feedback. Include the conversation array with recent messages for reproduction.

Input Schema

{
  "type": "object",
  "properties": {
    "message": {
      "type": "string"
    },
    "context": {
      "default": "",
      "type": "string"
    },
    "conversation": {
      "default": "[]",
      "type": "string"
    }
  },
  "required": [
    "message"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢connect

Returns connection status and URLs. When all providers are connected, returns authenticated:true and empty pending[]. When credentials are missing, returns connect_url for the toolkit and per-install URLs.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢toolkit_info

Returns the current toolkit state: installed MCPs, their connection status, the accounts connected to each one, and how many catalog tools each exposes.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡marketplace(action, query, mcp_id, limit, tier_slug, ...)

The official mcp.ai marketplace — the in-platform catalog of every MCP/tool, AND the way to run them. Covers capability requests like "find an MCP that does X", "consulta um CPF", "is there a tool for Y". Core flow: action=search discovers MCPs by intent → describe returns one MCP's full profile (every tool with its id + params, pricing, auth) so you pick the right tool_id → invoke RUNS that tool. KEY: invoke works even when the MCP is NOT installed — it runs the tool pontualmente (one-off), without adding the MCP to the toolkit and without bloating the tool list. If the MCP needs a credential/login, invoke returns a connect link; if it is paid and the wallet is empty, invoke returns a checkout/top-up link (the user opens it, then you retry). Use install only to make an MCP PERMANENT in the active toolkit (its tools then show up natively in future sessions); prefer invoke for a single/occasional use. list_tools lists what is callable right now. subscribe/cancel handle per-MCP billing; report_bug sends feedback; request_mcp asks us to build a NEW MCP when nothing fits. Search/describe flag installed_in_toolkit vs installed_in_workspace. Writes (install/uninstall/subscribe/cancel and the one-off install behind invoke) require workspace owner/admin. It also carries the mcp.ai PROMPT LIBRARY, which is about ready-made prompt TEXT rather than MCPs: search_prompts finds one, get_prompt returns its full text with {{variables}} filled, and publish_prompt saves a prompt and returns a shareable mcp.ai/p/<slug> link that opens without login.

Input Schema

{
  "type": "object",
  "properties": {
    "action": {
      "default": "search",
      "type": "string",
      "enum": [
        "search",
        "describe",
        "install",
        "uninstall",
        "subscribe",
        "cancel",
        "resume",
        "report_bug",
        "request_mcp",
        "list_tools",
        "invoke",
        "search_prompts",
        "get_prompt",
        "publish_prompt"
      ]
    },
    "query": {
      "default": "",
      "type": "string"
    },
    "mcp_id": {
      "default": "",
      "type": "string"
    },
    "limit": {
      "default": 10,
      "type": "number"
    },
    "tier_slug": {
      "default": "",
      "type": "string"
    },
    "immediate": {
      "default": false,
      "type": "boolean"
    },
    "cancel_reason": {
      "type": "string",
      "enum": [
        "too_expensive",
        "missing_features",
        "switched_service",
        "unused",
        "customer_service",
        "too_complex",
        "low_quality",
        "other"
      ]
    },
    "cancel_comment": {
      "default": "",
      "type": "string"
    },
    "message": {
      "default": "",
      "type": "string"
    },
    "report_context": {
      "default": "",
      "type": "string"
    },
    "conversation": {
      "default": "[]",
      "type": "string"
    },
    "request_name": {
      "default": "",
      "type": "string"
    },
    "request_details": {
      "default": "",
      "type": "string"
    },
    "tool_id": {
      "default": "",
      "type": "string"
    },
    "arguments": {
      "default": "{}",
      "type": "string"
    },
    "prompt_slug": {
      "default": "",
      "type": "string"
    },
    "prompt_vars": {
      "default": "{}",
      "type": "string"
    },
    "prompt_category": {
      "default": "",
      "type": "string"
    },
    "prompt_tool": {
      "default": "",
      "type": "string"
    },
    "prompt_title": {
      "default": "",
      "type": "string"
    },
    "prompt_description": {
      "default": "",
      "type": "string"
    },
    "prompt_body": {
      "default": "",
      "type": "string"
    },
    "prompt_targets": {
      "default": [],
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "claude",
          "chatgpt",
          "cursor",
          "lovable"
        ]
      }
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡authenticate(token)

MCP.AI for IDE agents (Cursor, etc.): log in in the browser, copy the access token. Best: add it to this server's config as a header `Authorization: Bearer <token>` for a permanent, non-expiring connection. Or paste it here for a session-only login: call with { token: "<jwt>" } after the user pastes, or with no args to get the link.

Input Schema

{
  "type": "object",
  "properties": {
    "token": {
      "type": "string"
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded17 tools
verifiedversion not recorded17 tools
verifiedversion not recorded17 tools
verifiedversion not recorded17 tools
verifiedversion not recorded17 tools
verifiedversion not recorded17 tools