MCP Reference: calendarmcp.googleapis.com

นี่คือเซิร์ฟเวอร์ MCP ที่ Google ปฏิทิน API จัดเตรียมไว้ให้ เซิร์ฟเวอร์มีเครื่องมือสำหรับนักพัฒนาซอฟต์แวร์ในการสร้างแอปพลิเคชัน LLM บนปฏิทิน

เซิร์ฟเวอร์ Model Context Protocol (MCP) ทำหน้าที่เป็นพร็อกซีระหว่างบริการภายนอกที่ให้บริบท ข้อมูล หรือความสามารถแก่โมเดลภาษาขนาดใหญ่ (LLM) หรือแอปพลิเคชัน AI เซิร์ฟเวอร์ MCP จะเชื่อมต่อแอปพลิเคชัน AI กับระบบภายนอก เช่น ฐานข้อมูลและบริการเว็บ โดยจะแปลคำตอบเป็นรูปแบบที่แอปพลิเคชัน AI เข้าใจได้

การตั้งค่าเซิร์ฟเวอร์

คุณต้องกำหนดค่าเซิร์ฟเวอร์ MCP ของปฏิทินก่อนใช้งาน ดูข้อมูลเพิ่มเติมเกี่ยวกับการใช้เซิร์ฟเวอร์ MCP ระยะไกลของ Google และ Google Cloud ได้ที่ภาพรวมเซิร์ฟเวอร์ MCP ของ Google Cloud

ปลายทางของเซิร์ฟเวอร์

ปลายทางบริการ MCP คือที่อยู่เครือข่ายและอินเทอร์เฟซการสื่อสาร (โดยปกติคือ URL) ของเซิร์ฟเวอร์ MCP ที่แอปพลิเคชัน AI (โฮสต์สำหรับไคลเอ็นต์ MCP) ใช้เพื่อสร้างการเชื่อมต่อที่ปลอดภัยและได้มาตรฐาน ซึ่งเป็นจุดติดต่อสำหรับ LLM ในการขอบริบท เรียกใช้เครื่องมือ หรือเข้าถึงทรัพยากร ปลายทาง MCP ของ Google อาจเป็นแบบทั่วโลกหรือระดับภูมิภาค

เซิร์ฟเวอร์ MCP ของ Calendar API มีปลายทาง MCP ทั่วโลกต่อไปนี้

  • https://calendarmcp.googleapis.com/mcp/v1

เครื่องมือ MCP

เครื่องมือ MCP คือฟังก์ชันหรือความสามารถที่เรียกใช้งานได้ซึ่งเซิร์ฟเวอร์ MCP แสดงต่อ LLM หรือแอปพลิเคชัน AI เพื่อดำเนินการในโลกแห่งความเป็นจริง

เครื่องมือ

เซิร์ฟเวอร์ MCP ของ calendarmcp.googleapis.com มีเครื่องมือต่อไปนี้

เครื่องมือ MCP
list_events

แสดงกิจกรรมในปฏิทินในปฏิทินที่ระบุซึ่งตรงตามเงื่อนไขที่ระบุ

ฟีเจอร์หลัก

  • รหัสปฏิทิน ซึ่งอาจเป็นปฏิทินหลักของผู้ใช้หรือปฏิทินอื่นๆ
  • การทำงานของคีย์เวิร์ด
  • การกรองช่วงเวลา
  • ดึงเหตุการณ์ทั้งหมดที่ตรงกับข้อจํากัดด้านเวลาและคีย์เวิร์ด

ใช้เครื่องมือ search_events แทนในกรณีต่อไปนี้

  • คุณต้องค้นหาเหตุการณ์ที่เกี่ยวข้องมากที่สุด (K อันดับแรก) แทนที่จะเป็นเหตุการณ์ทั้งหมดที่ตรงตามข้อจํากัด
  • คุณต้องมีความสามารถในการค้นหาเชิงความหมาย
  • คุณกำลังค้นหาข้อมูลที่เฉพาะเจาะจงในปฏิทินหลักของผู้ใช้เท่านั้น

ใช้เครื่องมือนี้สำหรับการค้นหา เช่น

  • พรุ่งนี้มีอะไรในปฏิทินของฉันบ้าง
  • วันที่ 14 กรกฎาคม 2025 มีอะไรในปฏิทินของฉันบ้าง
  • สัปดาห์หน้ามีประชุมอะไร
  • ฉันมีประชุมชนกันในช่วงบ่ายนี้ไหม

ตัวอย่าง

list_events(
    startTime='2024-09-17T06:00:00',
    endTime='2024-09-17T12:00:00',
    pageSize=10
)
# Returns up to 10 calendar events between 6:00 AM and 12:00 PM on September 17, 2024 from the user's primary calendar.
get_event

แสดงผลกิจกรรมเดียวจากปฏิทินที่ระบุ

