도구: update_event
지정된 캘린더의 일정을 업데이트합니다.
다음 샘플은 curl를 사용하여 update_event 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": "update_event", "arguments": { // provide these details according to the tool MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
입력 스키마
UpdateEvent 요청 메시지입니다. 설정되지 않은 필드는 업데이트되지 않습니다.
UpdateEventRequest
| JSON 표현 |
|---|
{ "eventId": string, "addedAttendeeEmails": [ string ], "addedAttendees": [ { object ( |
| 필드 | |
|---|---|
eventId |
필수 항목입니다. 이벤트 ID입니다. |
addedAttendeeEmails[] |
선택사항입니다. 지원 중단됨: 대신 |
addedAttendees[] |
선택사항입니다. 일정에 추가할 참석자입니다. |
removedAttendeeEmails[] |
선택사항입니다. 삭제할 일정 참석자(이메일 주소)입니다. |
overrideReminders[] |
선택사항입니다. 설정된 경우 이벤트의 기존 리마인더를 모두 대체합니다. |
addedAttachments[] |
선택사항입니다. 일정에 추가할 첨부파일입니다. |
removedAttachmentFileUrls[] |
선택사항입니다. 일정에서 삭제할 첨부파일입니다. |
통합 필드
|
|
calendarId |
선택사항입니다. 이벤트를 포함하는 캘린더의 ID입니다. 이메일 주소 - |
통합 필드
|
|
summary |
선택사항입니다. 새 제목 |
통합 필드
|
|
description |
선택사항입니다. 새 설명 HTML을 포함할 수 있습니다. |
통합 필드
|
|
location |
선택사항입니다. 새 위치 |
통합 필드
|
|
startTime |
선택사항입니다. 새 시작 시간 (ISO 8601)입니다. 시작만 업데이트하는 경우 기간을 유지합니다. |
통합 필드
|
|
endTime |
선택사항입니다. 새 종료 시간 (ISO 8601)입니다. |
통합 필드
|
|
allDay |
선택사항입니다. 일정을 종일로 변경합니다. 설정된 경우 |
통합 필드
|
|
timeZone |
선택사항입니다. IANA 시간대 데이터베이스 이름입니다 (예: |
통합 필드
|
|
notificationLevel |
선택사항입니다. 이 이벤트 업데이트에 대해 전송할 이메일 알림입니다. 기본값: |
통합 필드
|
|
addGoogleMeetUrl |
선택사항입니다. true인 경우 이벤트의 Google Meet URL을 만들거나 업데이트합니다. Meet이 사용 중지된 경우 무시됩니다. |
통합 필드
|
|
visibility |
선택사항입니다. 일정의 새로운 공개 상태입니다. 가능한 값은 다음과 같습니다.
|
통합 필드
|
|
colorId |
선택사항입니다. 일정의 새 색상입니다. 색상 ID 목록은 Event 리소스 문서를 참고하세요. |
통합 필드
|
|
googleMeetUrl |
선택사항입니다. 기존 Google Meet URL 또는 회의 ID를 일정에 첨부할 수 있습니다. |
통합 필드
|
|
guestPermissions |
선택사항입니다. 이 일정의 게스트 권한 설정입니다. |
통합 필드
|
|
availability |
선택사항입니다. 일정이 캘린더에서 시간을 차단하는지 여부입니다. |
참석자
| 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 표현 |
|---|
{ "method": string "minutes": integer } |
| 필드 | |
|---|---|
통합 필드
|
|
method |
필수 항목입니다. 전송 방법 가능한 값은 다음과 같습니다.
|
통합 필드
|
|
minutes |
필수 항목입니다. 알림이 트리거되기 전의 시간(분)입니다. |
첨부파일
| JSON 표현 |
|---|
{ "fileUrl": string "title": string } |
| 필드 | |
|---|---|
통합 필드
|
|
fileUrl |
필수 항목입니다. 첨부파일의 URL 링크입니다. |
통합 필드
|
|
title |
선택사항입니다. 첨부파일 제목입니다. |
GuestPermissions
| JSON 표현 |
|---|
{ "guestsCanInviteOthers": boolean "guestsCanModify": boolean "guestsCanSeeGuests": boolean } |
| 필드 | |
|---|---|
통합 필드
|
|
guestsCanInviteOthers |
선택사항입니다. 참석자가 다른 사용자를 초대할 수 있는지 여부입니다. |
통합 필드
|
|
guestsCanModify |
선택사항입니다. 참석자가 일정을 수정할 수 있는지 여부입니다. |
통합 필드
|
|
guestsCanSeeGuests |
선택사항입니다. 참석자가 다른 참석자를 볼 수 있는지 여부입니다. |
NotificationLevel
업데이트에 대한 이메일 알림 수준입니다.
| 열거형 | |
|---|---|
NOTIFICATION_LEVEL_UNSPECIFIED |
기본값입니다. ALL로 처리됩니다. |
NONE |
알림이 없습니다. |
EXTERNAL_ONLY |
외부 참석자만 해당합니다. |
ALL |
모든 참석자 |
가용성
일정의 참석 여부 설정입니다.
| 열거형 | |
|---|---|
AVAILABILITY_UNSPECIFIED |
기본값입니다. BUSY로 처리됩니다. |
AVAILABILITY_BUSY |
캘린더에서 시간을 차단합니다. |
AVAILABILITY_FREE |
시간을 차단하지 않습니다. |
출력 스키마
이벤트
| 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 표현 |
|---|
{ "method": string "minutes": integer } |
| 필드 | |
|---|---|
통합 필드
|
|
method |
필수 항목입니다. 전송 방법 가능한 값은 다음과 같습니다.
|
통합 필드
|
|
minutes |
필수 항목입니다. 알림이 트리거되기 전의 시간(분)입니다. |
첨부파일
| 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.events