工具:update_event
更新日历活动。
此工具适用于以下类型的查询:
- 将“与 Jane 的会议”活动更新为一小时后。
- 将 john.doe@google.com 添加到明天的会议中。
示例:
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'.
以下示例演示了如何使用 curl 调用 update_event MCP 工具。
| Curl 请求 |
|---|
curl --location 'https://calendarmcp.googleapis.com/mcp' \ --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
],
"removedAttendeeEmails": [
string
],
"calendarId": string
"summary": string
"description": string
"location": string
"startTime": string
"endTime": string
"notificationLevel": enum ( |
| 字段 | |
|---|---|
eventId |
必需。要更新的活动的 ID。 |
addedAttendeeEmails[] |
可选。活动的额外参加者(以电子邮件地址的形式)。 |
removedAttendeeEmails[] |
可选。要移除的活动参加者(以电子邮件地址的形式)。 |
联合字段
|
|
calendarId |
可选。要更新的活动的日历 ID。默认值为用户的主日历。 |
联合字段
|
|
summary |
可选。活动的新标题。如果未设置,则不会更新。 |
联合字段
|
|
description |
可选。活动的新说明。如果未设置,则不会更新。 |
联合字段
|
|
location |
可选。活动的新地点。如果未设置,则不会更新。 |
联合字段
|
|
startTime |
可选。活动的新的开始时间,采用 ISO 8601 格式。如果未设置,则不会更新。 |
联合字段
|
|
endTime |
可选。活动的新的结束时间,采用 ISO 8601 格式。如果未设置,则不会更新。 |
联合字段
|
|
notificationLevel |
可选。应针对此活动更新发送哪种电子邮件通知。可能的值包括:
|
联合字段
|
|
addGoogleMeetUrl |
可选。允许为活动创建或更新 Google Meet 网址。默认情况下,系统不会创建或更新 Google Meet 网址。如果用户停用了 Meet,系统不会创建或更新 Google Meet 网址,但活动更新会成功。 |
联合字段
|
|
visibility |
可选。活动的新公开范围。可能的值包括:
|
联合字段
|
|
colorId |
可选。活动的新的颜色 ID。如果未设置,则不会更新。活动颜色 ID(字符串
|
联合字段
|
|
googleMeetUrl |
可选。允许将现有 Google Meet 网址或会议 ID 附加到活动。如果设置了此网址,系统会将此网址附加到活动中,而不是生成新的 Google Meet 会议室,即使 |
输出架构
事件
| JSON 表示法 |
|---|
{ "id": string, "status": string, "htmlLink": string, "created": string, "updated": string, "summary": string, "description": string, "location": string, "creator": { object ( |
| 字段 | |
|---|---|
id |
相应事件的不透明标识符。创建新的单次活动或周期性活动时,您可以指定其 ID。提供的 ID 必须遵循以下规则:
由于该系统是全球分布式的,因此我们无法保证在创建活动时检测到 ID 冲突。为最大限度地降低冲突风险,我们建议使用已确立的 UUID 算法,例如 RFC4122 中所述的算法。 如果您未指定 ID,服务器会自动生成一个 ID。 请注意,icalUID 和 ID 并不相同,在创建活动时只能提供其中一个。在语义上,两者之间的一个区别在于,在周期性活动中,一个活动的所有实例都具有不同的 ID,但它们都共享相同的 icalUID。 |
status |
活动的状态。可选。可能的值包括:
“已取消”状态表示两种不同的状态,具体取决于活动类型:
在组织者的日历中,已取消的活动会继续显示活动详情(摘要、地点等),以便组织者恢复(取消删除)这些活动。同样,用户受邀参加但手动移除的活动也会继续提供详细信息。不过,如果增量同步请求的 showDeleted 设置为 false,则不会返回这些详细信息。 如果活动更改了组织者(例如通过移动操作),并且原始组织者不在参加者列表中,则会留下一个已取消的活动,其中只有 id 字段保证已填充。 |
htmlLink |
Google 日历 Web 界面中相应活动的绝对链接。只读。 |
created |
事件的创建时间(采用 ISO 8601 格式的时间戳)。只读。 |
updated |
主要事件数据的上次修改时间(采用 ISO 8601 格式的时间戳)。更新活动提醒不会导致此设置发生变化。只读。 |
summary |
活动的标题。 |
description |
活动的说明。可包含 HTML。可选。 |
location |
活动地理位置(自由格式文本)。可选。 |
creator |
活动的创建者。只读。 |
organizer |
活动的组织者。如果组织者也是参会者,则会在参会者中单独添加一个条目,并将组织者字段设置为 True。只读。 |
start |
活动的开始时间(含)。对于周期性活动,这是第一个实例的开始时间。 |
end |
活动的结束时间(不含)。对于周期性活动,这是第一个实例的结束时间。 |
recurrence[] |
周期性活动的 RRULE、EXRULE、RDATE 和 EXDATE 行的列表,如 RFC5545 中所指定。请注意,此字段中不允许使用 DTSTART 和 DTEND 行;活动开始时间和结束时间在 start 和 end 字段中指定。对于单次活动或周期性活动的实例,此字段会被省略。 |
recurringEventId |
对于周期性活动的实例,这是相应实例所属的周期性活动的 ID。固定不变。 |
originalStartTime |
对于周期性活动的某个实例,这是根据由 recurringEventId 标识的周期性活动中的周期性数据,该活动应开始的时间。即使实例已移至其他时间,它也能在周期性活动系列中唯一标识该实例。固定不变。 |
transparency |
相应活动是否会占用日历中的时间。可选。可能的值包括:
|
visibility |
活动的公开范围。可选。可能的值包括:
|
attendees[] |
活动的参加者。 |
eventType |
具体事件类型。活动创建后,此设置将无法修改。可能的值包括:
|
conferenceUrl |
活动的 Google Meet 链接。 |
colorId |
活动颜色 ID(字符串
在 Google 日历中,活动颜色用作类别,可以按活动或按系列进行设置。用户可以在网页界面中为颜色分配自定义标签(例如 |
主账号
| JSON 表示法 |
|---|
{ "email": string, "displayName": string, "self": boolean } |
| 字段 | |
|---|---|
email |
主账号(日历)的电子邮件地址。 |
displayName |
主账号的名称(如果有)。 |
self |
相应正文是否与显示此活动副本的日历相对应。只读。默认值为 False。 |
DateOrDateTime
| JSON 表示法 |
|---|
{ "date": string, "dateTime": string, "timeZone": string } |
| 字段 | |
|---|---|
date |
采用 ISO 8601 格式的日期(UTC 午夜),例如 |
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 |
参会者的电子邮件地址(如有)。添加参会者时,必须提供此字段。必须是有效的电子邮件地址(符合 RFC5322 的规定)。添加参会者时必须指定这项设置。 |
displayName |
参会者的姓名(如果有)。可选。 |
organizer |
相应参加者是否为活动的组织者。只读。默认值为 False。 |
self |
相应条目是否表示显示相应活动副本的日历。只读。默认值为 False。 |
resource |
相应出席者是否为资源。只能在首次将参会者添加到活动时设置。后续修改会被忽略。可选。默认值为 False。 |
optionalAttendee |
相应人员是否为可选参加者。可选。默认值为 False。 |
responseStatus |
参会者的回复状态。可能的值包括:
|
comment |
参加者的回答评论。可选。 |
additionalGuests |
额外房客人数。可选。默认值为 0。 |
工具注释
破坏性提示:❌ | 等幂性提示:✅ | 只读提示:❌ | 开放世界提示:❌