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(string、任意、デフォルト:"primary"):カレンダー ID
    • max_results(integer、任意、デフォルト:10、最大:100):予定の最大件数
    • time_min(string、任意、デフォルト:現在時刻):RFC3339 形式の開始時刻(例:"2024-01-01T00:00:00Z")
    • time_max(string、任意):RFC3339 形式の終了時刻
    • query(string、任意):フリーテキスト検索
    • show_deleted(boolean、任意、デフォルト:false):削除済みの予定を含めます
  • get_event(event_id, calendar_id?):特定の予定の詳細情報を取得します。

    • event_id(string、必須):予定 ID(list_events から取得)
    • calendar_id(string、任意、デフォルト:"primary")
  • create_event(summary, start_time, end_time, calendar_id?, description?, location?, attendees?, timezone?, all_day?, reminder_minutes?):新しい予定を作成します。

    • summary(string、必須):予定のタイトル
    • start_time(string、必須):RFC3339 形式(例:"2024-01-15T09:00:00")、または終日の予定の場合は日付 "YYYY-MM-DD"
    • end_time(string、必須):RFC3339 形式、または終日の予定の場合は日付
    • calendar_id(string、任意、デフォルト:"primary")
    • description(string、任意):予定の説明/メモ
    • location(string、任意):予定の場所
    • attendees(string、任意):カンマ区切りのメールアドレス
    • timezone(string、任意、デフォルト:"UTC"):タイムゾーン(例:"Asia/Seoul"、"America/New_York")
    • all_day(boolean、任意、デフォルト:false):終日の予定を作成します(時刻には YYYY-MM-DD を使用)
    • reminder_minutes(string、任意):カンマ区切りのリマインダー時刻(分単位)(例:"10,30,60")
  • update_event(event_id, calendar_id?, summary?, start_time?, end_time?, description?, location?, attendees?, timezone?):既存の予定を更新します。指定したフィールドのみ変更されます。

    • event_id(string、必須)
    • calendar_id(string、任意、デフォルト:"primary")
    • その他のパラメーターは任意です。変更するフィールドのみ指定してください
  • delete_event(event_id, calendar_id?, send_notifications?):予定を削除します。

    • event_id(string、必須)
    • calendar_id(string、任意、デフォルト:"primary")
    • send_notifications(boolean、任意、デフォルト:false):参加者にキャンセル通知を送信します
  • quick_add_event(text, calendar_id?):自然言語のテキストから予定を作成します。

    • text(string、必須):自然言語による説明(例:"Meeting with John tomorrow at 3pm"、"Team standup every Monday at 9am")
    • calendar_id(string、任意、デフォルト:"primary")
  • check_availability(time_min, time_max, calendars?, timezone?):空き状況を確認します。

    • time_min(string、必須):RFC3339 形式の期間の開始時刻
    • time_max(string、必須):RFC3339 形式の期間の終了時刻
    • calendars(string、任意):カンマ区切りのカレンダー ID(デフォルト:primary)
    • timezone(string、任意、デフォルト:"UTC")

使用ガイドライン

  • 時刻形式:RFC3339 — 2024-01-15T09:00:00Z(UTC)または 2024-01-15T09:00:00+09:00(タイムゾーン付き)。
  • 終日の予定:all_day=true とともに日付形式 YYYY-MM-DD を使用します。
  • デフォルトのカレンダーは "primary" です。

よくある操作

会議を予定する:create_event を attendees パラメーターとともに使用すると、時刻、説明、リマインダーを細かく指定できます。

空き時間を探す:予定の作成前に、該当するカレンダー ID と期間を指定して check_availability を呼び出し、予定の重複を避けます。

手早く予定を登録する:quick_add_event は自然言語を受け付けます(例:"Lunch with Sarah tomorrow at noon")。便利ですが、create_event よりも正確さに欠けます。

予定を変更する:新しい start_time と end_time を指定して update_event を使用します。指定したフィールドのみ変更されます。

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 を使用します
  • 空き時間を探す:予定を作成する前に check_availability を使用します
  • すばやくスケジュールを設定する:自然言語入力には quick_add_event を使用します
  • 日程を変更する:新しい start_time と end_time を指定して update_event を使用します

コメント