MCP, Gemini CLI 및 기타 에이전트와 함께 Looker 사용

이 페이지에서는 Looker 인스턴스를 다양한 개발자 도구에 연결하는 방법을 보여줍니다.

가장 강력하고 통합된 환경을 위해서는 Gemini CLI 전용 Looker 확장 프로그램을 사용하는 것이 좋습니다. Looker의 시맨틱 레이어를 사용하여 Gemini CLI에 신뢰할 수 있는 데이터에 대한 안전하고 관리되는 주문형 액세스를 제공하고, 자연어 프롬프트에서 보고서, 시각화, 대시보드 생성을 자동화하여 워크플로를 가속화합니다. Google Cloud의 차세대 명령줄 인터페이스인 Gemini CLI는 명령줄에서 Looker 인스턴스와 상호작용하는 데 권장되는 도구입니다.

범용 데이터베이스용 MCP 도구 상자를 사용하여 모델 컨텍스트 프로토콜 (MCP)을 지원하는 다른 통합 개발 환경 (IDE) 및 개발자 도구를 연결할 수도 있습니다. MCP Toolbox는 인증 및 연결 풀링과 같은 복잡성을 처리하여 AI 에이전트를 데이터에 쉽게 연결할 수 있도록 지원하는 오픈소스 MCP 서버로, IDE에서 직접 자연어를 사용하여 데이터와 상호작용할 수 있습니다. 이러한 도구의 경우 이 메서드는 핵심 데이터베이스 상호작용 기능을 제공합니다.

Gemini CLI 및 확장 프로그램 정보

Gemini CLI는 코딩, 디버깅, 데이터 탐색, 콘텐츠 제작을 지원하여 개발 워크플로를 가속화하도록 설계된 오픈소스 AI 에이전트입니다. 이 도구의 목표는 데이터 클라우드 서비스 및 널리 사용되는 오픈소스 데이터베이스와 상호작용하기 위한 세련된 에이전트 환경을 제공하는 것입니다.

확장 프로그램 작동 방식

Gemini CLI는 확장성이 뛰어나 확장 프로그램을 통해 새로운 도구와 기능을 추가할 수 있습니다. 이러한 확장 프로그램은 간단하게 설치할 수 있습니다. GitHub URL, 로컬 디렉터리 또는 구성 가능한 레지스트리에서 로드할 수 있습니다. 이러한 확장 프로그램은 워크플로를 간소화하는 새로운 도구, 슬래시 명령어, 프롬프트를 비롯한 다양한 기능을 제공합니다.

Looker 설정

  1. Looker 클라이언트 ID와 클라이언트 보안 비밀번호를 가져옵니다. Looker API 인증 문서 페이지의 안내를 따르세요.
  2. Looker 인스턴스의 기본 URL이 있어야 합니다. https://looker.example.com와 같은 형식일 가능성이 높습니다. API가 다른 포트에서 수신 대기하는 경우도 있으므로 이 경우에는 https://looker.example.com:19999를 사용해야 합니다.

MCP Toolbox 설치

  1. MCP Toolbox의 최신 버전을 바이너리로 다운로드합니다. OS 및 CPU 아키텍처에 해당하는 바이너리를 선택합니다. MCP Toolbox 버전 V0.14.0 이상을 사용해야 합니다.

    linux/amd64

    curl -O https://storage.googleapis.com/genai-toolbox/v0.14.0/linux/amd64/toolbox

    darwin/arm64

    curl -O https://storage.googleapis.com/genai-toolbox/v0.14.0/darwin/arm64/toolbox

    darwin/amd64

    curl -O https://storage.googleapis.com/genai-toolbox/v0.14.0/darwin/amd64/toolbox

    windows/amd64

    curl -O https://storage.googleapis.com/genai-toolbox/v0.14.0/windows/amd64/toolbox.exe

  2. 바이너리를 실행 파일로 만듭니다.

    chmod +x toolbox
    
  3. 설치를 확인합니다.

    ./toolbox --version
    

