เชื่อมต่อ Gemini CLI กับ Looker ด้วย MCP Toolbox

1. ก่อนที่คุณจะเริ่มต้น

คุณควรมีสิทธิ์เข้าถึงอินสแตนซ์ Looker ที่ทำงานอยู่ คุณจะต้องมี client_id และ client_secret ของ API

ข้อกำหนดเบื้องต้น

  • มีอินสแตนซ์ Looker ที่ทำงานอยู่
  • มีสิทธิ์เข้าถึงบรรทัดคำสั่ง Linux หรือ macOS

สิ่งที่คุณจะได้เรียนรู้

  • วิธีติดตั้ง Gemini CLI
  • วิธีติดตั้งกล่องเครื่องมือ MCP
  • วิธีเชื่อมต่อ Gemini CLI กับ Looker โดยใช้ MCP Toolbox

สิ่งที่คุณต้องมี

  • URL ของเซิร์ฟเวอร์ Looker API โดยปกติแล้ว URL นี้จะเหมือนกับ URL ของ Looker แต่คุณอาจต้องต่อท้ายหมายเลขพอร์ต เช่น :19999 ตัวอย่างเช่น https://looker.example.com:19999 หากมีสิ่งใดไม่ทำงานอย่างถูกต้อง ให้ลองสอบถามผู้ดูแลระบบ Looker

2. การเตรียมตัว

คุณต้องดึงข้อมูล client_id และ client_secret

เข้าสู่ระบบอินสแตนซ์ Looker แล้วคลิกโปรไฟล์ผู้ใช้ที่มุมขวาบนของหน้าจอ เลือกบัญชี ในหน้าจอบัญชี ให้กดปุ่ม Manage ข้างป้ายกำกับ API Keys

ในหน้าการจัดการคีย์ API ให้กดปุ่ม Create New API Key

ในรายการที่สร้างขึ้นใหม่ ให้เพิ่มวัตถุประสงค์ MCP Toolbox หรือข้อความที่คล้ายกัน แล้วคลิกเครื่องหมายถูกเพื่อบันทึก จากนั้นคัดลอกและวาง client_id และ client_secret ไว้ในที่ที่ปลอดภัย คุณจะต้องกดไอคอนรูปดวงตาข้างข้อมูลลับเพื่อดูและคัดลอก

คุณปิดหน้าต่างเบราว์เซอร์ Looker ได้แล้ว

3. ติดตั้ง Gemini CLI

เปิดแอปเทอร์มินัลเพื่อไปยังบรรทัดคำสั่ง macOS หรือ Linux

เรียกใช้คำสั่งต่อไปนี้

npm install -g @google/gemini-cli

หากไม่สำเร็จด้วยเหตุผลใดก็ตาม โปรดดูตัวเลือกการติดตั้งหรือขอรับความช่วยเหลือได้ที่ https://github.com/google-gemini/gemini-cli?tab=readme-ov-file#-installation

ตอนนี้ให้เรียกใช้ Gemini CLI ด้วยคำสั่งนี้

gemini

ระบบจะขอให้คุณเข้าสู่ระบบ ทำตามวิธีการดังกล่าว แล้วคุณก็พร้อมใช้งาน

4. ติดตั้ง MCP Toolbox

สร้างไดเรกทอรีกล่องเครื่องมือ MCP

ในแอปเทอร์มินัล ให้สร้างไดเรกทอรี mcp-toolbox จากนั้นให้ป้อนไดเรกทอรีนั้น

mkdir $HOME/mcp-toolbox
cd $HOME/mcp-toolbox

ระบุสถาปัตยกรรมของระบบ

เรียกใช้คำสั่ง uname เพื่อดูว่าคุณใช้ระบบประเภทใด

uname -a

คำสั่งนี้จะแสดงผลสตริงที่มีลักษณะดังนี้

Linux hostname.example.com 6.16.12-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.16.12 (2025-11-10) x86_64 GNU/Linux

โปรดสังเกตจุดสิ้นสุดของบรรทัดนั้น หากใช้ Linux จะลงท้ายด้วย x86_64 GNU/Linux สำหรับ macOS จะระบุ Darwin และ arm64 สำหรับโปรเซสเซอร์ Apple หรือ x86_64 i386 สำหรับโปรเซสเซอร์ Intel ใกล้กับส่วนท้ายของสตริงนั้น

ดาวน์โหลดกล่องเครื่องมือ MCP

