工具: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 日历 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 表示法 |
|---|
{ "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.eventshttps://www.googleapis.com/auth/calendar.events.readonlyhttps://www.googleapis.com/auth/calendar.readonly