MCP 클라이언트 구성

이 섹션에서는 데이터베이스용 MCP Toolbox를 사용하여 Looker 인스턴스에 연결하도록 다양한 개발자 도구를 구성하는 방법을 설명합니다. 이 도구 상자는 IDE와 데이터베이스 사이에 위치하는 오픈소스 Model Context Protocol (MCP) 서버 역할을 하여 AI 도구를 위한 안전하고 효율적인 제어 영역을 제공합니다. 구성 안내를 보려면 특정 도구의 탭을 선택하세요.

Gemini CLI

  1. Gemini CLI를 설치합니다.
  2. 다음 명령어를 사용하여 GitHub 저장소에서 Gemini CLI용 Looker 확장 프로그램을 설치합니다.
    gemini extensions install https://github.com/gemini-cli-extensions/looker
    
  3. Looker 인스턴스에 연결하도록 환경 변수를 설정하고 다음 환경 변수를 값으로 바꿉니다.
    • LOOKER_URL: Looker 인스턴스의 URL입니다.
    • CLIENT_IDCLIENT_SECRET: Looker API에 액세스하는 데 사용되는 API 키입니다.
    • VERIFY_SSL: 데이터베이스를 Looker 인스턴스에 연결할 때 SSL 암호화를 사용하는지 여부에 따라 true 또는 false
    export LOOKER_BASE_URL="LOOKER_URL"
    export LOOKER_CLIENT_ID="CLIENT_ID"
    export LOOKER_CLIENT_SECRET="CLIENT_SECRET"
    export LOOKER_VERIFY_SSL="VERIFY_SSL"
    
  4. 대화형 모드에서 Gemini CLI를 시작합니다.
    gemini
    
    CLI는 Gemini CLI 확장 프로그램 및 해당 도구의 Looker 확장 프로그램을 자동으로 로드하며, 이를 사용하여 Looker 인스턴스와 상호작용할 수 있습니다.

Gemini Code Assist

Gemini CLI를 사용하도록 Gemini Code Assist를 구성하는 것이 좋습니다. 이 접근 방식을 사용하면 MCP 서버를 수동으로 구성할 필요가 없습니다.

  1. Gemini CLIlooker 확장 프로그램이 설치되고 구성되어 있는지 확인합니다.
  2. Gemini CLI를 사용하도록 Gemini Code Assist 구성
  3. Gemini Code Assist 채팅 내에서 직접 자연어를 사용하여 Looker 인스턴스와 상호작용합니다.

Claude code

  1. Claude Code를 설치합니다.
  2. 프로젝트 루트에 .mcp.json 파일이 없으면 만듭니다.
  3. 다음 구성을 추가하고 다음 환경 변수를 값으로 바꾼 후 저장합니다.
    • LOOKER_URL: Looker 인스턴스의 URL입니다.
    • CLIENT_IDCLIENT_SECRET: Looker API에 액세스하는 데 사용되는 API 키입니다.
    • VERIFY_SSL: 데이터베이스를 Looker 인스턴스에 연결할 때 SSL 암호화를 사용하는지 여부에 따라 true 또는 false

      {
        "mcpServers": {
          "looker-toolbox": {
            "command": "./PATH/TO/toolbox",
            "args": ["--stdio", "--prebuilt", "looker"],
            "env": {
                "LOOKER_BASE_URL": "LOOKER_URL",
                "LOOKER_CLIENT_ID": "CLIENT_ID",
                "LOOKER_CLIENT_SECRET": "CLIENT_SECRET",
                "LOOKER_VERIFY_SSL": "VERIFY_SSL",
          }
          }
        }
      }
  

