Skip to main content
Glama

Сервер Databricks MCP

Это сервер Model Context Protocol (MCP) для выполнения SQL-запросов к Databricks с использованием API Statement Execution. Он может извлекать данные, выполняя SQL-запросы с использованием API Databricks. При использовании в режиме агента он может успешно выполнять итерации по нескольким запросам для выполнения сложных задач. Он становится еще лучше в сочетании с метаданными Unity Catalog.

Функции

  • Выполнение SQL-запросов на Databricks

  • Перечислить доступные схемы в каталоге

  • Список таблиц в схеме

  • Опишите схемы таблиц

Related MCP server: MCP MySQL App

Настраивать

Системные требования

  • Питон 3.10+

  • Если вы планируете установку через uv , убедитесь, что он установлен

Установка

  1. Установите необходимые зависимости:

pip install -r requirements.txt

Или, если использовать uv :

uv pip install -r requirements.txt
  1. Настройте переменные среды:

    Вариант 1: использование файла .env (рекомендуется)

    Создайте файл .env с вашими учетными данными Databricks:

    DATABRICKS_HOST=your-databricks-instance.cloud.databricks.com DATABRICKS_TOKEN=your-databricks-access-token DATABRICKS_SQL_WAREHOUSE_ID=your-sql-warehouse-id

    Вариант 2: Настройка переменных среды напрямую

    export DATABRICKS_HOST="your-databricks-instance.cloud.databricks.com" export DATABRICKS_TOKEN="your-databricks-access-token" export DATABRICKS_SQL_WAREHOUSE_ID="your-sql-warehouse-id"

Идентификатор хранилища SQL можно найти в пользовательском интерфейсе Databricks в разделе «Хранилища SQL».

Требования к разрешениям

Перед использованием этого сервера MCP убедитесь, что:

  1. Разрешения хранилища SQL : пользователь, связанный с предоставленным токеном, должен иметь соответствующие разрешения для доступа к указанному хранилищу SQL. Вы можете настроить разрешения хранилища в пользовательском интерфейсе Databricks в разделе Хранилища SQL > [Ваш склад] > Разрешения.

  2. Разрешения токена : используемый личный токен доступа должен иметь минимально необходимые разрешения для выполнения требуемых операций. Настоятельно рекомендуется:

    • Создайте специальный токен специально для этого приложения.

    • По возможности предоставляйте разрешения только на чтение, чтобы ограничить риски безопасности.

    • Избегайте использования токенов с правами администратора на уровне всего рабочего пространства.

  3. Разрешения на доступ к данным : Пользователь, связанный с токеном, должен иметь соответствующие разрешения на доступ к каталогам, схемам и таблицам, которые будут запрашиваться.

Чтобы установить разрешения хранилища SQL через REST API Databricks, вы можете использовать:

  • GET /api/2.0/sql/permissions/warehouses/{warehouse_id} для проверки текущих разрешений

  • PATCH /api/2.0/sql/permissions/warehouses/{warehouse_id} для обновления разрешений

Для обеспечения безопасности рассмотрите возможность регулярной ротации токенов доступа и аудита истории запросов для отслеживания использования.

Запуск сервера

Автономный режим

Для запуска сервера в автономном режиме:

python main.py

Это запустит сервер MCP с использованием транспорта stdio, который можно использовать с Agent Composer или другими клиентами MCP.

Использование с курсором

Чтобы использовать этот MCP-сервер с Cursor , вам необходимо настроить его в настройках Cursor:

  1. Создайте каталог .cursor в вашем домашнем каталоге, если он еще не существует.

  2. Создайте или отредактируйте файл mcp.json в этом каталоге:

mkdir -p ~/.cursor touch ~/.cursor/mcp.json
  1. Добавьте следующую конфигурацию в файл mcp.json , заменив путь к каталогу фактическим путем к месту установки этого сервера:

{ "mcpServers": { "databricks": { "command": "uv", "args": [ "--directory", "/path/to/your/mcp-databricks-server", "run", "main.py" ] } } }

Если вы не используете uv , вы можете вместо этого использовать python :

{ "mcpServers": { "databricks": { "command": "python", "args": [ "/path/to/your/mcp-databricks-server/main.py" ] } } }
  1. Перезапустите курсор, чтобы применить изменения.

Теперь вы можете использовать сервер Databricks MCP непосредственно в ИИ-помощнике Cursor.

Доступные инструменты

Сервер предоставляет следующие инструменты:

  1. execute_sql_query : выполнить SQL-запрос и вернуть результаты

    execute_sql_query(sql: str) -> str
  2. list_schemas : Список всех доступных схем в определенном каталоге

    list_schemas(catalog: str) -> str
  3. list_tables : список всех таблиц в определенной схеме

    list_tables(schema: str) -> str
  4. describe_table : Описать схему таблицы

    describe_table(table_name: str) -> str

Пример использования

В Agent Composer или других клиентах MCP вы можете использовать следующие инструменты:

execute_sql_query("SELECT * FROM my_schema.my_table LIMIT 10") list_schemas("my_catalog") list_tables("my_catalog.my_schema") describe_table("my_catalog.my_schema.my_table")

Обработка длительных запросов

Сервер предназначен для обработки длительных запросов путем опроса API Databricks до тех пор, пока запрос не завершится или не истечет время ожидания. Тайм-аут по умолчанию составляет 10 минут (60 повторных попыток с 10-секундными интервалами), при необходимости его можно настроить в файле dbapi.py .

Зависимости

  • httpx: Для выполнения HTTP-запросов к API Databricks

  • python-dotenv: Для загрузки переменных среды из файла .env

  • mcp: Библиотека протокола контекста модели

  • asyncio: Для асинхронных операций

-
security - not tested
A
license - permissive license
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/RafaelCartenet/mcp-databricks-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server