เริ่มต้นใช้งาน MCP ของ Google Workspace และ Gemini CLI

1. บทนำ

ใน Codelab นี้ คุณจะได้เรียนรู้วิธีใช้ Model Context Protocol (MCP) เพื่อเชื่อมต่อ Gemini CLI กับข้อมูล Google Workspace MCP เป็นมาตรฐานแบบเปิดที่ช่วยให้โมเดล AI ใช้เครื่องมือที่เซิร์ฟเวอร์ระยะไกลจัดหาให้ได้อย่างปลอดภัย คุณจะใช้ Gemini CLI เป็นไคลเอ็นต์เพื่อโต้ตอบกับ Gmail, Google ไดรฟ์, Google ปฏิทิน, Google Chat และ People API ได้โดยไม่ต้องเขียนโค้ด

สถาปัตยกรรม MCP ของ Google Workspace

สิ่งที่คุณต้องดำเนินการ

  • เปิดใช้บริการ Google Workspace MCP ในโปรเจ็กต์ที่อยู่ในระบบคลาวด์ของ Google
  • กำหนดค่า Gemini CLI ให้ใช้บริการ MCP เหล่านี้
  • ทดสอบการผสานรวมด้วยพรอมต์ที่สนุกและมีประโยชน์ซึ่งโต้ตอบกับข้อมูล Google Workspace

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

  • เว็บเบราว์เซอร์ เช่น Chrome
  • โปรเจ็กต์ Google Cloud
  • บัญชี Google Workspace
  • ติดตั้ง Gemini CLI ในเครื่องของคุณ

Codelab นี้จะใช้เวลาประมาณ 30 นาที

เข้าถึง Codelab นี้ได้ง่าย

คิวอาร์โค้ดเพื่อเข้าถึง Codelab นี้

2. ก่อนเริ่มต้น

สร้างหรือเลือกโปรเจ็กต์ Google Cloud

ในคอนโซล Google Cloud ให้เลือกหรือสร้างโปรเจ็กต์ Google Cloud

เปิดใช้ API

หากต้องการใช้เซิร์ฟเวอร์ MCP ของ Google Workspace คุณต้องเปิดใช้ Google Workspace API มาตรฐาน แม้ว่าเซิร์ฟเวอร์ MCP บางเครื่องจะทำงานโดยอิสระ แต่เซิร์ฟเวอร์อื่นๆ ยังคงต้องเปิดใช้ API มาตรฐานพื้นฐาน

  • Gmail และ Chat ยังคงต้องใช้ API มาตรฐานของตนเอง
  • ไดรฟ์กำหนดให้ใช้ API มาตรฐานสำหรับเครื่องมือบางอย่าง
  • ปฏิทินไม่จำเป็นต้องเปิดใช้ API มาตรฐาน
  • People API จัดการทั้งสิทธิ์การเข้าถึงระดับมาตรฐานและฟังก์ชัน MCP จึงไม่มีบริการ MCP แยกต่างหากให้เปิดใช้

เปิดใช้บริการ MCP

จากนั้นเปิดใช้บริการ MCP เฉพาะสำหรับผลิตภัณฑ์

กำหนดค่าแอป Chat

หากต้องการใช้เซิร์ฟเวอร์ MCP ของ Google Chat คุณต้องกำหนดค่าแอป Chat ในโปรเจ็กต์ที่อยู่ในระบบคลาวด์ของ Google

  1. ในคอนโซล Google Cloud ให้ค้นหา Google Chat API แล้วคลิก Google Chat API > จัดการ > การกำหนดค่า
  2. ตั้งค่าแอป Chat โดยทำดังนี้
    • ในช่องชื่อแอป ให้ป้อน Chat MCP
    • ในช่อง URL ของอวาตาร์ ให้ป้อน https://developers.google.com/chat/images/quickstart-app-avatar.png
    • ในคำอธิบาย ให้ป้อน Chat MCP server
    • ในส่วนฟังก์ชันการทำงาน ให้ปิดฟีเจอร์แบบอินเทอร์แอกทีฟโดยสลับเปิดใช้ฟีเจอร์แบบอินเทอร์แอกทีฟเป็นปิด
    • ในส่วนบันทึก ให้เลือกบันทึกข้อผิดพลาดไปยังการบันทึก
  3. คลิกบันทึก