Claude Desktop

  1. Claude Desktop을 열고 설정으로 이동합니다.
  2. 개발자 탭에서 구성 수정을 클릭하여 구성 파일을 엽니다.
  3. 다음 구성을 추가하고 다음 환경 변수를 값으로 바꾼 후 저장합니다.
    • LOOKER_URL: Looker 인스턴스의 URL입니다.
    • CLIENT_IDCLIENT_SECRET: Looker API에 액세스하는 데 사용되는 API 키입니다.
    • VERIFY_SSL: 데이터베이스를 Looker 인스턴스에 연결할 때 SSL 암호화를 사용하는지 여부에 따라 true 또는 false

      {
        "mcpServers": {
          "looker-toolbox": {
            "command": "./PATH/TO/toolbox",
            "args": ["--stdio", "--prebuilt", "looker"],
            "env": {
                "LOOKER_BASE_URL": "LOOKER_URL",
                "LOOKER_CLIENT_ID": "CLIENT_ID",
                "LOOKER_CLIENT_SECRET": "CLIENT_SECRET",
                "LOOKER_VERIFY_SSL": "VERIFY_SSL",
          }
          }
        }
      }
  
  1. Claude Desktop을 다시 시작합니다.
  2. 새 채팅 화면에 새 MCP 서버와 함께 망치(MCP) 아이콘이 표시됩니다.

Cline

  1. VS Code에서 Cline 확장 프로그램을 열고 MCP Servers 아이콘을 클릭합니다.
  2. MCP 서버 구성을 클릭하여 구성 파일을 엽니다.
  3. 다음 구성을 추가하고 다음 환경 변수를 값으로 바꾼 후 저장합니다.
    • LOOKER_URL: Looker 인스턴스의 URL입니다.
    • CLIENT_IDCLIENT_SECRET: Looker API에 액세스하는 데 사용되는 API 키입니다.
    • VERIFY_SSL: 데이터베이스를 Looker 인스턴스에 연결할 때 SSL 암호화를 사용하는지 여부에 따라 true 또는 false

      {
        "mcpServers": {
          "looker-toolbox": {
            "command": "./PATH/TO/toolbox",
            "args": ["--stdio", "--prebuilt", "looker"],
            "env": {
                "LOOKER_BASE_URL": "LOOKER_URL",
                "LOOKER_CLIENT_ID": "CLIENT_ID",
                "LOOKER_CLIENT_SECRET": "CLIENT_SECRET",
                "LOOKER_VERIFY_SSL": "VERIFY_SSL",
          }
          }
        }
      }
  

서버가 성공적으로 연결되면 녹색 활성 상태가 표시됩니다.

커서

  1. 프로젝트 루트에 .cursor 디렉터리가 없으면 만듭니다.
  2. .cursor/mcp.json 파일이 없으면 만들고 엽니다.
  3. 다음 구성을 추가하고 다음 환경 변수를 값으로 바꾼 후 저장합니다.
    • LOOKER_URL: Looker 인스턴스의 URL입니다.
    • CLIENT_IDCLIENT_SECRET: Looker API에 액세스하는 데 사용되는 API 키입니다.
    • VERIFY_SSL: 데이터베이스를 Looker 인스턴스에 연결할 때 SSL 암호화를 사용하는지 여부에 따라 true 또는 false
      {
        "mcpServers": {
          "looker-toolbox": {
            "command": "./PATH/TO/toolbox",
            "args": ["--stdio", "--prebuilt", "looker"],
            "env": {
                "LOOKER_BASE_URL": "LOOKER_URL",
                "LOOKER_CLIENT_ID": "CLIENT_ID",
                "LOOKER_CLIENT_SECRET": "CLIENT_SECRET",
                "LOOKER_VERIFY_SSL": "VERIFY_SSL",
          }
          }
        }
      }
  
  1. 커서를 열고 설정 > 커서 설정 > MCP로 이동합니다. 서버가 연결되면 녹색 활성 상태가 표시됩니다.