หากคุณใช้ Linux ให้เรียกใช้คำสั่งต่อไปนี้เพื่อดาวน์โหลด MCP Toolbox

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

หากคุณใช้ macOS ที่มีโปรเซสเซอร์ Apple ให้เรียกใช้คำสั่งต่อไปนี้เพื่อดาวน์โหลด MCP Toolbox

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

หากใช้ macOS ที่มีโปรเซสเซอร์ Intel ให้เรียกใช้คำสั่งต่อไปนี้เพื่อดาวน์โหลด MCP Toolbox

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

ทำให้กล่องเครื่องมือ MCP เรียกใช้งานได้

ทำให้โปรแกรม MCP Toolbox เรียกใช้งานได้โดยเรียกใช้คำสั่งต่อไปนี้

chmod +x toolbox

ดูเส้นทางแบบเต็มไปยังกล่องเครื่องมือ

รับเส้นทางแบบเต็มไปยังไฟล์กล่องเครื่องมือโดยเรียกใช้คำสั่งต่อไปนี้

echo $HOME/mcp-toolbox/toolbox

ซึ่งอาจส่งผลให้เกิดข้อความต่อไปนี้

/home-or-User/YOUR-USER-NAME/mcp-toolbox/toolbox

บันทึกผลลัพธ์ไว้ในที่ที่สะดวก

5. กำหนดค่า Gemini CLI

แก้ไขไฟล์ $HOME/.gemini/settings.json ใช้โปรแกรมแก้ไขข้อความที่ต้องการ หากไม่ค่อยได้แก้ไขไฟล์ใน Linux หรือ macOS nano ก็เป็นตัวเลือกที่ดี

เพิ่มส่วนต่อไปนี้ลงในไฟล์ JSON

  "mcpServers": {
    "looker": {
      "command": "FULL_PATH_TO_TOOLBOX",
      "args": [
        "--stdio",
        "--prebuilt",
        "looker"
      ],
      "env": {
        "LOOKER_BASE_URL": "URL_OF_LOOKER_INSTANCE",
        "LOOKER_CLIENT_ID": "CLIENT_ID",
        "LOOKER_CLIENT_SECRET": "CLIENT_SECRET",
        "LOOKER_VERIFY_SSL": "true"
      }
    }
  }

แทนที่ข้อมูลที่คุณบันทึกไว้ในขั้นตอนก่อนหน้าสำหรับ FULL_PATH_TO_TOOLBOX, URL_OF_LOOKER_INSTANCE, CLIENT_ID และ CLIENT_SECRET บันทึกไฟล์ที่แก้ไข

6. ใช้ MCP Toolbox กับ Gemini CLI

เริ่ม Gemini CLI โดยป้อน gemini ในบรรทัดคำสั่ง

แสดงรายการเครื่องมือที่พร้อมใช้งานโดยพิมพ์ข้อความต่อไปนี้ในพรอมต์ Gemini

/mcp list looker

ผลลัพธ์ที่ได้ควรมีลักษณะดังนี้

Configured MCP servers:

🟢 looker - Ready (33 tools)
  Tools:
  - add_dashboard_element
  - add_dashboard_filter
  - create_project_file
  - delete_project_file
  - dev_mode
  - generate_embed_url
  - get_connection_databases
  - get_connection_schemas
  - get_connection_table_columns
  - get_connection_tables
  - get_connections
  - get_dashboards
  - get_dimensions
  - get_explores
  - get_filters
  - get_looks
  - get_measures
  - get_models
  - get_parameters
  - get_project_file
  - get_project_files
  - get_projects
  - health_analyze
  - health_pulse
  - health_vacuum
  - make_dashboard
  - make_look
  - query
  - query_sql
  - query_url
  - run_dashboard
  - run_look
  - update_project_file

ตอนนี้ให้เริ่มถาม Gemini CLI เกี่ยวกับข้อมูลที่มี ลองทำตามวิธีต่อไปนี้

  1. โมเดลใดบ้างที่พร้อมใช้งานใน Looker
  2. การสำรวจใดบ้างที่พร้อมใช้งานใน MODEL_NAME
  3. EXPLORE_NAME มีมาตรการและมิติข้อมูลใดบ้าง

แทนที่ค่าของคุณเองสำหรับ MODEL_NAME และ EXPLORE_NAME

