工具:create_event
在指定日历上创建活动。
以下示例演示了如何使用 curl 调用 create_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": "create_event", "arguments": { // provide these details according to the tool MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
输入架构
针对 CreateEvent 的请求消息。
CreateEventRequest
| JSON 表示法 |
|---|
{ "summary": string, "startTime": string, "endTime": string, "attendeeEmails": [ string ], "attendees": [ { object ( |
| 字段 | |
|---|---|
summary |
必需。标题。 |
startTime |
必需。开始时间(ISO 8601,例如 |
endTime |
必需。结束时间(ISO 8601 格式,例如 |
attendeeEmails[] |
可选。已弃用:请改用 |
attendees[] |
可选。活动的参加者。对于在用户的主日历中创建的活动,如果至少还有一位其他参加者,则系统会自动将当前用户添加为参加者(如果尚未添加)。 |
recurrenceData[] |
可选。以 |
overrideReminders[] |
可选。提醒会覆盖日历默认设置。 |
attachments[] |
可选。文件附件。 |
联合字段
|
|
calendarId |
可选。要在其中创建活动的日历的 ID。电子邮件地址 - 可使用 |
联合字段
|
|
description |
可选。说明。可以包含 HTML。 |
联合字段
|
|
location |
可选。位置信息。 |
联合字段
|
|
allDay |
可选。活动是否持续一整天。如果为 true,则将开始/结束时间视为午夜。 |
联合字段
|
|
timeZone |
可选。IANA 时区数据库名称(例如 |
联合字段
|
|
notificationLevel |
可选。应针对此活动更新发送哪种电子邮件通知。 |
联合字段
|
|
addGoogleMeetUrl |
可选。创建并添加 Google Meet 网址。默认值: |
联合字段
|
|
visibility |
可选。活动的公开范围。可能的值包括:
|
联合字段
|
|
colorId |
可选。活动的颜色。如需查看颜色 ID 列表,请参阅 Event 资源的文档。 |
联合字段
|
|
googleMeetUrl |
可选。特定的 Google Meet 网址或会议 ID。此属性会覆盖 |
联合字段
|
|
guestPermissions |
可选。邀请对象权限。 |
联合字段
|
|
availability |
可选。空闲状态设置。 |
联合字段
|
|
eventType |
可选。事件的类型。 |
联合字段
|
|
workingLocationProperties |
可选。工作地点属性(如果 |
参加者
| 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 |
必需。提醒触发时间提前的分钟数。 |
GuestPermissions
| JSON 表示法 |
|---|
{ "guestsCanInviteOthers": boolean "guestsCanModify": boolean "guestsCanSeeGuests": boolean } |
| 字段 | |
|---|---|
联合字段
|
|
guestsCanInviteOthers |
可选。邀请对象是否可以邀请他人。 |
联合字段
|
|
guestsCanModify |
可选。邀请对象是否可以修改活动。 |
联合字段
|
|
guestsCanSeeGuests |
可选。邀请对象是否可以查看其他邀请对象。 |
附件
| JSON 表示法 |
|---|
{ "fileUrl": string "title": string } |
| 字段 | |
|---|---|
联合字段
|
|
fileUrl |
必需。附件的网址链接。 |
联合字段
|
|
title |
可选。附件标题。 |
WorkingLocationProperties
| JSON 表示法 |
|---|
{
"type": enum ( |
| 字段 | |
|---|---|
联合字段
|
|
type |
可选。工作地点类型。 |
联合字段
|
|
customLocationLabel |
可选。自定义位置的标签。如果类型为 |
NotificationLevel
电子邮件通知级别(针对更新)。
| 枚举 | |
|---|---|
NOTIFICATION_LEVEL_UNSPECIFIED |
默认值。视为 ALL。 |
NONE |
没有通知。 |
EXTERNAL_ONLY |
仅限外部参会者。 |
ALL |
所有参会者。 |
可用性
活动的空闲情况设置。
| 枚举 | |
|---|---|
AVAILABILITY_UNSPECIFIED |
默认值。视为 BUSY。 |
AVAILABILITY_BUSY |
在日历上安排时间。 |
AVAILABILITY_FREE |
不屏蔽时间。 |
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 |
自定义位置。 |
输出架构
活动
| JSON 表示法 |
|---|
{ "id": string, "status": string, "htmlLink": string, "created": string, "updated": string, "summary": string, "description": string, "location": string, "creator": { object ( |
| 字段 | |
|---|---|
id |
唯一标识符。 |
status |
可选。状态。可能的值包括:
|
htmlLink |
仅限输出。Google 日历 Web 界面中相应活动的绝对链接。 |
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 |
必需。附件的网址链接。 |
联合字段
|
|
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