Skip to main content
Glama
sazboxai

Metabase MCP Server

by sazboxai

메타베이스 MCP 서버

AI 어시스턴트가 Metabase 데이터베이스 및 작업과 상호 작용할 수 있도록 하는 MCP(모델 제어 프로토콜) 서버입니다.

![메타베이스 MCP 서버]

개요

Metabase MCP 서버는 AI 어시스턴트와 Metabase를 연결하는 브리지 역할을 하며, 이를 통해 AI 모델은 다음과 같은 작업을 수행할 수 있습니다.

  • Metabase에 구성된 데이터베이스 나열 및 탐색

  • 데이터베이스 스키마, 테이블 및 필드에 대한 자세한 메타데이터를 검색합니다.

  • 데이터베이스의 테이블 간 관계 시각화

  • 메타베이스 작업 나열 및 실행

  • 보안 API를 통해 Metabase 데이터에 대한 작업 수행

이 서버는 [모델 제어 프로토콜(MCP)] 사양을 구현하여 MCP 도구를 지원하는 AI 어시스턴트와 호환됩니다.

Related MCP server: MCP Toolkit

특징

  • 데이터베이스 탐색 : 모든 데이터베이스를 나열하고 스키마를 탐색합니다.

  • 메타데이터 검색 : 테이블, 필드 및 관계에 대한 자세한 정보를 얻습니다.

  • 관계 시각화 : 데이터베이스 관계의 시각적 표현을 생성합니다.

  • 작업 관리 : 메타베이스 작업 나열, 세부 정보 보기 및 실행

  • 안전한 API 키 처리 : API 키를 암호화하여 저장하고 노출을 방지합니다.

  • 웹 인터페이스 : 사용자 친화적인 웹 인터페이스를 통해 기능을 테스트하고 디버깅합니다.

  • Docker 지원 : Docker 및 Docker Compose를 통한 간편한 배포

필수 조건

  • 메타베이스 인스턴스(v0.46.0 이상 권장)

  • 적절한 권한이 있는 Metabase API 키

  • Docker(컨테이너화된 배포용)

  • Python 3.10+(로컬 개발용)

설치

Docker 사용(권장)

  1. 이 저장소를 복제하세요:

    지엑스피1

  2. Docker 컨테이너를 빌드하고 실행합니다.

    docker-compose up -d
  3. http://localhost:5001 에서 구성 인터페이스에 액세스하세요.

수동 설치

  1. 이 저장소를 복제하세요:

    git clone https://github.com/yourusername/metabase-mcp.git cd metabase-mcp
  2. 종속성 설치:

    pip install -r requirements.txt
  3. 구성 인터페이스를 실행합니다.

    python -m src.server.web_interface
  4. http://localhost:5000 에서 구성 인터페이스에 액세스하세요.

구성

  1. 브라우저에서 웹 인터페이스를 엽니다

  2. Metabase URL을 입력하세요(예: http://localhost:3000 )

  3. Metabase API 키를 입력하세요

  4. "구성 저장"을 클릭하고 연결을 테스트하세요.

메타베이스 API 키 얻기

  1. 관리자로 Metabase 인스턴스에 로그인하세요.

  2. 설정 > 관리자 설정 > API 키로 이동하세요.

  3. 적절한 권한으로 새 API 키를 만듭니다.

  4. 생성된 키를 MCP 서버에서 사용하기 위해 복사합니다.

용법

MCP 서버 실행

구성 후 MCP 서버를 실행할 수 있습니다.

# Using Docker docker run -p 5001:5000 metabase-mcp # Manually python -m src.server.mcp_server

사용 가능한 도구

MCP 서버는 AI 어시스턴트에게 다음과 같은 도구를 제공합니다.

  1. list_databases : Metabase에 구성된 모든 데이터베이스를 나열합니다.

  2. get_database_metadata : 특정 데이터베이스에 대한 자세한 메타데이터를 가져옵니다.

  3. db_overview : 데이터베이스의 모든 테이블에 대한 개요를 얻습니다.

  4. table_detail : 특정 테이블에 대한 자세한 정보를 가져옵니다.

  5. visualize_database_relationships : 데이터베이스 관계의 시각적 표현을 생성합니다.

  6. run_database_query : 데이터베이스에 대해 SQL 쿼리를 실행합니다.

  7. list_actions : Metabase에 구성된 모든 작업을 나열합니다.

  8. get_action_details : 특정 작업에 대한 자세한 정보를 가져옵니다.

  9. execute_action : 매개변수를 사용하여 Metabase 작업을 실행합니다.

웹 인터페이스를 통한 테스트 도구

웹 인터페이스는 각 도구에 대한 테스트 영역을 제공합니다.

  1. 데이터베이스 목록 : Metabase에 구성된 모든 데이터베이스를 봅니다.

  2. 데이터베이스 메타데이터 가져오기 : 데이터베이스에 대한 자세한 스키마 정보 보기

  3. DB 개요 : 데이터베이스의 모든 테이블에 대한 간략한 목록을 봅니다.

  4. 테이블 세부 정보 : 특정 테이블에 대한 자세한 정보를 봅니다.

  5. 데이터베이스 관계 시각화 : 테이블 관계의 시각적 표현을 생성합니다.

  6. 쿼리 실행 : 데이터베이스에 대해 SQL 쿼리를 실행합니다.

  7. 작업 목록 : Metabase에 구성된 모든 작업 보기

  8. 작업 세부 정보 가져오기 : 특정 작업에 대한 자세한 정보를 봅니다.

  9. 작업 실행 : 매개변수를 사용하여 작업 실행 테스트

보안 고려 사항

  • API 키는 암호화되어 저장됩니다.

  • 웹 인터페이스는 API 키를 일반 텍스트로 표시하지 않습니다.

  • 보안 Metabase URL로 구성된 경우 모든 API 요청은 HTTPS를 사용합니다.

  • 서버는 프로덕션 환경에서 보안 프록시 뒤에 배포되어야 합니다.

개발

프로젝트 구조

metabase-mcp/ ├── src/ │ ├── api/ # Metabase API client │ ├── config/ # Configuration management │ ├── server/ # MCP and web servers │ └── tools/ # Tool implementations ├── templates/ # Web interface templates ├── docker-compose.yml # Docker Compose configuration ├── Dockerfile # Docker build configuration ├── requirements.txt # Python dependencies └── README.md # Documentation

새로운 도구 추가

새로운 도구를 추가하려면:

  1. src/tools/ 에 도구 기능을 구현하세요

  2. src/server/mcp_server.py 에 도구를 등록합니다.

  3. templates/config.html 에 테스트 인터페이스 추가(선택 사항)

  4. src/server/web_interface.py 에 경로를 추가합니다(테스트 인터페이스를 추가하는 경우)

문제 해결

일반적인 문제

  • 연결 실패 : Metabase URL이 올바르고 액세스 가능한지 확인하세요.

  • 인증 오류 : API 키에 필요한 권한이 있는지 확인하세요.

  • Docker 네트워크 문제 : Docker를 사용할 때 적절한 네트워크 구성을 확인하세요.

로그

자세한 오류 정보는 로그에서 확인하세요.

# Docker logs docker logs metabase-mcp # Manual execution logs # Logs are printed to the console

기여하다

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

-
security - not tested
F
license - not found
-
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/sazboxai/MCP_MetaBase'

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