Superset MCP Integration

by aptro
Verified

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • Uses environment variables for configuration management, storing credentials and connection details securely for Superset integration.

  • Enables interaction with Apache Superset instances, providing tools for managing dashboards, charts, databases, datasets, running SQL queries, and handling tags programmatically.

  • Supports running Superset in Docker containers, making it easy to set up and configure a local Superset instance for integration.

슈퍼셋 MCP 통합

Apache Superset과 상호 작용하기 위한 MCP 서버로, AI 에이전트가 Superset 인스턴스에 프로그래밍 방식으로 연결하고 제어할 수 있도록 합니다.

설치 지침

Smithery를 통해 설치

Smithery를 통해 Claude Desktop용 Superset Integration을 자동으로 설치하려면:

지엑스피1

수동 설치

  1. 로컬로 슈퍼셋 설정로컬에서 Superset을 시작하려면 다음 스크립트를 실행하세요.
    git clone --branch 4.1.1 --depth 1 https://github.com/apache/superset && \ cd superset && \ docker compose -f docker-compose-image-tag.yml up
    Superset이 실행되면 기본 자격 증명을 사용하여 http://localhost:8088 에서 액세스할 수 있어야 합니다.
    • 사용자 이름: admin
    • 비밀번호: admin
  2. 이 저장소 복제이 저장소를 로컬 컴퓨터에 복제합니다.
  3. 환경 변수 구성Superset 자격 증명을 사용하여 루트 디렉토리에 .env 파일을 만듭니다.
    SUPERSET_BASE_URL=http://localhost:8088 # Change to your Superset URL SUPERSET_USERNAME=your_username SUPERSET_PASSWORD=your_password
  4. 종속성 설치
    uv pip install .
  5. Claude를 위한 MCP 구성 설치Claude Desktop 앱과 함께 사용하려면:
    mcp install main.py

Claude와 함께 사용

설정 후 Claude를 통해 자연어 요청을 사용하여 Superset 인스턴스와 상호 작용할 수 있습니다. 다음은 몇 가지 예입니다.

대시보드 관리

  • 대시보드 보기 : "내 모든 슈퍼셋 대시보드 표시"
  • 대시보드 세부 정보 가져오기 : "ID 5인 대시보드의 세부 정보를 보여주세요"
  • 대시보드 만들기 : "'영업 개요'라는 제목의 새 대시보드를 만듭니다."
  • 대시보드 업데이트 : "대시보드 3을 업데이트하여 '업데이트된 판매 보고서'라는 제목을 지정합니다."
  • 대시보드 삭제 : "ID 7인 대시보드 삭제"

차트 관리

  • 모든 차트 나열 : "내 Superset 인스턴스에는 어떤 차트가 있나요?"
  • 차트 세부 정보 보기 : "ID 10인 차트의 세부 정보를 보여주세요"
  • 차트 만들기 : "데이터 세트 3을 사용하여 새 막대 차트 만들기"
  • 차트 업데이트 : "막대 대신 선 시각화를 사용하도록 차트 5 업데이트"
  • 차트 삭제 : "ID 12인 차트 삭제"

데이터베이스 및 데이터 세트 작업

  • 데이터베이스 목록 : "Superset에 연결된 모든 데이터베이스 표시"
  • 데이터 세트 목록 : "내 Superset 인스턴스에서 어떤 데이터 세트를 사용할 수 있나요?"
  • 데이터베이스 테이블 가져오기 : "ID 1인 데이터베이스에서 어떤 테이블을 사용할 수 있나요?"
  • SQL 실행 : "데이터베이스 1에서 이 SQL 쿼리를 실행하세요: SELECT * FROM users LIMIT 10"
  • 데이터 세트 생성 : "데이터베이스 2의 '고객' 테이블에서 새 데이터 세트 생성"
  • 데이터베이스 업데이트 : "데이터베이스 3에 대한 연결 설정을 업데이트합니다"
  • 데이터베이스 삭제 : "ID 4의 데이터베이스 연결 삭제"
  • SQL 검증 : "이 SQL이 데이터베이스 2에 유효한가요: SELECT * FROM customers JOIN orders"
  • 데이터베이스 카탈로그 가져오기 : "데이터베이스 1에서 사용 가능한 카탈로그를 보여주세요"
  • 데이터베이스 함수 가져오기 : "데이터베이스 2에서 사용할 수 있는 함수는 무엇입니까?"
  • 관련 개체 확인 : "어떤 대시보드와 차트가 데이터베이스 1을 사용합니까?"

