MCP Reference: calendarmcp.googleapis.com

모델 컨텍스트 프로토콜 (MCP) 서버는 대규모 언어 모델 (LLM) 또는 AI 애플리케이션에 컨텍스트, 데이터 또는 기능을 제공하는 외부 서비스 간의 프록시 역할을 합니다. MCP 서버는 AI 애플리케이션을 데이터베이스 및 웹 서비스와 같은 외부 시스템에 연결하여 응답을 AI 애플리케이션이 이해할 수 있는 형식으로 변환합니다.

MCP 도구

MCP 도구는 MCP 서버가 실제 세계에서 작업을 실행하기 위해 LLM 또는 AI 애플리케이션에 노출하는 함수 또는 실행 가능한 기능입니다.

calendarmcp.googleapis.com MCP 서버에는 다음과 같은 도구가 있습니다.

MCP 도구
list_events

지정된 조건을 충족하는 지정된 캘린더의 캘린더 일정을 나열합니다.

주요 기능:

  • 사용자의 기본 캘린더 또는 기타 캘린더일 수 있는 모든 캘린더 ID입니다.
  • 키워드 검색 유형입니다.
  • 기간 필터링입니다.
  • 시간 및 키워드 제약조건과 일치하는 모든 이벤트를 검색합니다.

다음과 같은 경우 대신 search_events 도구를 사용하세요.

  • 제약조건을 충족하는 모든 이벤트가 아닌 가장 관련성이 높은 이벤트 (상위 K개)를 찾아야 합니다.
  • 시맨틱 검색 기능이 필요합니다.
  • 사용자의 기본 캘린더에서만 특정 정보를 검색합니다.

다음과 같은 쿼리에 이 도구를 사용하세요.

  • 내일 캘린더에 뭐가 있어?
  • 2025년 7월 14일 캘린더에 뭐가 있어?
  • 다음 주에 회의가 어떻게 돼?
  • 오늘 오후에 일정이 겹치는 회의가 있어?

예:

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

지정된 캘린더에서 단일 이벤트를 반환합니다.

다음과 같은 쿼리에 이 도구를 사용하세요.

  • 팀 회의의 세부정보를 가져옵니다.
  • 내 캘린더에서 ID가 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

하나 이상의 캘린더에서 기간을 제안합니다. 기본 캘린더에 액세스하려면 attendee_emails 필드에 'primary'를 추가합니다.

다음과 같은 쿼리에 이 도구를 사용하세요.

  • 회의에 참석할 수 있는 시간은 언제야?
  • 둘 다 참석할 수 있는 30분 슬롯을 찾아 줘.
  • jane.doe@google.com이 월요일 오전에 참석할 수 있는지 확인해 줘.

예:

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

캘린더 일정을 만듭니다.

다음과 같은 쿼리에 이 도구를 사용하세요.

  • 내일 오후 2시에 '제인과의 회의'라는 캘린더 일정을 만들어 줘.
  • 다음 주 월요일 오전 10시부터 11시까지 john.doe@google.com과 회의 일정을 잡아 줘.

예:

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

캘린더 일정을 삭제합니다.

다음과 같은 쿼리에 이 도구를 사용하세요.

  • 내 캘린더에서 ID가 event123인 이벤트를 삭제해 줘.

이벤트를 취소하거나 거부하려면 대신 respond_to_event 도구를 사용하세요.

예:

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

이벤트에 응답합니다.

다음과 같은 쿼리에 이 도구를 사용하세요.

  • 내 캘린더에서 ID가 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
}'