3. กำหนดค่าความยินยอมและไคลเอ็นต์ OAuth

เซิร์ฟเวอร์ MCP ของ Google Workspace ใช้ OAuth 2.0 เพื่อการตรวจสอบสิทธิ์ที่ปลอดภัย คุณต้องกำหนดค่าหน้าจอขอความยินยอม OAuth และสร้างไคลเอ็นต์แอปพลิเคชันบนเดสก์ท็อป

เซิร์ฟเวอร์ MCP ของ Google Workspace ใช้ OAuth 2.0 ในการตรวจสอบสิทธิ์ คุณต้องกำหนดค่าหน้าจอขอความยินยอมก่อน

  1. ในคอนโซล Google Cloud ให้ไปที่ Google Auth Platform > การสร้างแบรนด์ คลิกเริ่มต้นใช้งานหากยังไม่ได้กำหนดค่า
  2. กำหนดค่าข้อมูลแอป:
    • ชื่อแอป: Google Workspace MCP Servers
    • อีเมลสนับสนุนสำหรับผู้ใช้: เลือกอีเมลของคุณ
  3. กําหนดค่ากลุ่มเป้าหมาย: เลือกภายใน (หรือภายนอกหากไม่มีตัวเลือกภายใน)
  4. กำหนดค่าข้อมูลติดต่อ: ป้อนอีเมล
  5. อ่านและยอมรับนโยบายข้อมูลผู้ใช้ แล้วคลิกสร้าง
  6. หากเลือกภายนอก ให้ไปที่กลุ่มเป้าหมาย แล้วเพิ่มอีเมลของคุณในส่วนผู้ใช้ทดสอบ
  7. ไปที่การเข้าถึงข้อมูล > เพิ่มหรือนำขอบเขตออก ในส่วนเพิ่มขอบเขตด้วยตนเอง ให้เพิ่มรายการต่อไปนี้สำหรับเซิร์ฟเวอร์ที่ต้องการใช้
    • Google ปฏิทิน: https://www.googleapis.com/auth/calendar.calendarlist.readonly, https://www.googleapis.com/auth/calendar.events.freebusy, https://www.googleapis.com/auth/calendar.events.readonly
    • Google Chat: https://www.googleapis.com/auth/chat.spaces.readonly, https://www.googleapis.com/auth/chat.memberships.readonly, https://www.googleapis.com/auth/chat.messages.readonly, https://www.googleapis.com/auth/chat.users.readstate.readonly
    • Google ไดรฟ์: https://www.googleapis.com/auth/drive.readonly, https://www.googleapis.com/auth/drive.file
    • Gmail: https://www.googleapis.com/auth/gmail.readonly, https://www.googleapis.com/auth/gmail.compose
    • People API: https://www.googleapis.com/auth/directory.readonly, https://www.googleapis.com/auth/userinfo.profile, https://www.googleapis.com/auth/contacts.readonly
  8. คลิกเพิ่มลงในตาราง จากนั้นคลิกอัปเดต แล้วคลิกบันทึก

สร้างรหัสไคลเอ็นต์ OAuth

  1. ไปที่ Google Auth Platform > Clients > Create Client
  2. เลือกแอปเดสก์ท็อปเป็นประเภทแอปพลิเคชัน
  3. ตั้งชื่อว่า Gemini CLI
  4. คลิกสร้าง แล้วคัดลอก Client ID และ Client Secret คุณจะต้องใช้ข้อมูลเหล่านี้ในขั้นตอนถัดไป

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

ตอนนี้เรามากำหนดค่า Gemini CLI เพื่อใช้ปลายทางเหล่านี้กัน หากยังไม่ได้ติดตั้ง Gemini CLI ให้ทำตามวิธีการติดตั้งในเว็บไซต์ Gemini CLI

สร้างไฟล์การกำหนดค่า

เปิดหรือสร้าง ~/.gemini/settings.json ในไดเรกทอรีหน้าแรก แล้วเพิ่มการกำหนดค่าต่อไปนี้ แทนที่ตัวยึดตำแหน่งด้วยข้อมูลเข้าสู่ระบบ OAuth

