calendly-automation について
calendly-automation は、Rube MCP と Composio の Calendly ツールキットを使って、Calendly の予約や組織管理を行うスキルです。ツールの呼び出し順、URI とページネーションの要件に加え、書き込み操作の権限や確認条件を示します。
主な機能
- 01イベント一覧と招待者の確認
- 02イベントタイプと空き時間の照会
- 03単回利用のスケジューリングリンク作成
- 04組織への招待とメンバーの管理
- 05手順に沿ったイベントのキャンセル
活用シーン
- 01指定した範囲の予約イベントの確認
- 02イベントタイプの空き時間の照会
- 03イベントタイプの予約リンク作成
- 04組織への招待やイベントのキャンセル
MCP 対応
クライアントを `https://rube.app/mcp` の Rube MCP に接続し、Composio の Calendly ツールキットを利用します。ワークフローの実行前に Calendly の接続状態を確認し、最新のツールスキーマを取得します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ sickn33/ agentic-awesome-skills --skill calendly-automationインストール後、Claude Code で/calendly-automationを入力して読み込まれたか確認します。
詳細
Rube MCP による Calendly の自動化
Composio の Calendly ツールキットを通じて、イベントの一覧表示、招待者の管理、スケジュールリンクの作成、空き状況の照会、組織の管理など、Calendly の操作を自動化します。
前提条件
- Rube MCP が接続されている必要があります(
RUBE_SEARCH_TOOLSを利用可能な状態にします) calendlyツールキットを使用した、RUBE_MANAGE_CONNECTIONSによる有効な Calendly 接続- 最新のツールスキーマを取得するため、必ず最初に
RUBE_SEARCH_TOOLSを呼び出してください - 多くの操作にはユーザーの Calendly URI が必要です。
CALENDLY_GET_CURRENT_USERで取得できます
セットアップ
Rube MCP を取得する:クライアント設定で https://rube.app/mcp を MCP サーバーとして追加します。アカウントのリンク/OAuth と許可されたスコープも必要です。エンドポイントを追加するだけでは Calendly へのアクセス権は付与されません。ホスト設定の追加や変更は、許可を得た場合に限って行ってください。
RUBE_SEARCH_TOOLSが応答することを確認し、Rube MCP が利用可能であることを確かめますcalendlyツールキットを指定してRUBE_MANAGE_CONNECTIONSを呼び出します- 接続が ACTIVE でない場合は、返された認証リンクを開いて Calendly OAuth を完了します
- ワークフローを実行する前に、接続ステータスが ACTIVE であることを確認します
主なワークフロー
書き込み操作の前に、実際のユーザー/組織とタイムゾーンを確認してください。一覧の取得は、招待、メンバーの削除、スケジュールリンクの作成、キャンセルを許可するものではありません。依頼された変更操作ごとに、その対象と通知への影響を確認してください。最新のスキーマと返されたページネーションフィールドを参照してください。この静的なツール名一覧は変更されている可能性があります。結果が不確かな書き込み操作は、既存の状態を確認せずに再試行しないでください。
1. スケジュール済みイベントの一覧表示と確認
使用する場合:ユーザーが今後または過去の Calendly イベント、あるいは条件を指定したイベントを確認したい場合
ツールの呼び出し順序:
CALENDLY_GET_CURRENT_USER- 認証済みユーザーの URI と組織の URI を取得します[前提条件]CALENDLY_LIST_EVENTS- ユーザー、組織、またはグループをスコープとしてイベントを一覧表示します[必須]CALENDLY_GET_EVENT- 特定のイベントの詳細情報を UUID で取得します[任意]
主なパラメーター:
user:Calendly API の完全な URI(例:https://api.calendly.com/users/{uuid})。"me"は指定できませんorganization:組織をスコープとするクエリに使用する組織の完全な URIstatus:"active"または"canceled"min_start_time/max_start_time:UTC タイムスタンプ(例:2024-01-01T00:00:00.000000Z)invitee_email:招待者のメールアドレスによるイベントの絞り込み(フィルターであり、スコープではありません)sort:"start_time:asc"または"start_time:desc"count:1ページあたりの結果数(デフォルトは 20)page_token:前回の応答から取得したページネーショントークン
注意点:
user、organization、groupのうち、指定する必要があるのはちょうど 1 つです。省略したり、複数を組み合わせたりすると失敗しますuserパラメーターには"me"ではなく、API の完全な URI が必要です。最初にCALENDLY_GET_CURRENT_USERを使用してくださいinvitee_emailはフィルターであり、スコープではありません。user、organization、groupのいずれかも指定する必要があります- ページネーションには
countとpage_tokenを使用します。完全な結果を取得するには、page_tokenがなくなるまで繰り返してください - 組織またはグループをスコープとするクエリには、管理者権限が必要な場合があります
2. イベントの招待者を管理する
使用する場合:イベントの予約者を確認したい場合、または招待者の詳細情報を取得したい場合
ツールの呼び出し順序:
CALENDLY_LIST_EVENTS- 対象のイベントを特定します[前提条件]CALENDLY_LIST_EVENT_INVITEES- 特定のイベントの招待者をすべて一覧表示します[必須]CALENDLY_GET_EVENT_INVITEE- 1 人の招待者の詳細情報を取得します[任意]
主なパラメーター:
uuid:イベントの UUID(LIST_EVENT_INVITEES用)event_uuid+invitee_uuid:GET_EVENT_INVITEEでは両方が必要ですemail:メールアドレスで招待者を絞り込みますstatus:"active"または"canceled"sort:"created_at:asc"または"created_at:desc"count:1ページあたりの結果数(デフォルトは 20)
注意点:
CALENDLY_LIST_EVENT_INVITEESのuuidパラメーターに指定するのはイベントの UUID であり、招待者の UUID ではありません- 招待者の一覧をすべて取得するには、
page_tokenがなくなるまでページネーションを行ってください - キャンセルされた招待者はデフォルトでは除外されます。確認するには
status: "canceled"を指定してください
3. スケジューリングリンクの作成と空き状況の確認
使用するタイミング: ユーザーが予約リンクを生成したい、または空き時間枠を確認したい場合
ツールの順序:
CALENDLY_GET_CURRENT_USER- ユーザー URI を取得する [前提条件]CALENDLY_LIST_USER_S_EVENT_TYPES- 利用可能なイベントタイプを一覧表示する [必須]CALENDLY_LIST_EVENT_TYPE_AVAILABLE_TIMES- イベントタイプの空き枠を確認する [任意]CALENDLY_CREATE_SCHEDULING_LINK- 単回使用のスケジューリングリンクを生成する [必須]CALENDLY_LIST_USER_AVAILABILITY_SCHEDULES- ユーザーの可用性スケジュールを表示する [任意]
主要なパラメータ:
owner: イベントタイプ URI(例:https://api.calendly.com/event_types/{uuid})owner_type:"EventType"(デフォルト)max_event_count: 単回使用リンクの場合は必ず1にする必要がありますstart_time/end_time: 可用性クエリ用の UTC タイムスタンプ(最大 7 日間の範囲)active: 有効/無効なイベントタイプをフィルタリングするブール値user: イベントタイプ一覧表示用のユーザー URI
注意点:
CALENDLY_CREATE_SCHEDULING_LINKは、トークンに権限がない場合や owner URI が無効な場合に 403 を返すことがありますCALENDLY_LIST_EVENT_TYPE_AVAILABLE_TIMESには UTC タイムスタンプと最大 7 日間の範囲が必要です。それより長い検索は分割してください- 空き時間の結果はページネーションされません - すべての結果が 1 つのレスポンスで返されます
- イベントタイプ URI は完全な API URI である必要があります(例:
https://api.calendly.com/event_types/...)
4. イベントのキャンセル
使用するタイミング: ユーザーが予定されている Calendly イベントをキャンセルしたい場合
ツールの順序:
CALENDLY_LIST_EVENTS- キャンセルするイベントを探す [前提条件]CALENDLY_GET_EVENT- キャンセル前にイベントの詳細を確認する [前提条件]CALENDLY_LIST_EVENT_INVITEES- 影響を受ける招待者を確認する [任意]CALENDLY_CANCEL_EVENT- イベントをキャンセルする [必須]
主要なパラメータ:
uuid: キャンセルするイベントの UUIDreason: 任意のキャンセル理由(招待者への通知に含まれる場合があります)
注意点:
- キャンセルは取り消しできません - 呼び出す前に必ずユーザーに確認してください
- キャンセルにより招待者へ通知が送信される場合があります
- キャンセルできるのは有効なイベントのみです。すでにキャンセルされたイベントはエラーを返します
CALENDLY_CANCEL_EVENTを実行する前に、ユーザーから明確な確認を取得してください
5. 組織と招待の管理
使用するタイミング: ユーザーがメンバーを招待したい、組織を管理したい、または組織の招待を処理したい場合
ツールの順序:
CALENDLY_GET_CURRENT_USER- ユーザーと組織のコンテキストを取得する [前提条件]CALENDLY_GET_ORGANIZATION- 組織の詳細を取得する [任意]CALENDLY_LIST_ORGANIZATION_INVITATIONS- 既存の招待を確認する [任意]CALENDLY_CREATE_ORGANIZATION_INVITATION- 組織の招待を送信する [必須]CALENDLY_REVOKE_USER_S_ORGANIZATION_INVITATION- 保留中の招待を取り消す [任意]CALENDLY_REMOVE_USER_FROM_ORGANIZATION- メンバーを削除する [任意]
主要なパラメータ:
uuid: 組織の UUIDemail: 招待するユーザーのメールアドレスstatus: 招待を"pending"、"accepted"、または"declined"でフィルタリングします
注意点:
- 招待と削除を管理できるのは組織のオーナー/管理者のみです。それ以外のユーザーは認可エラーになります
- 同じメールアドレスに対する有効な招待が重複している場合は拒否されます - まず既存の招待を確認してください
- 組織のオーナーは
CALENDLY_REMOVE_USER_FROM_ORGANIZATIONで削除できません - 招待のステータスには pending、accepted、declined、revoked があります - それぞれに適切に対応してください
一般的なパターン
ID の解決
Calendly は識別子として単純な ID ではなく完全な API URI を使用します:
- 現在のユーザー URI:
CALENDLY_GET_CURRENT_USERはresource.uriを返します(例:https://api.calendly.com/users/{uuid}) - 組織 URI: 現在のユーザーのレスポンスの
resource.current_organizationに含まれます - イベント UUID: イベント URI または一覧レスポンスから抽出します
- イベントタイプ URI:
CALENDLY_LIST_USER_S_EVENT_TYPESのレスポンスから取得します
重要: 一覧/フィルタのエンドポイントでユーザーパラメータとして "me" を決して使用しないでください。必ず最初に完全な URI に解決してください。
ページネーション
ほとんどの Calendly のリストエンドポイントは、トークンベースのページネーションを使用します:
countでページサイズを設定します(デフォルトは 20)pagination.next_page_tokenのpage_tokenを、存在しなくなるまで辿りますfield:direction形式でソートします(例:start_time:asc、created_at:desc)
時刻の扱い
- すべてのタイムスタンプは UTC 形式である必要があります:
yyyy-MM-ddTHH:mm:ss.ffffffZ - イベントの日付範囲フィルタリングには
min_start_time/max_start_timeを使用します - 空き時間のクエリは最大 7 日間の範囲です。それより長い検索は複数の呼び出しに分割してください
既知の落とし穴
URI 形式
- すべてのエンティティ参照は完全な Calendly API URI を使用します(例:
https://api.calendly.com/users/{uuid}) - URI が期待される箇所に裸の UUID を渡さないでください。また、リストエンドポイントに
"me"を渡さないでください - ツールが UUID パラメータを期待する場合(例:
CALENDLY_GET_EVENT)、URI から UUID を抽出してください
スコープの要件
CALENDLY_LIST_EVENTSは正確に 1 つのスコープ(user、organization、または group)を必要とします - それ以上でもそれ以下でもありません- 組織/グループスコープのクエリには管理者権限が必要な場合があります
- トークンのスコープによって利用可能な操作が決まります。403 エラーは権限不足を示します
データの関連性
- イベントには招待者(予約した出席者)がいます
- イベントタイプはスケジューリングページ(所要時間、空き時間ルール)を定義します
- 組織にはユーザーとグループが含まれます
- スケジューリングリンクはイベントタイプに紐づき、イベントに直接紐づくわけではありません
レート制限
- Calendly API にはレート制限があります。大規模なデータセットに対するタイトなループは避けてください
- 責任を持ってページネーションを行い、バッチ操作には遅延を加えてください
クイックリファレンス
| タスク | ツールスラッグ | 主なパラメータ |
|---|---|---|
| 現在のユーザーを取得 | CALENDLY_GET_CURRENT_USER | (なし) |
| UUID でユーザーを取得 | CALENDLY_GET_USER | uuid |
| イベントを一覧表示 | CALENDLY_LIST_EVENTS | user、status、min_start_time |
| イベントの詳細を取得 | CALENDLY_GET_EVENT | uuid |
| イベントをキャンセル | CALENDLY_CANCEL_EVENT | uuid、reason |
| 招待者を一覧表示 | CALENDLY_LIST_EVENT_INVITEES | uuid、status、email |
| 招待者を取得 | CALENDLY_GET_EVENT_INVITEE | event_uuid、invitee_uuid |
| イベントタイプを一覧表示 | CALENDLY_LIST_USER_S_EVENT_TYPES | user、active |
| イベントタイプを取得 | CALENDLY_GET_EVENT_TYPE | uuid |
| 空き状況を確認 | CALENDLY_LIST_EVENT_TYPE_AVAILABLE_TIMES | イベントタイプ URI、start_time、end_time |
| スケジューリングリンクを作成 | CALENDLY_CREATE_SCHEDULING_LINK | owner、max_event_count |
| 空き時間スケジュールを一覧表示 | CALENDLY_LIST_USER_AVAILABILITY_SCHEDULES | ユーザー URI |
| 組織を取得 | CALENDLY_GET_ORGANIZATION | uuid |
| 組織に招待 | CALENDLY_CREATE_ORGANIZATION_INVITATION | uuid、email |
| 組織の招待を一覧表示 | CALENDLY_LIST_ORGANIZATION_INVITATIONS | uuid、status |
| 組織の招待を取り消し | CALENDLY_REVOKE_USER_S_ORGANIZATION_INVITATION | 組織 UUID、招待 UUID |
| 組織から削除 | CALENDLY_REMOVE_USER_FROM_ORGANIZATION | メンバーシップ UUID |
使用するタイミング
このスキルは、概要で説明されているワークフローまたはアクションを実行する場合に適用できます。
例
ユーザーのリクエスト:
Rube MCP(Composio)を介して、Calendly のスケジューリング、イベント管理、招待者の追跡、空き状況の確認、組織の管理を自動化します。
制限事項
- このスキルは、タスクが上記で説明した範囲に明確に一致する場合にのみ使用してください。
- 出力を、環境固有の検証、テスト、または専門家によるレビューの代替として扱わないでください。
- 必要な入力、権限、安全境界、または成功基準が欠けている場合は、停止して確認を求めてください。