remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Integrations
Supports configuration through .env files for storing and loading Databricks credentials and connection settings.
Executes SQL queries against Databricks using the Statement Execution API, allowing data retrieval, schema listing, table enumeration, and table schema description through the Databricks platform.
Built on Python with requirements for Python 3.10+ runtime environment.
Servidor MCP de Databricks
Este es un servidor de Protocolo de Contexto de Modelo (MCP) para ejecutar consultas SQL en Databricks mediante la API de Ejecución de Instrucciones. Puede recuperar datos mediante solicitudes SQL mediante la API de Databricks. Al usarlo en modo Agente, puede iterar con éxito varias solicitudes para realizar tareas complejas. Su funcionamiento es aún mejor cuando se combina con los metadatos del catálogo de Unity.
Características
- Ejecutar consultas SQL en Databricks
- Listar los esquemas disponibles en un catálogo
- Listar tablas en un esquema
- Describir esquemas de tablas
Configuración
Requisitos del sistema
- Python 3.10+
- Si planea instalarlo mediante
uv
, asegúrese de que esté instalado
Instalación
- Instale las dependencias necesarias:
O si usas uv
:
- Configure sus variables de entorno:Opción 1: Usar un archivo .env (recomendado)Crea un archivo .env con tus credenciales de Databricks:Opción 2: Establecer variables de entorno directamenteCopyCopy
Puede encontrar el ID de su almacén SQL en la interfaz de usuario de Databricks, en Almacenes SQL.
Requisitos de permisos
Antes de utilizar este servidor MCP, asegúrese de que:
- Permisos del almacén SQL : El usuario asociado al token proporcionado debe tener los permisos adecuados para acceder al almacén SQL especificado. Puede configurar los permisos del almacén en la interfaz de usuario de Databricks, en Almacenes SQL > [Su almacén] > Permisos.
- Permisos del token : El token de acceso personal utilizado debe tener los permisos mínimos necesarios para realizar las operaciones requeridas. Se recomienda encarecidamente:
- Crea un token dedicado específicamente para esta aplicación
- Otorgar permisos de solo lectura cuando sea posible para limitar los riesgos de seguridad
- Evite usar tokens con privilegios de administrador en todo el espacio de trabajo
- Permisos de acceso a datos : el usuario asociado con el token debe tener los permisos adecuados para acceder a los catálogos, esquemas y tablas que se consultarán.
Para configurar los permisos del almacén de SQL a través de la API REST de Databricks, puede usar:
GET /api/2.0/sql/permissions/warehouses/{warehouse_id}
para comprobar los permisos actualesPATCH /api/2.0/sql/permissions/warehouses/{warehouse_id}
para actualizar los permisos
Para obtener las mejores prácticas de seguridad, considere rotar periódicamente sus tokens de acceso y auditar el historial de consultas para monitorear el uso.
Ejecución del servidor
Modo independiente
Para ejecutar el servidor en modo independiente:
Esto iniciará el servidor MCP utilizando el transporte stdio, que se puede usar con Agent Composer u otros clientes MCP.
Uso con cursor
Para utilizar este servidor MCP con Cursor , debe configurarlo en la configuración de Cursor:
- Cree un directorio
.cursor
en su directorio de inicio si aún no existe - Crea o edita el archivo
mcp.json
en ese directorio:
- Agregue la siguiente configuración al archivo
mcp.json
, reemplazando la ruta del directorio con la ruta real donde instaló este servidor:
Si no estás usando uv
, puedes usar python
en su lugar:
- Reinicie el cursor para aplicar los cambios
Ahora puedes usar el servidor Databricks MCP directamente dentro del asistente de inteligencia artificial de Cursor.
Herramientas disponibles
El servidor proporciona las siguientes herramientas:
execute_sql_query
: ejecuta una consulta SQL y devuelve los resultadosCopylist_schemas
: enumera todos los esquemas disponibles en un catálogo específicoCopylist_tables
: enumera todas las tablas en un esquema específicoCopydescribe_table
: Describe el esquema de una tablaCopy
Ejemplo de uso
En Agent Composer u otros clientes MCP, puede utilizar estas herramientas como:
Manejo de consultas de larga duración
El servidor está diseñado para gestionar consultas de larga duración consultando la API de Databricks hasta que la consulta se complete o se agote el tiempo de espera. El tiempo de espera predeterminado es de 10 minutos (60 reintentos con intervalos de 10 segundos), que se puede ajustar en el archivo dbapi.py
si es necesario.
Dependencias
- httpx: Para realizar solicitudes HTTP a la API de Databricks
- python-dotenv: para cargar variables de entorno desde el archivo .env
- mcp: La biblioteca del protocolo de contexto del modelo
- asyncio: Para operaciones asincrónicas
This server cannot be installed
Este es un servidor de Protocolo de Contexto de Modelo (MCP) para ejecutar consultas SQL en Databricks mediante la API de Ejecución de Instrucciones. Permite a los asistentes de IA consultar directamente los almacenes de datos de Databricks, analizar esquemas de bases de datos y recuperar resultados de consultas en un formato estructurado.
- Features
- Setup
- Permissions Requirements
- Running the Server
- Available Tools
- Example Usage
- Handling Long-Running Queries
- Dependencies