도구: list_events
지정된 모든 제약 조건과 일치하는 지정된 캘린더의 일정을 반환합니다. 사용자가 요청하지 않는 한 시간 제약을 지정해서는 안 됩니다. 기본 일정에서 키워드 또는 주제 기반 검색을 무기한으로 실행하는 경우에는 search_events 도구를 대신 사용해야 합니다.
다음 샘플은 curl를 사용하여 list_events MCP 도구를 호출하는 방법을 보여줍니다.
| curl 요청 |
|---|
curl --location 'https://calendarmcp.googleapis.com/mcp/v1' \ --header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "list_events", "arguments": { // provide these details according to the tool MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
입력 스키마
ListEventsRequest
| JSON 표현 |
|---|
{
"eventTypeFilter": [
string
],
"eventType": [
enum ( |
| 필드 | |
|---|---|
eventTypeFilter[] |
선택사항입니다. 지원 중단됨: 대신 |
eventType[] |
선택사항입니다. 반환할 이벤트 유형입니다. 비어 있으면 |
통합 필드
|
|
calendarId |
선택사항입니다. 일정을 포함하는 캘린더의 ID입니다. 이메일 주소 - |
통합 필드
|
|
pageSize |
선택사항입니다. 페이지당 최대 이벤트 수 (기본값 |
통합 필드
|
|
pageToken |
선택사항입니다. 다음 페이지 토큰입니다. 이전 페이지의 |
통합 필드
|
|
startTime |
선택사항입니다. 기간의 하한입니다. 사용자가 특정 기간을 요청한 경우에만 설정해야 합니다. |
통합 필드
|
|
endTime |
선택사항입니다. 기간의 상한입니다. 사용자가 특정 기간 또는 과거의 시간을 요청한 경우에만 설정해야 합니다. |
통합 필드
|
|
timeZone |
선택사항입니다. 시간대가 없는 날짜를 확인하는 데 사용되는 시간대 (IANA ID, 예: |
통합 필드
|
|
orderBy |
선택사항입니다. 이벤트가 반환되어야 하는 순서입니다. 가능한 값은 다음과 같습니다.
|
통합 필드
|
|
fullText |
선택사항입니다. 제목, 설명, 위치 또는 참석자와 일치하는 자유 형식의 대소문자 구분 없는 검색입니다. 모든 검색어를 그대로 포함하는 이벤트와 일치합니다 (AND 검색). |
EventType
이벤트 종류 생성 후에는 변경할 수 없습니다.
| 열거형 | |
|---|---|
EVENT_TYPE_UNSPECIFIED |
DEFAULT로 처리됩니다. |
DEFAULT |
정기 이벤트입니다. 기본값 |
OUT_OF_OFFICE |
부재중 일정입니다. |
FOCUS_TIME |
방해 금지 시간 일정입니다. |
WORKING_LOCATION |
근무 위치 일정입니다. |
BIRTHDAY |
연간 반복되는 특별한 종일 일정입니다. |
FROM_GMAIL |
Gmail에 포함된 일정 이 유형의 이벤트는 만들 수 없습니다. |
출력 스키마
ListEventsResponse
| JSON 표현 |
|---|
{ "summary": string, "description": string, "updated": string, "timeZone": string, "accessRole": string, "defaultReminders": [ { object ( |
| 필드 | |
|---|---|
summary |
캘린더의 제목입니다. |
description |
캘린더에 대한 설명입니다. |
updated |
캘린더의 마지막 업데이트 시간 (ISO 8601)입니다. |
timeZone |
캘린더의 시간대입니다. |
accessRole |
출력 전용입니다. 캘린더에 대한 사용자의 액세스 역할입니다. 가능한 값은 다음과 같습니다.
owner 역할은 캘린더의 데이터 소유자와 다릅니다. 캘린더에는 단일 데이터 소유자가 있지만 owner 역할이 있는 사용자는 여러 명일 수 있습니다.
|
defaultReminders[] |
캘린더의 일정에 대한 기본 리마인더입니다. |
events[] |
이벤트 목록입니다. |
통합 필드
|
|
nextPageToken |
다음 페이지 토큰입니다. 다음 페이지가 없으면 생략됩니다. |
알림
| JSON 표현 |
|---|
{ "method": string "minutes": integer } |
| 필드 | |
|---|---|
통합 필드
|
|
method |
필수 항목입니다. 전송 방법 가능한 값은 다음과 같습니다.
|
통합 필드
|
|
minutes |
필수 항목입니다. 알림이 트리거되기 전의 시간(분)입니다. |
이벤트
| JSON 표현 |
|---|
{ "id": string, "status": string, "htmlLink": string, "created": string, "updated": string, "summary": string, "description": string, "location": string, "creator": { object ( |
| 필드 | |
|---|---|
id |
고유 식별자입니다. |
status |
선택사항입니다. 확인하세요. 가능한 값은 다음과 같습니다.
|
htmlLink |
출력 전용입니다. Google Calendar 웹 UI에서 이 일정으로 연결되는 절대 링크입니다. |
created |
출력 전용입니다. 생성 시간 (ISO 8601)입니다. |
updated |
출력 전용입니다. 최종 수정 시간 (ISO 8601)입니다. |
summary |
특성이 포함될 수 있습니다 |
description |
선택사항입니다. 설명: HTML을 포함할 수 있습니다. |
location |
선택사항입니다. 위치를 탭합니다. |
creator |
출력 전용입니다. 크리에이터 |
organizer |
출력 전용입니다. 주최자 참석하는 경우 참석자에도 표시됩니다. |
start |
시작 시간 (포함)입니다. 반복 이벤트의 경우 첫 번째 인스턴스가 사용됩니다. |
end |
종료 시간 (제외)입니다. 반복 이벤트의 경우 첫 번째 인스턴스가 사용됩니다. |
recurrence[] |
|
recurringEventId |
반복 일정 인스턴스의 상위 반복 일정 ID입니다. |
originalStartTime |
반복 인스턴스의 원래 시작 시간입니다. 반복 데이터에 따라 이 인스턴스가 시작되는 시간입니다. |
transparency |
선택사항입니다. 지원 중단됨: 대신 |
visibility |
선택사항입니다. 이벤트의 공개 상태입니다. 가능한 값은 다음과 같습니다.
|
attendees[] |
참석자 |
conferenceUrl |
화상 회의 링크입니다. |
colorId |
이벤트의 색상입니다. 내 캘린더 보기에만 영향을 미칩니다. 캘린더의 색상 팔레트에 있는 항목을 참조하는 ID입니다 (문자열
|
overrideReminders[] |
리마인더를 탭합니다. 설정되지 않은 경우 캘린더 기본값으로 대체됩니다. |
attachments[] |
파일 첨부파일입니다. |
guestPermissions |
참석자 권한 |
eventType |
이벤트 종류 |
workingLocationProperties |
근무 위치 속성입니다. |
availability |
선택사항입니다. 연락 가능 여부 설정입니다. |
주 구성원
| JSON 표현 |
|---|
{ "email": string, "displayName": string, "self": boolean } |
| 필드 | |
|---|---|
email |
이메일, |
displayName |
이름 |
self |
출력 전용입니다. 이 주 구성원이 이 이벤트 사본이 표시되는 캘린더에 해당하는지 여부입니다. 기본값: |
DateOrDateTime
| JSON 표현 |
|---|
{ "date": string, "dateTime": string, "timeZone": string } |
| 필드 | |
|---|---|
date |
UTC 자정의 ISO 8601 날짜입니다 (예: |
dateTime |
ISO 8601 타임스탬프 (예: |
timeZone |
TZDB 시간대 이름입니다. |
참석자
| JSON 표현 |
|---|
{ "id": string "email": string "displayName": string "organizer": boolean "self": boolean "resource": boolean "optionalAttendee": boolean "responseStatus": string "comment": string "additionalGuests": integer } |
| 필드 | |
|---|---|
통합 필드
|
|
id |
출력 전용입니다. 프로필 ID입니다. |
통합 필드
|
|
email |
필수 항목입니다. 참석자의 이메일 주소입니다. |
통합 필드
|
|
displayName |
선택사항입니다. 이름 |
통합 필드
|
|
organizer |
출력 전용입니다. 참석자가 주최자인지 여부입니다. 기본값: |
통합 필드
|
|
self |
출력 전용입니다. 이 항목이 이 이벤트 사본이 표시되는 캘린더를 나타내는지 여부입니다. 기본값: |
통합 필드
|
|
resource |
선택사항입니다. 참석자가 리소스 (예: 회의실)인지 여부입니다. 변경할 수 없으며 참석자가 처음 추가될 때만 설정할 수 있습니다. 기본값: |
통합 필드
|
|
optionalAttendee |
선택사항입니다. 참석자가 선택사항인지 여부입니다. 기본값: |
통합 필드
|
|
responseStatus |
선택사항입니다. 응답 상태입니다. 가능한 값은 다음과 같습니다.
|
통합 필드
|
|
comment |
출력 전용입니다. 대답 댓글입니다. |
통합 필드
|
|
additionalGuests |
선택사항입니다. 추가 게스트 수입니다. 기본값: |
첨부파일
| JSON 표현 |
|---|
{ "fileUrl": string "title": string } |
| 필드 | |
|---|---|
통합 필드
|
|
fileUrl |
필수 항목입니다. 첨부파일의 URL 링크입니다. |
통합 필드
|
|
title |
선택사항입니다. 첨부파일 제목입니다. |
GuestPermissions
| JSON 표현 |
|---|
{ "guestsCanInviteOthers": boolean "guestsCanModify": boolean "guestsCanSeeGuests": boolean } |
| 필드 | |
|---|---|
통합 필드
|
|
guestsCanInviteOthers |
선택사항입니다. 참석자가 다른 사용자를 초대할 수 있는지 여부입니다. |
통합 필드
|
|
guestsCanModify |
선택사항입니다. 참석자가 일정을 수정할 수 있는지 여부입니다. |
통합 필드
|
|
guestsCanSeeGuests |
선택사항입니다. 참석자가 다른 참석자를 볼 수 있는지 여부입니다. |
WorkingLocationProperties
| JSON 표현 |
|---|
{
"type": enum ( |
| 필드 | |
|---|---|
통합 필드
|
|
type |
선택사항입니다. 근무 위치 유형입니다. |
통합 필드
|
|
customLocationLabel |
선택사항입니다. 맞춤 위치의 라벨입니다. 유형이 |
EventType
이벤트 종류 생성 후에는 변경할 수 없습니다.
| 열거형 | |
|---|---|
EVENT_TYPE_UNSPECIFIED |
DEFAULT로 처리됩니다. |
DEFAULT |
정기 이벤트입니다. 기본값 |
OUT_OF_OFFICE |
부재중 일정입니다. |
FOCUS_TIME |
방해 금지 시간 일정입니다. |
WORKING_LOCATION |
근무 위치 일정입니다. |
BIRTHDAY |
연간 반복되는 특별한 종일 일정입니다. |
FROM_GMAIL |
Gmail에 포함된 일정 이 유형의 이벤트는 만들 수 없습니다. |
WorkingLocationType
근무 위치 유형입니다.
| 열거형 | |
|---|---|
WORKING_LOCATION_TYPE_UNSPECIFIED |
지정되지 않은 근무 위치 유형입니다. HOME_OFFICE로 처리됩니다. |
HOME_OFFICE |
홈 오피스 |
CUSTOM_LOCATION |
맞춤 위치입니다. |
가용성
일정의 참석 여부 설정입니다.
| 열거형 | |
|---|---|
AVAILABILITY_UNSPECIFIED |
기본값입니다. BUSY로 처리됩니다. |
AVAILABILITY_BUSY |
캘린더에서 시간을 차단합니다. |
AVAILABILITY_FREE |
시간을 차단하지 않습니다. |
도구 주석
파괴적 힌트: ❌ | 동일한 힌트: ✅ | 읽기 전용 힌트: ✅ | 오픈 월드 힌트: ❌
승인 범위
다음 OAuth 범위 중 하나가 필요합니다.
https://www.googleapis.com/auth/calendarhttps://www.googleapis.com/auth/calendar.eventshttps://www.googleapis.com/auth/calendar.events.readonlyhttps://www.googleapis.com/auth/calendar.readonly