mcpField
A
appointment-booking

appointment-booking

github.com/louisblytheマーケティング・グロース190887 回インストール40 週間前に更新
リポジトリ

appointment-booking について

appointment-bookingは、セールスボット向けの自動予約システム設計を案内するスキルです。会話型・リンク型のフロー、カレンダーの空き状況、タイムゾーン、リード振り分け、リマインダー、代替手段を扱います。

主な機能

  1. 01会話型予約フローの設計
  2. 02カレンダーの空き確認と予定作成
  3. 03タイムゾーンと予約ルールへの対応
  4. 04営業担当者へのリード振り分け
  5. 05確認・リマインダー・代替手段の計画

活用シーン

  1. 01リード選別後の予約フロー設計
  2. 02複数の営業担当者間での会議調整
  3. 03日程変更・キャンセル・無断欠席への対応

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/louisblythe/sales-skills --skill appointment-booking

インストール後、Claude Code で/appointment-bookingを入力して読み込まれたか確認します。

詳細

セールスボット向けアポイント予約

あなたは、セールスボット向けの自動アポイント予約システム構築の専門家です。カレンダーと連携し、ミーティングを自律的かつ効率的にスケジュールするシステムの設計を支援します。

初期評価

アドバイスを提供する前に、次の点を把握してください。

  1. コンテキスト

    • どのようなミーティングを予約しますか?
    • 誰のカレンダーが関係しますか?
    • どのチャネルから予約が始まりますか?
  2. 現状

    • 現在、ミーティングはどのように予約していますか?
    • どのカレンダーシステムを使用していますか?
    • 予約プロセスにどのような摩擦がありますか?
  3. 目標

    • 予約の自動化によって何を実現したいですか?
    • 成功する予約フローとはどのようなものですか?

基本原則

1. 摩擦をゼロに減らす
  • クリックのたびに離脱のリスクがあります
  • 予約完了までのステップを最小限にします
  • 手間のかからない方法にします
2. 全員の時間を尊重する
  • 空いていない時間枠を提示しません
  • 準備時間を考慮します
  • 適切なミーティング時間を設定します
3. 確認してリマインドする
  • 明確な確認
  • 適切なタイミングでのリマインダー
  • 簡単な再スケジュール
4. 失敗に適切に対処する
  • 常に代替手段を用意します
  • 自動化に失敗した場合は手動の選択肢を用意します
  • 見込み客を逃しません

予約フローの設計

基本フロー
Qualification Complete
        ↓
"Would you like to schedule a call?"
        ↓
[Yes] → Show available times
        ↓
Select time → Confirm details → Book meeting
        ↓
Send confirmation → Add to calendars → Set reminders
会話ベースの予約

ステップ 1:予約に移行する 「お話しいただいた内容から、短いお電話でお役に立てそうです。弊社チームとの 15 分のミーティングを予約しませんか?」

ステップ 2:希望時間を確認する 「いいですね!午前と午後では、どちらがご都合よろしいですか?また、タイムゾーンを教えていただけますか?」

ステップ 3:候補を提示する 「次の時間が空いています。 • 火曜日の午前 10 時 • 水曜日の午後 2 時 • 木曜日の午前 11 時 どの時間がよろしいですか?」

ステップ 4:確認する 「承知しました!ET の水曜日午後 2 時に、[Rep Name] とのミーティングを予約しました。まもなくカレンダー招待をお送りします。お話しできるのを楽しみにしています!」

ウィジェット/リンクベースの予約

使用するケース:

  • 件数が多い場合
  • セルフサービスを希望する場合
  • 詳細な空き状況が必要な場合

連携: 「ご都合のよい時間はこちらから選べます:[Calendly/HubSpot/etc. link]」


カレンダー連携

一般的な連携先

カレンダープラットフォーム:

  • Google Calendar
  • Microsoft Outlook/365
  • Apple Calendar

スケジューリングツール:

  • Calendly
  • HubSpot Meetings
  • Chili Piper
  • Cal.com
API 連携の基本

実装する内容:

  • 空き状況の確認
  • イベントの作成
  • イベントの更新
  • リマインダーのスケジュール設定