SQL Lab 기능

  • 쿼리 실행 : "이 SQL 쿼리를 실행하세요: SELECT COUNT(*) FROM orders"
  • SQL 형식 : "다음 SQL 쿼리를 형식화하세요: SELECT id,name,age FROM users WHERE age>21"
  • 쿼리 비용 추정 : "SELECT * FROM large_table" 쿼리의 비용을 추정합니다.
  • 저장된 쿼리 가져오기 : "저장된 모든 SQL 쿼리 표시"
  • 쿼리 결과 가져오기 : "키 'abc123'을 사용하여 쿼리 결과 가져오기"

사용자 및 시스템 정보

  • 사용자 정보 보기 : "내가 누구로 로그인되어 있나요?"
  • 사용자 역할 가져오기 : "Superset에서 내 역할은 무엇인가요?"
  • 최근 활동 보기 : "내 Superset 인스턴스에서 최근 활동을 보여주세요"
  • 메뉴 데이터 가져오기 : "어떤 메뉴 항목에 접근할 수 있나요?"
  • 기본 URL 가져오기 : "내가 연결된 Superset 인스턴스의 URL은 무엇입니까?"

태그 관리

  • 태그 목록 : "내 Superset 인스턴스의 모든 태그 표시"
  • 태그 생성 : "'금융'이라는 새 태그를 생성하세요"
  • 태그 삭제 : "ID 5인 태그를 삭제합니다"
  • 객체에 태그 지정 : "대시보드 3에 '금융' 태그 추가"
  • 태그 제거 : "차트 7에서 '금융' 태그 제거"

사용 가능한 MCP 도구

이 플러그인은 Claude가 사용할 수 있는 다음과 같은 MCP 도구를 제공합니다.

입증

  • superset_auth_check_token_validity - 현재 액세스 토큰이 유효한지 확인합니다.
  • superset_auth_refresh_token - 액세스 토큰 새로 고침
  • superset_auth_authenticate_user - Superset으로 인증

대시보드

  • superset_dashboard_list - 모든 대시보드 나열
  • superset_dashboard_get_by_id - 특정 대시보드 가져오기
  • superset_dashboard_create - 새 대시보드 만들기
  • superset_dashboard_update - 기존 대시보드 업데이트
  • superset_dashboard_delete - 대시보드 삭제

차트

  • superset_chart_list - 모든 차트 나열
  • superset_chart_get_by_id - 특정 차트 가져오기
  • superset_chart_create - 새 차트 만들기
  • superset_chart_update - 기존 차트 업데이트
  • superset_chart_delete - 차트 삭제

데이터베이스

  • superset_database_list - 모든 데이터베이스 나열
  • superset_database_get_by_id - 특정 데이터베이스 가져오기
  • superset_database_create - 새 데이터베이스 연결 생성
  • superset_database_get_tables - 데이터베이스의 테이블 나열
  • superset_database_schemas - 데이터베이스 스키마 가져오기
  • superset_database_test_connection - 데이터베이스 연결 테스트
  • superset_database_update - 기존 데이터베이스 연결 업데이트
  • superset_database_delete - 데이터베이스 연결 삭제
  • superset_database_get_catalogs - 데이터베이스 카탈로그 가져오기
  • superset_database_get_connection - 데이터베이스 연결 정보 가져오기
  • superset_database_get_function_names - 데이터베이스에서 지원하는 함수 이름 가져오기
  • superset_database_get_related_objects - 데이터베이스와 관련된 차트 및 대시보드 가져오기
  • superset_database_validate_sql - 데이터베이스에 대한 임의의 SQL 검증
  • superset_database_validate_parameters - 데이터베이스 연결 매개변수 검증

데이터 세트

  • superset_dataset_list - 모든 데이터 세트 나열
  • superset_dataset_get_by_id - 특정 데이터 세트 가져오기
  • superset_dataset_create - 새로운 데이터세트를 만듭니다

SQL 랩

  • superset_sqllab_execute_query - SQL 쿼리 실행
  • superset_sqllab_get_saved_queries - 저장된 SQL 쿼리 나열
  • superset_sqllab_format_sql - SQL 쿼리 형식 지정
  • superset_sqllab_get_results - 쿼리 결과 가져오기
  • superset_sqllab_estimate_query_cost - 쿼리 비용 추정
  • superset_sqllab_export_query_results - 쿼리 결과를 CSV로 내보내기
  • superset_sqllab_get_bootstrap_data - SQL Lab 부트스트랩 데이터 가져오기

