mcpField
G
google-calendar

google-calendar

github.com/aws-samples生产力19743 次安装3 周前更新
代码仓库

关于 google-calendar

google-calendar 是用于 Google Calendar 日程管理的技能,适合安排和查询日程的用户。它支持自然语言快速创建事件,并可检查多个日历的空闲时间。

主要功能

  1. 01列出日历与事件
  2. 02查询事件详情
  3. 03创建、修改和删除事件
  4. 04自然语言快速添加事件
  5. 05检查日历空闲状态

适用场景

  1. 01查找指定日期范围内的会议
  2. 02检查日历空闲时段以安排会议
  3. 03用自然语言快速创建日程

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/aws-samples/sample-strands-agent-with-agentcore --skill google-calendar

安装后在 Claude Code 中输入/google-calendar确认已加载。

详细介绍

Google Calendar

可用工具

  • list_calendars():列出用户的所有日历(主日历、共享日历、订阅日历)。

  • list_events(calendar_id?, max_results?, time_min?, time_max?, query?, show_deleted?):列出日历事件。

    • calendar_id(字符串,可选,默认值:"primary"):日历 ID
    • max_results(整数,可选,默认值:10,最大值:100):事件数量上限
    • time_min(字符串,可选,默认值:当前时间):RFC3339 格式的开始时间(例如:"2024-01-01T00:00:00Z")
    • time_max(字符串,可选):RFC3339 格式的结束时间
    • query(字符串,可选):自由文本搜索
    • show_deleted(布尔值,可选,默认值:false):包含已删除的事件
  • get_event(event_id, calendar_id?):获取特定事件的详细信息。

    • event_id(字符串,必填):事件 ID(来自 list_events)
    • calendar_id(字符串,可选,默认值:"primary")
  • create_event(summary, start_time, end_time, calendar_id?, description?, location?, attendees?, timezone?, all_day?, reminder_minutes?):创建新事件。

    • summary(字符串,必填):事件标题
    • start_time(字符串,必填):RFC3339 格式(例如:"2024-01-15T09:00:00"),全天事件则使用日期 "YYYY-MM-DD"
    • end_time(字符串,必填):RFC3339 格式,或全天事件使用的日期
    • calendar_id(字符串,可选,默认值:"primary")
    • description(字符串,可选):事件描述/备注
    • location(字符串,可选):事件地点
    • attendees(字符串,可选):以逗号分隔的电子邮件地址
    • timezone(字符串,可选,默认值:"UTC"):时区(例如:"Asia/Seoul"、"America/New_York")
    • all_day(布尔值,可选,默认值:false):创建全天事件(时间请使用 YYYY-MM-DD)
    • reminder_minutes(字符串,可选):以逗号分隔的提醒时间(分钟)(例如:"10,30,60")
  • update_event(event_id, calendar_id?, summary?, start_time?, end_time?, description?, location?, attendees?, timezone?):更新现有事件。仅更改指定的字段。

    • event_id(字符串,必填)
    • calendar_id(字符串,可选,默认值:"primary")
    • 其他参数均为可选项——仅提供要更改的字段
  • delete_event(event_id, calendar_id?, send_notifications?):删除事件。

    • event_id(字符串,必填)
    • calendar_id(字符串,可选,默认值:"primary")
    • send_notifications(布尔值,可选,默认值:false):向参与者发送取消通知
  • quick_add_event(text, calendar_id?):根据自然语言文本创建事件。

    • text(字符串,必填):自然语言描述(例如:"明天下午 3 点与 John 开会"、"每周一上午 9 点团队晨会")
    • calendar_id(字符串,可选,默认值:"primary")
  • check_availability(time_min, time_max, calendars?, timezone?):检查忙闲状态。

    • time_min(字符串,必填):RFC3339 格式的时间范围起点
    • time_max(字符串,必填):RFC3339 格式的时间范围终点
    • calendars(字符串,可选):以逗号分隔的日历 ID(默认值:primary)
    • timezone(字符串,可选,默认值:"UTC")

使用指南

  • 时间格式:RFC3339——2024-01-15T09:00:00Z(UTC)或 2024-01-15T09:00:00+09:00(含时区)。
  • 全天事件:使用日期格式 YYYY-MM-DD,并设置 all_day=true。
  • 默认日历为 "primary"。

常见操作

安排会议:使用 create_event,并通过 attendees 参数全面控制时间、描述和提醒。

查找可用时间:创建事件前,使用相关日历 ID 和时间范围调用 check_availability,以避免时间冲突。

快速安排:quick_add_event 接受自然语言(例如:"明天中午与 Sarah 共进午餐")。使用方便,但不如 create_event 精确。

重新安排:使用 update_event 并提供新的 start_time 和 end_time。仅更改提供的字段。

UI 指南(来自 tools-config)

Google Calendar 工具用法:

  • list_calendars:获取用户的所有日历(主要日历、共享日历、已订阅的日历)
  • list_events:按日期范围筛选条件和搜索条件列出即将到来的活动
  • get_event:获取活动的详细信息
  • create_event:创建新的日历活动,并添加与会者和提醒
  • update_event:修改现有活动(时间、标题、描述、与会者)
  • delete_event:删除活动,可选择通知与会者
  • quick_add_event:通过自然语言创建活动(例如,“明天下午 3 点与 John 开会”)
  • check_availability:查询日程安排的忙闲状态

时间格式:

  • RFC3339 格式:2024-01-15T09:00:00Z(UTC)或 2024-01-15T09:00:00+09:00(含时区)
  • 全天活动:使用 YYYY-MM-DD 日期格式

常见操作:

  • 安排会议:使用 create_event 并设置 attendees 参数
  • 查找可用时间:创建活动前使用 check_availability
  • 快速安排:使用 quick_add_event 处理自然语言输入
  • 重新安排:使用 update_event 设置新的 start_time 和 end_time

评论

支持 Markdown