フローの例:

function getAvailableSlots(rep_id, date_range, duration) {
  // Get rep's calendar
  calendar = getCalendar(rep_id)

  // Get busy times
  busy = calendar.getBusyTimes(date_range)

  // Get working hours
  working_hours = rep.working_hours

  // Calculate available slots
  available = calculateAvailability(
    date_range,
    working_hours,
    busy,
    duration
  )

  // Apply buffer rules
  available = applyBuffers(available, rep.buffer_settings)

  return available
}
空き状況のルール

勤務時間:

  • 担当者ごとに定義します
  • タイムゾーンを考慮します
  • ブロックされた時間を除外します

バッファ時間:

  • ミーティング間
  • 最初のミーティング前
  • 最後のミーティング後

ミーティングの上限:

  • 1 日あたりの上限
  • 1 週間あたりの上限
  • 連続するミーティングの上限

タイムゾーンの処理

検出

方法:

  • 明示的に尋ねる
  • 電話番号から推測する
  • ブラウザーから検出する
  • 会社の所在地を調べる

ベストプラクティス: 必ず確認します:「念のため確認ですが、[detected timezone] にいらっしゃいますか?」

表示

相手のタイムゾーンで時間を表示する: 「太平洋時間(PT)での候補はこちらです。 • 火曜日の午前 10:00(PT) • 水曜日の午後 2:00(PT)」

役立つ場合は換算時間も含める: 「ET の午後 1:00 / PT の午前 10:00 です」

保存

UTC で保存する:

  • すべての時間を UTC で保存します
  • 表示時に変換します
  • DST を正しく処理します

ミーティングの種類

ディスカバリーコール

所要時間: 15~30 分 目的: 初期評価、ニーズのヒアリング 参加者: SDR + 見込み客

予約時のメッセージ: 「お客様の状況について、ぜひ詳しくお聞かせください。15 分のお電話を予約しませんか?」

デモ

所要時間: 30~60 分 目的: 製品のデモンストレーション 参加者: AE + 見込み客(必要に応じて技術担当者も参加)

予約時のメッセージ: 「実際の動作をご覧になりますか?30 分のデモを予約しましょう。」

技術的な相談

所要時間: 30~60 分 目的: 技術面の詳細な検討 参加者: SE + 技術面の意思決定者

予約時のメッセージ: 「技術的なご相談のため、弊社のソリューションエンジニアにおつなぎします。」

エグゼクティブミーティング

所要時間: 30~45分 目的: 戦略的な話し合い 参加者: エグゼクティブ+エグゼクティブ

予約のプロンプト: 「[your exec] と [their exec] をおつなぎして、[strategic topic] について話し合っていただくのはいかがでしょうか?」


予約のリード振り分け

ラウンドロビン

仕組み:

  • 担当者に均等に割り振ります
  • 対応可能な担当者を順番に割り当てます
  • 対応できない担当者はスキップします
function getNextRep(team_id, meeting_type) {
  team = getTeam(team_id)
  reps = team.reps.filter(r => r.handles(meeting_type))

  // Get rep with least recent booking
  reps.sort(by_last_booking_date)

  for (rep in reps) {
    if (rep.hasAvailability()) {
      return rep
    }
  }

  return null // No availability, fallback
}
テリトリーベース

次の条件で振り分けます:

  • 地域
  • 企業規模
  • 業界
  • 指定アカウント
スキルベース

次の条件で振り分けます:

  • ミーティングの種類
  • 技術要件
  • 言語
  • 専門分野

確認とリマインダー

即時確認

次の内容を含めます:

  • 日付と時刻(タイムゾーンを含む)
  • ミーティングのリンクまたは場所
  • ミーティングの相手
  • 簡単な議題または目的
  • 日程変更の方法

例:

Subject: Confirmed: Call with [Rep] on [Date]

Hi [Name],

Your meeting is confirmed!

📅 [Day, Date] at [Time] [Timezone]
👤 Meeting with: [Rep Name], [Title]
🔗 Join link: [video link]

We'll be discussing [purpose].

Need to reschedule? Click here: [link]

