Cal.com MCP
公式Model Context Protocolを使用して、ホストサーバーmcp.cal.comまたはローカルインスタンス経由でAIクライアントをCal.comのスケジューリングに接続します。
Cal Com MCPで何ができますか?
- Check your upcoming bookings — Ask for a list of your bookings with filters like date range or status using
get_bookings. - Create and manage event types — Create, update, or delete event types such as a "Quick Chat" via
create_event_typeand related tools. - Reschedule or cancel meetings — Reschedule a booking to a new time with
reschedule_bookingor cancel it entirely withcancel_booking. - Find available time slots — Retrieve open slots for a given date range using
get_availabilitybefore scheduling. - Manage your schedules — View, create, or modify your availability schedules with
get_schedulesandcreate_schedule. - Handle booking attendees — View all attendees for a booking with
get_booking_attendeesor add new ones withadd_booking_attendee.
ドキュメント
MCPサーバー
mcp.cal.comのホスト型サーバーまたはローカルインスタンスを使用して、Model Context Protocol経由でAIクライアントをCal.comのスケジューリングに接続します。
Cal.com MCPサーバーは、Cal.com API v2をModel Context Protocolでラップし、MCP対応クライアントで自然言語を使用して予約、イベントタイプ、スケジュールなどを管理できるようにします。
ホスト型サーバー (mcp.cal.com)
最も早く始める方法は、MCPクライアントをmcp.cal.comに直接接続することです。ホスト型サーバーはOAuth 2.1認証を備えたStreamable HTTPトランスポートを使用し、クライアントが認可フローを自動的に処理します。
クライアントの接続
MCPクライアントをホスト型サーバーのURLに向けます:
https://mcp.cal.com/mcp
初回接続時に、クライアントがOAuth認可フローを案内し、サーバーにCal.comアカウントへのアクセスを許可します。APIキーは不要です。
`claude_desktop_config.json`に以下を追加します:* **macOS:** `~/Library/Application Support/Claude/claude_desktop_config.json`
* **Windows:** `%APPDATA%\Claude\claude_desktop_config.json`
```json theme={null}
{
"mcpServers": {
"calcom": {
"url": "https://mcp.cal.com/mcp"
}
}
}
```
**設定 → MCP**を開き、URL `https://mcp.cal.com/mcp`で新しいサーバーを追加するか、`.cursor/mcp.json`に追加します:
```json theme={null}
{
"mcpServers": {
"calcom": {
"url": "https://mcp.cal.com/mcp"
}
}
}
```
VS CodeのMCP設定にサーバーを追加します:
```json theme={null}
{
"mcpServers": {
"calcom": {
"url": "https://mcp.cal.com/mcp"
}
}
}
```
セルフホスト型サーバー (stdio)
サーバーをローカルで実行する場合は、APIキーを使用したstdioトランスポートを利用できます。これは開発時やサーバーを完全に制御したい場合に便利です。
前提条件
- Node.js 18以上
- Cal.com APIキー — 設定 → 開発者 → APIキーで生成
クライアントの接続
MCPクライアントの設定に以下を追加します:
{
"mcpServers": {
"calcom": {
"command": "npx",
"args": ["@calcom/cal-mcp@latest"],
"env": {
"CAL_API_KEY": "cal_live_xxxx"
}
}
}
}
cal_live_xxxxを実際のAPIキーに置き換えてください。
利用可能なツール
MCPサーバーはカテゴリ別に34のツールを公開しています:
ユーザープロフィール
| ツール | 説明 |
|---|---|
get_me | 認証済みユーザープロフィールを取得 |
update_me | ユーザープロフィールを更新 |
イベントタイプ
| ツール | 説明 |
|---|---|
get_event_types | すべてのイベントタイプを一覧表示 |
get_event_type | IDで特定のイベントタイプを取得 |
create_event_type | 新しいイベントタイプを作成 |
update_event_type | イベントタイプを更新 |
delete_event_type | イベントタイプを削除 |
予約
| ツール | 説明 |
|---|---|
get_bookings | オプションのフィルターで予約を一覧表示 |
get_booking | UIDで特定の予約を取得 |
create_booking | 新しい予約を作成 |
reschedule_booking | 予約を再スケジュール |
cancel_booking | 予約をキャンセル |
confirm_booking | 保留中の予約を確認 |
mark_booking_absent | 予約の不在をマーク |
get_booking_attendees | 予約の全参加者を取得 |
add_booking_attendee | 予約に参加者を追加 |
get_booking_attendee | 特定の参加者を取得 |
スケジュール
| ツール | 説明 |
|---|---|
get_schedules | すべてのスケジュールを一覧表示 |
get_schedule | IDで特定のスケジュールを取得 |
create_schedule | 新しいスケジュールを作成 |
update_schedule | スケジュールを更新 |
delete_schedule | スケジュールを削除 |
get_default_schedule | デフォルトスケジュールを取得 |
空き状況
| ツール | 説明 |
|---|---|
get_availability | 利用可能な時間枠を取得 |
get_busy_times | カレンダーからビジー時間を取得 |
会議
| ツール | 説明 |
|---|---|
get_conferencing_apps | 会議アプリケーションを一覧表示 |
ルーティングフォーム
| ツール | 説明 |
|---|---|
calculate_routing_form_slots | ルーティングフォームの回答に基づいて枠を計算 |
組織
| ツール | 説明 |
|---|---|
get_org_memberships | すべての組織メンバーシップを取得 |
create_org_membership | 組織メンバーシップを作成 |
get_org_membership | 組織メンバーシップを取得 |
delete_org_membership | 組織メンバーシップを削除 |
get_org_routing_forms | 組織のルーティングフォームを取得 |
get_org_routing_form_responses | ルーティングフォームの回答を取得 |
プロンプト例
接続すると、自然言語でCal.comを操作できます:
- 「今週の予約は何がありますか?」
- 「'Quick Chat'という30分のイベントタイプを作成して」
- 「明日のJohnとのミーティングをキャンセルして」
- 「来週の月曜日の空き枠を表示して」
- 「午後2時のミーティングを木曜日の午後3時に再スケジュールして」
- 「どんなイベントタイプがありますか?」
関連リソース
- AIエージェントガイド — Cal.com APIを直接使用してAIエージェントを構築
- API v2リファレンス — 完全なAPIエンドポイントドキュメント
- GitHubリポジトリ — ソースコード