쿼리

  • superset_query_list - 모든 쿼리 나열
  • superset_query_get_by_id - 특정 쿼리 가져오기
  • superset_query_stop - 실행 중인 쿼리를 중지합니다.

저장된 쿼리

  • superset_saved_query_get_by_id - 특정 저장된 쿼리 가져오기
  • superset_saved_query_create - 새로 저장된 쿼리를 만듭니다.

사용자 정보

  • superset_user_get_current - 현재 사용자 정보 가져오기
  • superset_user_get_roles - 사용자 역할 가져오기

활동

  • superset_activity_get_recent - 최근 활동 데이터 가져오기

체계

  • superset_menu_get - 메뉴 데이터 가져오기
  • superset_config_get_base_url - Superset 인스턴스의 기본 URL을 가져옵니다.

태그

  • superset_tag_list - 모든 태그 나열
  • superset_tag_create - 새 태그 만들기
  • superset_tag_get_by_id - 특정 태그 가져오기
  • superset_tag_objects - 태그와 연관된 객체를 가져옵니다.
  • superset_tag_delete - 태그 삭제
  • superset_tag_object_add - 객체에 태그 추가
  • superset_tag_object_remove - 객체에서 태그 제거

탐색 도구

  • superset_explore_form_data_create - 차트 탐색을 위한 양식 데이터 생성
  • superset_explore_form_data_get - 차트 탐색을 위한 양식 데이터 가져오기
  • superset_explore_permalink_create - 차트 탐색을 위한 퍼머링크 생성
  • superset_explore_permalink_get - 차트 탐색을 위한 퍼머링크 가져오기

고급 데이터 유형

  • superset_advanced_data_type_convert - 값을 고급 데이터 유형으로 변환
  • superset_advanced_data_type_list - 사용 가능한 고급 데이터 유형 나열

환경 변수

변하기 쉬운설명기본
슈퍼셋_베이스_URLSuperset 인스턴스의 URLhttp://localhost:8088
슈퍼셋_사용자 이름Superset의 사용자 이름없음
슈퍼셋 비밀번호Superset의 비밀번호없음

문제 해결

  • 인증 문제가 발생하면 .env 파일에서 자격 증명을 확인하세요.
  • .env 파일에 지정된 URL에서 Superset이 실행 중이고 액세스 가능한지 확인하세요.
  • Superset의 호환 버전을 사용하고 있는지 확인하세요(버전 4.1.1로 테스트됨)
  • MCP 서버에서 사용하는 포트가 다른 애플리케이션에서 사용되고 있지 않은지 확인하세요.

보안 참고 사항

  • Superset 자격 증명은 로컬 .env 파일에만 저장됩니다.
  • 액세스 토큰은 프로젝트 디렉토리의 .superset_token 파일에 저장됩니다.
  • 모든 인증은 MCP 서버와 Superset 인스턴스 사이에서 직접 발생합니다.
  • Claude 또는 제3자에게 자격 증명이 전송되지 않습니다.
  • 생산용으로는 보다 안전한 인증 방법을 사용하는 것이 좋습니다.

기여하다

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

특허

MIT

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

AI 에이전트가 Apache Superset 인스턴스에 프로그래밍 방식으로 연결하고 제어할 수 있도록 하는 MCP 서버를 통해 사용자는 대시보드, 차트, 데이터베이스, 데이터 세트를 관리하고 자연어 상호 작용을 통해 SQL 쿼리를 실행할 수 있습니다.

  1. Setup Instructions
    1. Installing via Smithery
    2. Manual Installation
  2. Usage with Claude
    1. Dashboard Management
    2. Chart Management
    3. Database and Dataset Operations
    4. SQL Lab Features
    5. User and System Information
    6. Tag Management
  3. Available MCP Tools
    1. Authentication
    2. Dashboards
    3. Charts
    4. Databases
    5. Datasets
    6. SQL Lab
    7. Queries
    8. Saved Queries
    9. User Information
    10. Activity
    11. System
    12. Tags
    13. Exploration Tools
    14. Advanced Data Types
  4. Environment Variables
    1. Troubleshooting
      1. Security Notes
        1. Contributing
          1. License
            ID: gp1w339os0