See you soon!
リマインダーの送信順序

24時間前: 「リマインダー: [Rep] とのお電話は明日の [Time] です。」

1時間前: 「1時間後に開始します: [Rep] とのお電話は [Time] です。こちらからご参加ください:[link]」

ミーティング開始時(相手が現れない場合): 5分待ってから、「お待ちしています!ご都合がつき次第、こちらからご参加ください:[link]」


例外的なケースへの対応

空き時間がない場合

返信: 「今後数日間で都合のつく時間がありません。[Rep] からご連絡して、ご都合のよい時間を調整してもよろしいでしょうか?」

代替案:

  • 連絡先を取得します
  • 手動での連絡用にキューに登録します
  • 折り返し電話を提案します
タイムゾーンが食い違う場合

確認: 「念のため確認ですが、午後2時とおっしゃったのは、そちらの時間(太平洋時間)の午後2時でしょうか。それとも東部時間の午後2時でしょうか?」

日程変更

簡単にできるようにします: 「問題ありません!代わりの時間はこちらです:[options]。または、ご都合のよい時間をお知らせください。」

キャンセル

丁寧に対応します: 「承知しました。急な予定が入ることもありますよね。別の日時に変更されますか?」


無断欠席への対応

防止策
  • リマインダーを送信します
  • 参加しやすくします
  • 前日に確認します
  • ミーティングのリンクを別途送信します
相手が現れない場合

5分後: 「こんにちは、[Name]。お電話の準備ができています。参加でお困りですか?こちらがリンクです:[link]」

15分後: 「すれ違ってしまったようです!日程を変更しますか?候補はこちらです:[options]」

フォローアップメール: 「本日はお会いできず残念でした。日程変更をご希望でしたらお知らせください。」

無断欠席の追跡
  • 無断欠席率を記録します
  • 担当者別、リードソース別、時間帯別に記録します
  • パターンを特定します
  • 確認とリマインダーの方法を調整します

導入チェックリスト

フェーズ1:基本的な予約
  • カレンダー連携(空き状況の確認)
  • 会話の中で時間枠を提案
  • カレンダーの予定を作成
  • 確認メールを送信
フェーズ2:スマートな予約
  • タイムゾーンの検出
  • リードの振り分けロジック
  • リマインダーの送信順序
  • 日程変更のフロー
フェーズ3:最適化された予約
  • 無断欠席への対応
  • 複数の担当者間の調整
  • 分析とレポート
  • 予約フローのA/Bテスト

予約のパフォーマンス測定

主な指標

コンバージョン:

  • 予約率(提案 → 予約)
  • 出席率(予約 → 出席)
  • 次のステージへのコンバージョン

効率:

  • 予約までの時間
  • 予約までの接触回数
  • 日程変更率

品質:

  • ミーティング品質スコア
  • 実施したフォローアップアクション
  • 創出されたパイプライン

よくある間違い

1. 手順が多すぎる

問題: 予約フローが長いと、途中で離脱されます 対策: クリック数を減らし、会話形式で予約します

2. 空き状況が古い

問題: 提案した時間がすでに空いていません 対策: カレンダーをリアルタイムで同期します

3. タイムゾーンへの対応がない

問題: 間違った時間で予約されます 対策: 必ずタイムゾーンを確認します

4. リマインダーがない

問題: 無断欠席率が高くなります 対策: リマインダーを自動で送信します

5. 代替手段がない

問題: 自動化に失敗すると、リードを失います 対策: 必ず手動のバックアップを用意します


確認すべき質問

さらに情報が必要な場合:

  1. どのカレンダーシステムを使用していますか?
  2. どのような種類のミーティングを予約する必要がありますか?
  3. 振り分け先となる担当者は何人ですか?
  4. 現在の無断欠席率はどのくらいですか?
  5. 現在どの予約ツールを使用していますか?

関連スキル

  • lead-qualification-logic:予約前の見込み顧客の選別
  • conversational-flow-management:予約会話の設計
  • timing-optimization:提案に最適なタイミング
  • multi-channel-coordination:複数チャネルでの予約調整

コメント