Visual Studio Code(Copilot)

  1. VS Code를 열고 프로젝트 루트에 .vscode 디렉터리가 없으면 만듭니다.
  2. .vscode/mcp.json 파일이 없으면 만들고 엽니다.
  3. 다음 구성을 추가하고 다음 환경 변수를 값으로 바꾼 후 저장합니다.
    • LOOKER_URL: Looker 인스턴스의 URL입니다.
    • CLIENT_IDCLIENT_SECRET: Looker API에 액세스하는 데 사용되는 API 키입니다.
    • VERIFY_SSL: 데이터베이스를 Looker 인스턴스에 연결할 때 SSL 암호화를 사용하는지 여부에 따라 true 또는 false
      {
        "mcpServers": {
          "looker-toolbox": {
            "command": "./PATH/TO/toolbox",
            "args": ["--stdio", "--prebuilt", "looker"],
            "env": {
                "LOOKER_BASE_URL": "LOOKER_URL",
                "LOOKER_CLIENT_ID": "CLIENT_ID",
                "LOOKER_CLIENT_SECRET": "CLIENT_SECRET",
                "LOOKER_VERIFY_SSL": "VERIFY_SSL",
          }
          }
        }
      }
  

Windsurf

  1. Windsurf를 열고 Cascade 어시스턴트로 이동합니다.
  2. MCP 아이콘을 클릭한 다음 구성을 클릭하여 구성 파일을 엽니다.
  3. 다음 구성을 추가하고 다음 환경 변수를 값으로 바꾼 후 저장합니다.
    • LOOKER_URL: Looker 인스턴스의 URL입니다.
    • CLIENT_IDCLIENT_SECRET: Looker API에 액세스하는 데 사용되는 API 키입니다.
    • VERIFY_SSL: 데이터베이스를 Looker 인스턴스에 연결할 때 SSL 암호화를 사용하는지 여부에 따라 true 또는 false
      {
        "mcpServers": {
          "looker-toolbox": {
            "command": "./PATH/TO/toolbox",
            "args": ["--stdio", "--prebuilt", "looker"],
            "env": {
                "LOOKER_BASE_URL": "LOOKER_URL",
                "LOOKER_CLIENT_ID": "CLIENT_ID",
                "LOOKER_CLIENT_SECRET": "CLIENT_SECRET",
                "LOOKER_VERIFY_SSL": "VERIFY_SSL",
          }
          }
        }
      }
  

AI 도구 사용

이제 AI 도구가 MCP를 사용하여 Looker에 연결됩니다. AI 어시스턴트에게 모델, Explore, 측정기준, 측정값을 나열해 달라고 요청해 보세요. 쿼리의 SQL을 가져오거나 저장된 Look을 실행하여 쿼리를 실행할 수도 있습니다.

LLM에서 사용할 수 있는 도구는 다음과 같습니다.

  • get_models: Looker 인스턴스의 모든 LookML 모델을 나열합니다.
  • get_explores: 지정된 모델의 Explore를 나열합니다.
  • get_dimensions: 지정된 Explore의 측정기준을 나열합니다.
  • get_measures: 지정된 Explore의 측정항목을 나열합니다.
  • get_filters: 지정된 Explore의 필터를 나열합니다.
  • get_parameters: 지정된 Explore의 매개변수를 나열합니다.
  • query: 쿼리를 실행하고 데이터를 반환합니다.
  • query_sql: 쿼리에 대해 Looker에서 생성된 SQL을 반환합니다.
  • query_url: 추가 탐색을 위해 Looker의 쿼리 링크를 반환합니다.
  • get_looks: 제목 또는 설명과 일치하는 저장된 스타일을 반환합니다.
  • run_look: 저장된 Look을 실행하고 데이터를 반환합니다.
  • make_look: Looker에서 저장된 Look을 만들고 URL을 반환합니다.
  • get_dashboards: 제목 또는 설명과 일치하는 저장된 대시보드를 반환합니다.
  • make_dashboard: Looker에서 저장된 대시보드를 만들고 URL을 반환합니다.
  • add_dashboard_element: 대시보드에 타일을 추가합니다.