Skip to main content
Glama

데이터브릭스 MCP 서버

Databricks용 모델 완성 프로토콜(MCP) 서버로, MCP 프로토콜을 통해 Databricks 기능에 액세스할 수 있도록 합니다. 이를 통해 LLM 기반 도구가 Databricks 클러스터, 작업, 노트북 등과 상호 작용할 수 있습니다.

특징

  • MCP 프로토콜 지원 : LLM이 Databricks와 상호 작용할 수 있도록 MCP 프로토콜을 구현합니다.

  • Databricks API 통합 : Databricks REST API 기능에 대한 액세스를 제공합니다.

  • 도구 등록 : Databricks 기능을 MCP 도구로 노출합니다.

  • 비동기 지원 : 효율적인 작업을 위해 asyncio로 구축됨

Related MCP server: mcp-lancedb

사용 가능한 도구

Databricks MCP 서버는 다음과 같은 도구를 제공합니다.

  • list_clusters : 모든 Databricks 클러스터를 나열합니다.

  • create_cluster : 새로운 Databricks 클러스터를 생성합니다.

  • terminate_cluster : Databricks 클러스터 종료

  • get_cluster : 특정 Databricks 클러스터에 대한 정보를 가져옵니다.

  • start_cluster : 종료된 Databricks 클러스터를 시작합니다.

  • list_jobs : 모든 Databricks 작업 나열

  • run_job : Databricks 작업 실행

  • list_notebooks : 작업 공간 디렉토리에 있는 노트북을 나열합니다.

  • export_notebook : 작업 공간에서 노트북을 내보냅니다.

  • list_files : DBFS 경로에 있는 파일과 디렉토리를 나열합니다.

  • execute_sql : SQL 문을 실행합니다.

설치

필수 조건

  • Python 3.10 이상

  • uv 패키지 관리자(MCP 서버에 권장)

설정

  1. uv 아직 없다면 설치하세요:

    지엑스피1

    설치 후 터미널을 다시 시작하세요.

  2. 저장소를 복제합니다.

    git clone https://github.com/JustTryAI/databricks-mcp-server.git cd databricks-mcp-server
  3. uv 로 프로젝트를 설정합니다:

    # Create and activate virtual environment uv venv # On Windows .\.venv\Scripts\activate # On Linux/Mac source .venv/bin/activate # Install dependencies in development mode uv pip install -e . # Install development dependencies uv pip install -e ".[dev]"
  4. 환경 변수 설정:

    # 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

    .env.example 템플릿을 기반으로 .env 파일을 만들 수도 있습니다.

MCP 서버 실행

MCP 서버를 시작하려면 다음을 실행하세요.

# Windows .\start_mcp_server.ps1 # Linux/Mac ./start_mcp_server.sh

이 래퍼 스크립트는 scripts 디렉터리에 있는 실제 서버 스크립트를 실행합니다. 서버가 시작되고 MCP 프로토콜 연결을 허용할 준비가 됩니다.

스크립트 디렉토리에서 서버 스크립트를 직접 실행할 수도 있습니다.

# Windows .\scripts\start_mcp_server.ps1 # Linux/Mac ./scripts/start_mcp_server.sh

Databricks 리소스 쿼리

저장소에는 Databricks 리소스를 빠르게 볼 수 있는 유틸리티 스크립트가 포함되어 있습니다.

# View all clusters uv run scripts/show_clusters.py # View all notebooks uv run scripts/show_notebooks.py

프로젝트 구조

databricks-mcp-server/ ├── src/ # Source code │ ├── __init__.py # Makes src a package │ ├── __main__.py # Main entry point for the package │ ├── main.py # Entry point for the MCP server │ ├── api/ # Databricks API clients │ ├── core/ # Core functionality │ ├── server/ # Server implementation │ │ ├── databricks_mcp_server.py # Main MCP server │ │ └── app.py # FastAPI app for tests │ └── cli/ # Command-line interface ├── tests/ # Test directory ├── scripts/ # Helper scripts │ ├── start_mcp_server.ps1 # Server startup script (Windows) │ ├── run_tests.ps1 # Test runner script │ ├── show_clusters.py # Script to show clusters │ └── show_notebooks.py # Script to show notebooks ├── examples/ # Example usage ├── docs/ # Documentation └── pyproject.toml # Project configuration

프로젝트 구조에 대한 자세한 내용은 project_structure.md 참조하세요.

개발

코드 표준

  • Python 코드는 최대 줄 길이가 100자인 PEP 8 스타일 가이드를 따릅니다.

  • 들여쓰기에는 공백 4개를 사용하세요(탭 없음)

  • 문자열에는 큰따옴표를 사용하세요

  • 모든 클래스, 메서드 및 함수에는 Google 스타일 docstring이 있어야 합니다.

  • 테스트를 제외한 모든 코드에는 유형 힌트가 필요합니다.

린팅

이 프로젝트에서는 다음과 같은 린팅 도구를 사용합니다.

# Run all linters uv run pylint src/ tests/ uv run flake8 src/ tests/ uv run mypy src/

테스트

이 프로젝트에서는 테스트를 위해 pytest를 사용합니다. 테스트를 실행하려면 다음을 수행하세요.

# Run all tests with our convenient script .\scripts\run_tests.ps1 # Run with coverage report .\scripts\run_tests.ps1 -Coverage # Run specific tests with verbose output .\scripts\run_tests.ps1 -Verbose -Coverage tests/test_clusters.py

pytest를 사용하여 직접 테스트를 실행할 수도 있습니다.

# Run all tests uv run pytest tests/ # Run with coverage report uv run pytest --cov=src tests/ --cov-report=term-missing

이 프로젝트의 목표는 최소 80%의 코드 커버리지입니다.

선적 서류 비치

  • API 문서는 Sphinx를 사용하여 생성되며 docs/api 디렉토리에서 찾을 수 있습니다.

  • 모든 코드에는 Google 스타일 docstring이 포함되어 있습니다.

  • 사용 예는 examples/ 디렉토리를 참조하세요.

예시

사용 예제는 examples/ 디렉터리에서 확인하세요. 예제를 실행하려면 다음을 수행하세요.

# Run example scripts with uv uv run examples/direct_usage.py uv run examples/mcp_client_usage.py

기여하다

기여를 환영합니다! 풀 리퀘스트를 제출해 주세요.

  1. 코드가 프로젝트의 코딩 표준을 따르는지 확인하세요.

  2. 새로운 기능에 대한 테스트를 추가합니다.

  3. 필요에 따라 문서를 업데이트하세요

  4. 제출하기 전에 모든 테스트가 통과되었는지 확인하세요

특허

이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여되었습니다. 자세한 내용은 라이선스 파일을 참조하세요.

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/JustTryAI/databricks-mcp-server'

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