จากนั้นลองสร้างคำค้นหาด้วยภาษาง่ายๆ ที่ข้อมูลในอินสแตนซ์ Looker ตอบได้ เช่น "รายได้ทั้งหมดของฉันในปี 2025 คือเท่าใด" "ไตรมาสที่ 4 ฉันขายวิดเจ็ตได้กี่รายการ" เป็นต้น

7. มีพรอมต์ให้ลองใช้อีกมากมาย

นอกจากนี้ คุณยังลองเรียกใช้ Look และแดชบอร์ดที่บันทึกไว้ สร้าง Look และแดชบอร์ด หรือแม้แต่แก้ไขโมเดล LookML ได้ด้วย

  • เรียกใช้ Look ที่บันทึกไว้โดยป้อนพรอมต์ เช่น "เรียกใช้ Look ‘พื้นที่โฆษณารายเดือน'" Gemini ควรค้นหา Look ชื่อ "สินค้าคงคลังรายเดือน" จากนั้นเรียกใช้คำค้นหาที่เชื่อมโยงและแชร์ผลลัพธ์
  • เรียกใช้แดชบอร์ดโดยป้อนพรอมต์ เช่น "สรุปแดชบอร์ด 'การติดตามลูกค้า'" Gemini ควรค้นหาแดชบอร์ดชื่อ "การติดตามลูกค้า" เรียกใช้การค้นหาที่เชื่อมโยงกับไทล์แต่ละรายการ และสรุปผล
  • หากต้องการสร้าง Look ที่บันทึกไว้ ให้ลองใช้พรอมต์ เช่น "สร้าง Look เพื่อติดตามรายได้รายเดือนของฉันที่แยกตามหมวดหมู่สินค้า แสดงข้อมูลเป็นแผนภูมิคอลัมน์แบบเรียงซ้อน
  • หากต้องการสร้างแดชบอร์ด ให้ลองใช้พรอมต์ เช่น "สร้างแดชบอร์ดชีพจรการขายสำหรับปี 2026 ให้ฉัน"

หากคุณเป็นนักพัฒนา LookML คุณสามารถแก้ไข LookML ด้วย Gemini ได้ ลองใช้พรอมต์ต่อไปนี้

  1. เขียนพรอมต์ Gemini เพื่อรับรายการโปรเจ็กต์ LookML ด้วยการถามว่า "มีโปรเจ็กต์ LookML อะไรบ้าง"
  2. พรอมต์ Gemini ให้ดึงไฟล์โปรเจ็กต์รายการ "มีไฟล์อะไรบ้างในโปรเจ็กต์ PROJECT_NAME" แทนที่ด้วยชื่อโปรเจ็กต์ของคุณเอง
  3. ป้อนพรอมต์ให้ Gemini เพิ่มหน่วยวัด สร้างข้อมูลการวัดค่าเพื่อหาค่าเฉลี่ยของฟิลด์ sales_price ในข้อมูลพร็อพเพอร์ตี้ VIEW_NAME แทนที่ด้วยชื่อมุมมองของคุณเอง
  4. ดึงข้อมูลรายการการเชื่อมต่อด้วย "มีการเชื่อมต่อใดบ้างใน Looker"
  5. รับสคีมาที่เชื่อมโยง "มีสคีมาอะไรบ้างใน CONNECTION_NAME" แทนที่ด้วยชื่อการเชื่อมต่อของคุณเอง
  6. รับตารางที่เชื่อมโยง "ตารางใดอยู่ใน CONNECTION_NAME ในสคีมา SCHEMA_NAME" แทนที่ชื่อการเชื่อมต่อและชื่อสคีมาของคุณเอง
  7. รับคอลัมน์สำหรับตาราง "TABLE_NAME มีคอลัมน์อะไรบ้าง" แทนที่ด้วยชื่อตารางของคุณเอง
  8. ตอนนี้ขอความช่วยเหลือจาก Gemini เพื่อเพิ่มคอลัมน์ลงในมุมมอง LookML "สร้างมิติข้อมูลสำหรับคอลัมน์ COLUMN_NAME" แทนที่ชื่อคอลัมน์ของคุณเอง

ใช้ UI ของ Looker เพื่อทดสอบการเปลี่ยนแปลงและอาจคอมมิตการเปลี่ยนแปลงเหล่านั้น Gemini และ MCP Toolbox ไม่สามารถคอมมิตการเปลี่ยนแปลง LookML และพุชไปยังเวอร์ชันที่ใช้งานจริงได้

8. ข้อมูลเพิ่มเติม