MCP Reference: calendarmcp.googleapis.com

Đây là một máy chủ MCP do API Lịch Google cung cấp. Máy chủ này cung cấp các công cụ để nhà phát triển xây dựng ứng dụng LLM trên Lịch.

Máy chủ Giao thức ngữ cảnh mô hình (MCP) hoạt động như một proxy giữa dịch vụ bên ngoài cung cấp ngữ cảnh, dữ liệu hoặc các chức năng cho Mô hình ngôn ngữ lớn (LLM) hoặc ứng dụng AI. Các máy chủ MCP kết nối các ứng dụng AI với các hệ thống bên ngoài như cơ sở dữ liệu và dịch vụ web, chuyển đổi các phản hồi của chúng sang định dạng mà ứng dụng AI có thể hiểu được.

Thiết lập máy chủ

Bạn phải định cấu hình máy chủ MCP của Lịch trước khi sử dụng. Để biết thêm thông tin về cách sử dụng máy chủ MCP từ xa của Google và Google Cloud, hãy xem bài viết Tổng quan về máy chủ MCP của Google Cloud.

Điểm cuối của máy chủ

Điểm cuối dịch vụ MCP là địa chỉ mạng và giao diện giao tiếp (thường là một URL) của máy chủ MCP mà một ứng dụng AI (Máy chủ lưu trữ cho ứng dụng MCP) sử dụng để thiết lập một kết nối an toàn, tiêu chuẩn. Đây là đầu mối liên hệ để LLM yêu cầu ngữ cảnh, gọi một công cụ hoặc truy cập vào một tài nguyên. Các điểm cuối MCP của Google có thể là toàn cầu hoặc theo khu vực.

Máy chủ MCP của API Lịch có điểm cuối MCP chung sau đây:

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

Công cụ MCP

Công cụ MCP là một chức năng hoặc khả năng thực thi mà máy chủ MCP cung cấp cho một LLM hoặc ứng dụng AI để thực hiện một hành động trong thế giới thực.

Công cụ

Máy chủ MCP calendarmcp.googleapis.com có các công cụ sau:

Công cụ MCP
list_events

Liệt kê các sự kiện trên lịch trong một lịch cụ thể thoả mãn các điều kiện đã cho.

Các tính năng chính:

  • Mọi mã nhận dạng lịch, có thể là lịch chính của người dùng hoặc các lịch khác.
  • Lọc theo phạm vi thời gian.
  • Truy xuất TẤT CẢ sự kiện phù hợp với các ràng buộc về thời gian.

Nếu có, hãy dùng công cụ search_events thay vì tìm kiếm trên lịch chính của người dùng nếu:

  • Bạn đang truy vấn các sự kiện khớp với một chủ đề, danh mục hoặc ý định cụ thể (ví dụ: "cuộc họp ăn trưa", "cuộc họp đồng bộ hoá dự án").
  • Bạn cần tìm (K hàng đầu) sự kiện phù hợp nhất thay vì tất cả sự kiện đáp ứng các ràng buộc.
  • Bạn cần có khả năng tìm kiếm theo từ khoá hoặc tìm kiếm ngữ nghĩa.

Sử dụng công cụ này cho các truy vấn như:

  • Lịch của tôi ngày mai có gì?
  • Lịch của tôi vào ngày 14 tháng 7 năm 2025 có gì?
  • Tuần tới tôi có những cuộc họp nào?
  • Chiều nay, tôi có cuộc họp nào trùng lịch không?
  • Ngày mai John có những cuộc họp nào?

Ví dụ:

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

Trả về một sự kiện duy nhất từ một lịch nhất định.

Sử dụng công cụ này cho các truy vấn như:

  • Xem thông tin chi tiết về cuộc họp nhóm.
  • Cho tôi xem sự kiện có mã event123 trên lịch của tôi.

Ví dụ:

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

Trả về các lịch trong danh sách lịch của người dùng.

Sử dụng công cụ này cho các truy vấn như:

  • Tôi có những lịch nào?

Ví dụ:

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

Đề xuất khoảng thời gian trên một hoặc nhiều lịch. Để truy cập vào lịch chính, hãy thêm "primary" vào trường attendee_emails.

Sử dụng công cụ này cho các truy vấn như:

  • Khi nào tất cả chúng ta đều rảnh để họp?
  • Tìm một khung giờ 30 phút mà cả hai chúng ta đều rảnh.
  • Kiểm tra xem jane.doe@google.com có rảnh vào sáng thứ Hai hay không.

Ví dụ:

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

Tạo một sự kiện trên lịch.

Sử dụng công cụ này cho các truy vấn như:

  • Tạo một sự kiện trên lịch của tôi cho ngày mai lúc 2 giờ chiều có tên là "Cuộc họp với Jane".
  • Lên lịch họp với john.doe@google.com vào thứ Hai tuần sau, từ 10 giờ đến 11 giờ.

Ví dụ:

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

Cập nhật một sự kiện trên lịch.

Sử dụng công cụ này cho các truy vấn như:

  • Đổi lịch sự kiện "Cuộc họp với Jane" sang một giờ sau.
  • Thêm john.doe@google.com vào cuộc họp ngày mai.

Ví dụ:

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

Xoá một sự kiện trên lịch.

Sử dụng công cụ này cho các truy vấn như:

  • Xoá sự kiện có mã event123 trên lịch của tôi.

Để huỷ hoặc từ chối một sự kiện, hãy dùng công cụ respond_to_event.

Ví dụ:

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

Phản hồi một sự kiện.

Sử dụng công cụ này cho các truy vấn như:

  • Chấp nhận sự kiện có mã event123 trên lịch của tôi.
  • Từ chối cuộc họp với Jane.
  • Huỷ cuộc họp tiếp theo của tôi.
  • Chấp nhận cuộc họp lập kế hoạch ở chế độ dự kiến.

Ví dụ:

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

Nhận thông số kỹ thuật của công cụ MCP

Để nhận thông số kỹ thuật của công cụ MCP cho tất cả công cụ trong máy chủ MCP, hãy sử dụng phương thức tools/list. Ví dụ sau đây minh hoạ cách sử dụng curl để liệt kê tất cả các công cụ và thông số kỹ thuật hiện có trong máy chủ MCP.

Yêu cầu 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
}'