MCP Reference: calendarmcp.googleapis.com

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

เครื่องมือ MCP

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

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

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

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

ฟีเจอร์หลัก

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

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

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

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

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

ตัวอย่าง

list_events(
    start_time='2024-09-17T06:00:00',
    end_time='2024-09-17T12:00:00',
    page_size=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(
    event_id='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(
    attendee_emails=['joedoe@gmail.com', 'janedoe@gmail.com'],
    start_time='2024-09-10T00:00:00',
    end_time='2024-09-17T00:00:00',
    duration_minutes=60,
    preferences={
        'start_hour': '09:00',
        'end_hour': '17:00',
        'exclude_weekends': 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',
    start_time='2024-09-17T14:00:00',
    end_time='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(
    event_id='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(
    event_id='event123'
)
# Deletes the event with id 'event123' on the user's primary calendar.
respond_to_event

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

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

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

ตัวอย่าง

respond_to_event(
    event_id='event123',
    response_status='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' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
    "method": "tools/list",
    "jsonrpc": "2.0",
    "id": 1
}'