Databricks Permissions MCP Server

by JustTryAI

168 downloads
Not rated
GitHub

About

MCP server for managing Databricks permissions and credentials

Details

Author
JustTryAI
Downloads
168
Categories
Other

- MCP protocol support for LLM integration
- Databricks API secure access for permissions
- Comprehensive permission management tools
- Git credentials management (CRUD)
- Async support for efficient operation

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Databricks Permissions MCP Server
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Clone the repository, set up a Python virtual environment with Python 3.10+, install dependencies with pip install -e ., and configure the environment variables DATABRICKS_HOST and DATABRICKS_TOKEN. Run the server using ./start_mcp_server.sh (Linux/Mac) or .\start_mcp_server.ps1 (Windows), or add a custom command in Claude Desktop pointing to python -m src.server.databricks_permissions_mcp_server.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "databricks permissions mcp server": {
            "databricks-permissions-mcp-server": {
                "command": "python",
                "args": [
                    "-m",
                    "venv",
                    ".venv"
                ]
            }
        }
    }
}

McpServers

{
    "databricks-permissions-mcp-server": {
        "command": "python",
        "args": [
            "-m",
            "venv",
            ".venv"
        ]
    }
}

Databricks Permissions MCP Server

A Model Completion Protocol (MCP) server that provides access to Databricks permissions, credentials, and Git credentials via the MCP protocol. This allows LLM-powered tools like Claude to interact with Databricks permissions management systems.

Features

- MCP Protocol Support: Implements the MCP protocol to allow LLMs to manage Databricks permissions
- Databricks API Integration: Provides secure access to Databricks permissions REST APIs
- Permission Management: Comprehensive tools for managing permissions on various Databricks resources
- Git Credentials Management: Tools for creating, listing, updating, and deleting Git credentials
- Async Support: Built with asyncio for efficient operation

Available Tools

The Databricks Permissions MCP Server exposes the following tools:

Permissions Management

- get_permissions: Get permissions for a Databricks object - set_permissions: Set permissions for a Databricks object - update_permissions: Update permissions for a Databricks object - get_permission_levels: Get available permission levels for a Databricks object type

Resource-Specific Permissions

- get_cluster_permissions: Get permissions for a cluster - set_cluster_permissions: Set permissions for a cluster - update_cluster_permissions: Update permissions for a cluster - get_job_permissions: Get permissions for a job - set_job_permissions: Set permissions for a job - get_warehouse_permissions: Get permissions for a SQL warehouse - get_workspace_object_permissions: Get permissions for a workspace object (notebooks, directories)

Service Principals

- list_service_principals: List all service principals in the workspace - get_service_principal: Get details of a specific service principal - create_service_principal: Create a new service principal - update_service_principal: Update an existing service principal - delete_service_principal: Delete a service principal

Unity Catalog Permissions

- get_catalog_permissions: Get permissions for a Unity Catalog catalog - get_schema_permissions: Get permissions for a Unity Catalog schema - get_table_permissions: Get permissions for a Unity Catalog table

Git Credentials Management

- list_git_credentials: List all Git credentials - create_git_credential: Create a new Git credential - update_git_credential: Update an existing Git credential - delete_git_credential: Delete a Git credential

Installation

Prerequisites

- Python 3.10 or higher
- MCP-compatible client (e.g., Claude Desktop)

Setup

1. Clone the repository:

   git clone https://github.com/yourusername/databricks-permissions-mcp-server.git
cd databricks-permissions-mcp-server

2. Set up the project:

   # Create and activate virtual environment
python -m venv .venv

# On Windows
.\.venv\Scripts\activate

# On Linux/Mac
source .venv/bin/activate

# Install dependencies in development mode
pip install -e .

3. Set up environment variables:

   # Windows
set DATABRICKS_HOST=https://your-databricks-instance.azuredatabricks.net
set DATABRICKS_TOKEN=your-personal-access-token

# Linux/Mac
export DATABRICKS_HOST=https://your-databricks-instance.azuredatabricks.net
export DATABRICKS_TOKEN=your-personal-access-token

You can also create an .env file based on the .env.example template.

Running the MCP Server

To start the MCP server, run:

```bash

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.