{
  "mcpServers": {
    "calendar": {
      "httpUrl": "https://calendarmcp.googleapis.com/mcp/v1",
      "oauth": {
        "enabled": true,
        "clientId": "<YOUR_CLIENT_ID>",
        "clientSecret": "<YOUR_CLIENT_SECRET>",
        "scopes": [
          "https://www.googleapis.com/auth/calendar.calendarlist.readonly",
          "https://www.googleapis.com/auth/calendar.events.freebusy",
          "https://www.googleapis.com/auth/calendar.events.readonly"
        ]
      }
    },
    "chat": {
      "httpUrl": "https://chatmcp.googleapis.com/mcp/v1",
      "oauth": {
        "enabled": true,
        "clientId": "<YOUR_CLIENT_ID>",
        "clientSecret": "<YOUR_CLIENT_SECRET>",
        "scopes": [
          "https://www.googleapis.com/auth/chat.spaces.readonly",
          "https://www.googleapis.com/auth/chat.memberships.readonly",
          "https://www.googleapis.com/auth/chat.messages.readonly",
          "https://www.googleapis.com/auth/chat.users.readstate.readonly"
        ]
      }
    },
    "drive": {
      "httpUrl": "https://drivemcp.googleapis.com/mcp/v1",
      "oauth": {
        "enabled": true,
        "clientId": "<YOUR_CLIENT_ID>",
        "clientSecret": "<YOUR_CLIENT_SECRET>",
        "scopes": [
          "https://www.googleapis.com/auth/drive.readonly",
          "https://www.googleapis.com/auth/drive.file"
        ]
      }
    },
    "gmail": {
      "httpUrl": "https://gmailmcp.googleapis.com/mcp/v1",
      "oauth": {
        "enabled": true,
        "clientId": "<YOUR_CLIENT_ID>",
        "clientSecret": "<YOUR_CLIENT_SECRET>",
        "scopes": [
          "https://www.googleapis.com/auth/gmail.readonly",
          "https://www.googleapis.com/auth/gmail.compose"
        ]
      }
    },
    "people": {
      "httpUrl": "https://people.googleapis.com/mcp/v1",
      "oauth": {
        "enabled": true,
        "clientId": "<YOUR_CLIENT_ID>",
        "clientSecret": "<YOUR_CLIENT_SECRET>",
        "scopes": [
          "https://www.googleapis.com/auth/directory.readonly",
          "https://www.googleapis.com/auth/userinfo.profile",
          "https://www.googleapis.com/auth/contacts.readonly"
        ]
      }
    }
  }
}

5. ตรวจสอบสิทธิ์และยืนยันเซิร์ฟเวอร์ MCP

ก่อนที่จะใช้เซิร์ฟเวอร์ MCP ได้ คุณต้องตรวจสอบสิทธิ์และยืนยันว่าเซิร์ฟเวอร์เชื่อมต่ออยู่

เริ่มใช้ Gemini CLI

เรียกใช้คำสั่งต่อไปนี้ในเทอร์มินัลเพื่อเริ่ม Gemini CLI

gemini

ตรวจสอบสิทธิ์

ตรวจสอบสิทธิ์กับบริการที่ต้องการทดสอบโดยเรียกใช้คำสั่งที่เกี่ยวข้องใน Gemini CLI คุณเพียงแค่ต้องตรวจสอบสิทธิ์กับบริการที่วางแผนจะใช้ใน Codelab นี้

ปฏิทิน

/mcp auth calendar

แชท

/mcp auth chat

ไดรฟ์

/mcp auth drive

Gmail

/mcp auth gmail

ผู้คน

/mcp auth people

ทำตามข้อความแจ้งในเบราว์เซอร์เพื่อให้สิทธิ์แต่ละบริการ

ยืนยันการเชื่อมต่อ

ตรวจสอบว่าเครื่องมือโหลดและพร้อมใช้งานแล้ว

/mcp list

คุณควรเห็นเอาต์พุตที่ระบุว่าบริการReadyพร้อมเครื่องมือที่แสดง

6. ทดสอบเซิร์ฟเวอร์ MCP

ตอนนี้คุณสามารถโต้ตอบกับข้อมูล Google Workspace ได้โดยใช้ภาษาที่เป็นธรรมชาติ ตัวอย่างพรอมต์สำหรับแต่ละบริการมีดังนี้

Google ปฏิทิน

