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 설정
- Looker 클라이언트 ID와 클라이언트 보안 비밀번호를 가져옵니다. Looker API 인증 문서 페이지의 안내를 따르세요.
- Looker 인스턴스의 기본 URL이 있어야 합니다.
https://looker.example.com와 같은 형식일 가능성이 높습니다. API가 다른 포트에서 수신 대기하는 경우도 있으므로 이 경우에는https://looker.example.com:19999를 사용해야 합니다.
MCP Toolbox 설치
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
바이너리를 실행 파일로 만듭니다.
chmod +x toolbox설치를 확인합니다.
./toolbox --version
MCP 클라이언트 구성
이 섹션에서는 데이터베이스용 MCP Toolbox를 사용하여 Looker 인스턴스에 연결하도록 다양한 개발자 도구를 구성하는 방법을 설명합니다. 이 도구 상자는 IDE와 데이터베이스 사이에 위치하는 오픈소스 Model Context Protocol (MCP) 서버 역할을 하여 AI 도구를 위한 안전하고 효율적인 제어 영역을 제공합니다. 구성 안내를 보려면 특정 도구의 탭을 선택하세요.
- Gemini CLI
- Gemini Code Assist
- Claude code
- Claude desktop
- Cline(VS Code 확장 프로그램)
- Cursor
- Visual Studio Code(Copilot)
- Windsurf(Codium)
Gemini CLI
- Gemini CLI를 설치합니다.
- 다음 명령어를 사용하여 GitHub 저장소에서 Gemini CLI용 Looker 확장 프로그램을 설치합니다.
gemini extensions install https://github.com/gemini-cli-extensions/looker
- Looker 인스턴스에 연결하도록 환경 변수를 설정하고 다음 환경 변수를 값으로 바꿉니다.
LOOKER_URL: Looker 인스턴스의 URL입니다.CLIENT_ID및CLIENT_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"
- 대화형 모드에서 Gemini CLI를 시작합니다.
CLI는 Gemini CLI 확장 프로그램 및 해당 도구의 Looker 확장 프로그램을 자동으로 로드하며, 이를 사용하여 Looker 인스턴스와 상호작용할 수 있습니다.gemini
Gemini Code Assist
Gemini CLI를 사용하도록 Gemini Code Assist를 구성하는 것이 좋습니다. 이 접근 방식을 사용하면 MCP 서버를 수동으로 구성할 필요가 없습니다.
- Gemini CLI와
looker확장 프로그램이 설치되고 구성되어 있는지 확인합니다. - Gemini CLI를 사용하도록 Gemini Code Assist 구성
- Gemini Code Assist 채팅 내에서 직접 자연어를 사용하여 Looker 인스턴스와 상호작용합니다.
Claude code
- Claude Code를 설치합니다.
- 프로젝트 루트에
.mcp.json파일이 없으면 만듭니다. - 다음 구성을 추가하고 다음 환경 변수를 값으로 바꾼 후 저장합니다.
LOOKER_URL: Looker 인스턴스의 URL입니다.CLIENT_ID및CLIENT_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
- Claude Desktop을 열고 설정으로 이동합니다.
- 개발자 탭에서 구성 수정을 클릭하여 구성 파일을 엽니다.
- 다음 구성을 추가하고 다음 환경 변수를 값으로 바꾼 후 저장합니다.
LOOKER_URL: Looker 인스턴스의 URL입니다.CLIENT_ID및CLIENT_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을 다시 시작합니다.
- 새 채팅 화면에 새 MCP 서버와 함께 망치(MCP) 아이콘이 표시됩니다.
Cline
- VS Code에서 Cline 확장 프로그램을 열고 MCP Servers 아이콘을 클릭합니다.
- MCP 서버 구성을 클릭하여 구성 파일을 엽니다.
- 다음 구성을 추가하고 다음 환경 변수를 값으로 바꾼 후 저장합니다.
LOOKER_URL: Looker 인스턴스의 URL입니다.CLIENT_ID및CLIENT_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",
}
}
}
}
커서
- 프로젝트 루트에
.cursor디렉터리가 없으면 만듭니다. .cursor/mcp.json파일이 없으면 만들고 엽니다.- 다음 구성을 추가하고 다음 환경 변수를 값으로 바꾼 후 저장합니다.
LOOKER_URL: Looker 인스턴스의 URL입니다.CLIENT_ID및CLIENT_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",
}
}
}
}
- 커서를 열고 설정 > 커서 설정 > MCP로 이동합니다. 서버가 연결되면 녹색 활성 상태가 표시됩니다.
Visual Studio Code(Copilot)
- VS Code를 열고 프로젝트 루트에
.vscode디렉터리가 없으면 만듭니다. .vscode/mcp.json파일이 없으면 만들고 엽니다.- 다음 구성을 추가하고 다음 환경 변수를 값으로 바꾼 후 저장합니다.
LOOKER_URL: Looker 인스턴스의 URL입니다.CLIENT_ID및CLIENT_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
- Windsurf를 열고 Cascade 어시스턴트로 이동합니다.
- MCP 아이콘을 클릭한 다음 구성을 클릭하여 구성 파일을 엽니다.
- 다음 구성을 추가하고 다음 환경 변수를 값으로 바꾼 후 저장합니다.
LOOKER_URL: Looker 인스턴스의 URL입니다.CLIENT_ID및CLIENT_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: 대시보드에 타일을 추가합니다.