เริ่มต้นใช้งาน 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

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

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

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

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

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

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

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

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

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

เซิร์ฟเวอร์ Google Workspace MCP ใช้ 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 > ไคลเอ็นต์ > สร้างไคลเอ็นต์
  2. เลือกแอปบนเดสก์ท็อป เป็นประเภทแอปพลิเคชัน
  3. ตั้งชื่อเป็น Gemini CLI
  4. คลิกสร้าง แล้วคัดลอกรหัสไคลเอ็นต์ และข้อมูลลับของไคลเอ็นต์ คุณจะต้องใช้ข้อมูลเหล่านี้ในขั้นตอนถัดไป

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 ไดรฟ์ที่มีคำว่า ‘[KEYWORD]'"
  • "แสดงรายการเอกสารล่าสุดที่ฉันแก้ไข"
  • "อ่านเนื้อหาเอกสาร '[FILE_NAME]' ของฉันและสรุปเป้าหมายหลัก"

Gmail

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

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

People API

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

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

การรวมบริการหลายรายการ

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

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

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

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

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

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

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

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

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

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

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

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

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