ใช้เครื่องมือนี้สำหรับการค้นหา เช่น

  • ดูรายละเอียดการประชุมของทีม
  • แสดงกิจกรรมที่มีรหัส event123 ในปฏิทินของฉัน

ตัวอย่าง

get_event(
    eventId='event123'
)
# Returns the event details for the event with id `event123` on the user's primary calendar.
list_calendars

แสดงปฏิทินในรายการปฏิทินของผู้ใช้

ใช้เครื่องมือนี้สำหรับการค้นหา เช่น

  • ปฏิทินทั้งหมดของฉันมีอะไรบ้าง

ตัวอย่าง

list_calendars()
# Returns all calendars the authenticated user has access to.
suggest_time

แนะนำช่วงเวลาในปฏิทินอย่างน้อย 1 รายการ หากต้องการเข้าถึงปฏิทินหลัก ให้เพิ่ม "primary" ในฟิลด์ attendee_emails

ใช้เครื่องมือนี้สำหรับการค้นหา เช่น

  • พวกเราทุกคนว่างประชุมกันเมื่อไหร่
  • หาช่วงเวลา 30 นาทีที่ทั้ง 2 คนว่าง
  • Check if jane.doe@google.com is free on Monday morning.

ตัวอย่าง

suggest_time(
    attendeeEmails=['joedoe@gmail.com', 'janedoe@gmail.com'],
    startTime='2024-09-10T00:00:00',
    endTime='2024-09-17T00:00:00',
    durationMinutes=60,
    preferences={
        'startHour': '09:00',
        'endHour': '17:00',
        'excludeWeekends': True
    }
)
# Returns up to 5 suggested time slots where both users are available for at least one hour between 9:00 AM and 5:00 PM on weekdays from September 10 through September 16, 2024.
create_event

สร้างกิจกรรมในปฏิทิน

ใช้เครื่องมือนี้สำหรับการค้นหา เช่น

  • สร้างกิจกรรมในปฏิทินของฉันสำหรับวันพรุ่งนี้เวลา 14:00 น. ชื่อ "ประชุมกับเจน"
  • นัดหมายการประชุมกับ john.doe@google.com วันจันทร์หน้าเวลา 10:00-11:00 น.

ตัวอย่าง

create_event(
    summary='Meeting with Jane',
    startTime='2024-09-17T14:00:00',
    endTime='2024-09-17T15:00:00'
)
# Creates an event on the primary calendar for September 17, 2024 from 2pm to 3pm called 'Meeting with Jane'.
update_event

อัปเดตกิจกรรมในปฏิทิน

ใช้เครื่องมือนี้สำหรับการค้นหา เช่น

  • อัปเดตกิจกรรม "ประชุมกับเจน" ให้เลื่อนไป 1 ชั่วโมง
  • เพิ่ม john.doe@google.com ในการประชุมพรุ่งนี้

ตัวอย่าง

update_event(
    eventId='event123',
    summary='Meeting with Jane and John'
)
# Updates the summary of event with id 'event123' on the primary calendar to 'Meeting with Jane and John'.
delete_event

ลบกิจกรรมในปฏิทิน

ใช้เครื่องมือนี้สำหรับการค้นหา เช่น

  • ลบกิจกรรมที่มีรหัส event123 ในปฏิทินของฉัน

หากต้องการยกเลิกหรือปฏิเสธกิจกรรม ให้ใช้เครื่องมือ respond_to_event แทน

ตัวอย่าง

delete_event(
    eventId='event123'
)
# Deletes the event with id 'event123' on the user's primary calendar.
respond_to_event

ตอบกลับกิจกรรม

ใช้เครื่องมือนี้สำหรับการค้นหา เช่น

  • ยอมรับกิจกรรมที่มีรหัส event123 ในปฏิทินของฉัน
  • ปฏิเสธการประชุมกับเจน
  • ยกเลิกการประชุมครั้งถัดไป
  • ตอบรับการประชุมวางแผนชั่วคราว

ตัวอย่าง

respond_to_event(
    eventId='event123',
    responseStatus='accepted'
)
# Responds with status 'accepted' to the event with id 'event123' on the user's primary calendar.

ดูข้อกำหนดของเครื่องมือ MCP

หากต้องการดูข้อกำหนดของเครื่องมือ MCP สำหรับเครื่องมือทั้งหมดในเซิร์ฟเวอร์ MCP ให้ใช้วิธี tools/list ตัวอย่างต่อไปนี้แสดงวิธีใช้ curl เพื่อแสดงรายการเครื่องมือทั้งหมดและข้อกำหนดของเครื่องมือเหล่านั้นที่พร้อมใช้งานในเซิร์ฟเวอร์ MCP ในปัจจุบัน

คำขอ Curl
curl --location 'https://calendarmcp.googleapis.com/mcp/v1' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
    "method": "tools/list",
    "jsonrpc": "2.0",
    "id": 1
}'