ลองถาม Gemini เกี่ยวกับตารางเวลาของคุณ

  • "สัปดาห์นี้ฉันมีการประชุมที่กำลังจะมาถึงอะไรบ้าง"
  • "พรุ่งนี้ช่วงบ่ายฉันมีเวลาว่างไหม"

Google Chat

ลองขอให้ Gemini ค้นหาข้อความโดยใช้คำสั่งต่อไปนี้

  • "ค้นหาข้อความที่มีคำว่า "[KEYWORD]" ใน "[SPACE_NAME]" หน่อย"

Google ไดรฟ์

ลองขอให้ Gemini ค้นหาหรืออ่านไฟล์โดยทำดังนี้

  • "ค้นหาไฟล์ใน Google ไดรฟ์ของฉันที่มีคำว่า "[คีย์เวิร์ด]" หน่อย"
  • "แสดงเอกสารล่าสุดที่ฉันแก้ไข"
  • "อ่านเนื้อหาในเอกสาร '[FILE_NAME]' แล้วสรุปเป้าหมายหลัก"

Gmail

ลองขอให้ Gemini ค้นหาหรือจัดการอีเมลของคุณ

  • "สรุปอีเมล 5 ฉบับล่าสุดที่ฉันได้รับ"
  • "ร่างอีเมลถึง ‘[EMAIL_ADDRESS]' เพื่อขอข้อมูลอัปเดตเกี่ยวกับโปรเจ็กต์ ‘[PROJECT_NAME]'"

People API

ลองถาม Gemini เกี่ยวกับโปรไฟล์หรือรายชื่อติดต่อของคุณ

  • "ฉันชื่ออะไรตามโปรไฟล์ Google ของฉัน"
  • "ค้นหาข้อมูลติดต่อของ ‘[ชื่อ]’"

การรวมบริการหลายอย่าง

ประสิทธิภาพที่แท้จริงของ MCP จะเกิดขึ้นเมื่อ Gemini จัดการงานในบริการต่างๆ ลองใช้พรอมต์ต่อไปนี้ซึ่งแสดงให้เห็นถึงความสามารถในการทำงานข้ามบริการ

  • "ค้นหาไฟล์ในไดรฟ์ที่เกี่ยวข้องกับ 'การอัปเดตเหตุการณ์สำคัญของ [ชื่อโปรเจ็กต์]' สรุปเนื้อหาของไฟล์ ค้นหาอีเมลของ '[ชื่อ]' และสร้างฉบับร่างใน Gmail เพื่อส่งให้บุคคลดังกล่าวพร้อมสรุป"

สำรวจเครื่องมือเพิ่มเติม

นี่เป็นเพียงตัวอย่างบางส่วนของสิ่งที่คุณทำได้ หากต้องการดูรายการเครื่องมือทั้งหมดที่พร้อมใช้งานสำหรับแต่ละบริการและทดลองใช้ โปรดดูส่วนผลิตภัณฑ์ที่รองรับในเอกสารประกอบอย่างเป็นทางการ

7. ล้างข้อมูล

หากต้องการล้างข้อมูลโปรเจ็กต์โดยไม่ลบ คุณสามารถปิดใช้ API และบริการ MCP ที่เปิดใช้ได้โดยทำดังนี้

  1. ในคอนโซล Google Cloud ให้ไปที่แดชบอร์ด API และบริการ
  2. คลิก API ของ Google Workspace และ MCP แต่ละรายการที่คุณเปิดใช้ (เช่น Calendar MCP, Chat MCP) แล้วคลิกปิดใช้ API

ลบข้อมูลเข้าสู่ระบบไคลเอ็นต์ OAuth ในคอนโซล Google Auth Platform หากคุณไม่ต้องการใช้ข้อมูลดังกล่าวอีกต่อไป

8. ขอแสดงความยินดี

ยินดีด้วย คุณกำหนดค่าและทดสอบเซิร์ฟเวอร์ MCP ของ Google Workspace อย่างเป็นทางการโดยใช้ Gemini CLI เรียบร้อยแล้ว

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

  • วิธีเปิดใช้บริการ Google Workspace MCP ใน Google Cloud
  • วิธีกำหนดค่าไคลเอ็นต์ OAuth สำหรับ MCP
  • วิธีใช้ Gemini CLI เพื่อโต้ตอบกับข้อมูล Google Workspace โดยใช้เครื่องมือมาตรฐาน

เอกสารอ้างอิง