Cal.com MCP

официальный

Подключайте AI-клиенты к планировщику Cal.com через протокол Model Context Protocol, используя размещённый сервер на mcp.cal.com или локальный экземпляр.

Что можно делать с Cal Com MCP?

  • Управление бронированиями — Попросите ассистента вывести список, создать, перенести или отменить бронирования с помощью таких инструментов, как get_bookings и create_booking.
  • Настройка типов событий — Создавайте или обновляйте типы событий, например 30-минутный «Быстрый чат», через create_event_type и update_event_type.
  • Проверка доступности — Запрашивайте открытые временные слоты или занятые периоды из подключенных календарей с помощью get_availability и get_busy_times.
  • Управление расписаниями — Создавайте, обновляйте или получайте ваше расписание по умолчанию через create_schedule и get_default_schedule.
  • Управление командами и участниками — Приглашайте участников или изменяйте роли в команде через create_team_invite и update_team_membership.

Документация

MCP-сервер

Подключайте AI-клиентов к планированию Cal.com через Model Context Protocol, используя размещённый сервер на mcp.cal.com или локальный экземпляр.

Сервер Cal.com MCP оборачивает Cal.com API v2 в Model Context Protocol, позволяя управлять бронированиями, типами событий, расписаниями и другим через естественный язык в любом MCP-совместимом клиенте.

Размещённый сервер (mcp.cal.com)

Самый быстрый способ начать работу — подключить ваш MCP-клиент напрямую к mcp.cal.com. Размещённый сервер использует Streamable HTTP transport с аутентификацией OAuth 2.1 — ваш клиент обрабатывает процесс авторизации автоматически.

Подключение клиента

Укажите вашему 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"
    }
  }
}
```
Откройте **Settings → MCP** и добавьте новый сервер с URL `https://mcp.cal.com/mcp`, или добавьте его в ваш `.cursor/mcp.json`:
```json theme={null}
{
  "mcpServers": {
    "calcom": {
      "url": "https://mcp.cal.com/mcp"
    }
  }
}
```
Добавьте сервер в настройки MCP вашего VS Code:
```json theme={null}
{
  "mcpServers": {
    "calcom": {
      "url": "https://mcp.cal.com/mcp"
    }
  }
}
```
Добавьте следующее в ваш `~/.fx/mcp.json`:
```json theme={null}
{
  "mcp": {
    "calcom": {
      "type": "http",
      "url": "https://mcp.cal.com/mcp"
    }
  }
}
```

Затем выполните `/mcp auth calcom --open` в fx для авторизации. Смотрите
[документацию fx MCP](https://fx.sh/docs/capabilities/mcp) о транспортах,
параметрах аутентификации и обнаружении инструментов.

Самостоятельно размещённый сервер (stdio)

Если вы предпочитаете запускать сервер локально, вы можете использовать stdio transport с API-ключом. Это полезно для разработки или когда вам нужен полный контроль над сервером.

Предварительные требования

Подключение клиента

Добавьте следующее в конфигурацию вашего MCP-клиента:

{
  "mcpServers": {
    "calcom": {
      "command": "npx",
      "args": ["@calcom/cal-mcp@latest"],
      "env": {
        "CAL_API_KEY": "cal_live_xxxx"
      }
    }
  }
}

Замените cal_live_xxxx на ваш фактический API-ключ.

Предупреждение

Никогда не делитесь и не коммитьте ваш API-ключ. Если он был раскрыт, немедленно перевыпустите его в ваших настройках Cal.com.

Наборы инструментов

Вы можете ограничить, какие инструменты сервер регистрирует для сессии, добавив параметр запроса toolsets к URL сервера:

https://mcp.cal.com/mcp?toolsets=bookings,availability

Допустимые наборы инструментов: profile, event-types, bookings, availability, schedules, calendars, teams, organizations, routing-forms, catalog (мета-инструменты find_api_operation / describe_api_operation / call_api_operation). Неизвестные имена отклоняются с ошибкой 400 invalid_request. Если параметр опущен, регистрируются все инструменты; локальные инструменты get_app_link и search_docs всегда регистрируются независимо от выбора. Для самостоятельно размещённого stdio-сервера вместо этого установите MCP_TOOLSETS.

Доступные инструменты

MCP-сервер предоставляет 63 инструмента, сгруппированных по категориям:

Ссылки на приложение

ИнструментОписание
get_app_linkСоздаёт URL, открывающий страницу бронирования, типа события, расписания, команды, формы маршрутизации или настроек в веб-приложении Cal.com

Документация

ИнструментОписание
search_docsПоиск по документации продукта Cal.com; возвращает ранжированные страницы с выдержкой из лучшего результата

Профиль пользователя

ИнструментОписание
get_meПолучить профиль аутентифицированного пользователя
update_meОбновить профиль пользователя

Типы событий

ИнструментОписание
get_event_typesСписок всех типов событий
get_event_typeПолучить конкретный тип события по ID
create_event_typeСоздать новый тип события
update_event_typeОбновить тип события
delete_event_typeУдалить тип события
get_event_type_settingsПолучить настройки типа события
get_event_type_historyПолучить историю изменений типа события
get_scheduling_configПолучить конфигурацию планирования типа события
get_crm_sync_errorsПолучить ошибки синхронизации CRM для типа события

Бронирования

ИнструментОписание
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_booking_routing_traceПолучить трассировку маршрутизации для бронирования
get_org_team_bookingsПолучить бронирования для команды организации
get_org_user_bookingsПолучить бронирования для пользователя организации

Расписания

ИнструментОписание
get_schedulesСписок всех расписаний
get_scheduleПолучить конкретное расписание по ID
create_scheduleСоздать новое расписание
update_scheduleОбновить расписание
delete_scheduleУдалить расписание
get_default_scheduleПолучить ваше расписание по умолчанию

Доступность и календари

ИнструментОписание
get_availabilityПолучить доступные временные слоты
get_busy_timesПолучить занятое время из календарей
get_connected_calendarsСписок подключённых календарей
get_conferencing_appsСписок приложений для конференций

Команды и членства

ИнструментОписание
get_my_teamsПолучить команды, в которых вы состоите
get_org_teamsПолучить команды организации
create_team_inviteПригласить кого-то в команду
create_team_membershipСоздать членство в команде
get_team_membershipsПолучить все членства в команде
get_team_membershipПолучить членство в команде
update_team_membershipОбновить членство в команде
delete_team_membershipУдалить членство в команде

Организации

ИнструментОписание
get_org_membershipsПолучить все членства в организациях
create_org_membershipСоздать членство в организации
get_org_membershipПолучить членство в организации
update_org_membershipОбновить членство в организации
delete_org_membershipУдалить членство в организации
get_org_attributesПолучить атрибуты организации
get_org_attributeПолучить атрибут организации
get_attribute_optionsПолучить варианты для атрибута
get_user_attributesПолучить атрибуты, назначенные пользователю
assign_attribute_to_userНазначить атрибут пользователю
update_user_attributeОбновить атрибут, назначенный пользователю
unassign_attribute_from_userСнять атрибут с пользователя
get_user_attribute_historyПолучить историю назначения атрибутов пользователя

Формы маршрутизации

ИнструментОписание
calculate_routing_form_slotsРассчитать слоты на основе ответа формы маршрутизации
get_org_routing_formsПолучить формы маршрутизации организации
get_org_routing_form_responsesПолучить ответы форм маршрутизации

Каталог API

ИнструментОписание
find_api_operationПоиск по полному каталогу операций API v2
describe_api_operationПолучить схему входных данных для операции API
call_api_operationВыполнить любую операцию API v2 из каталога

Примеры запросов

После подключения вы можете взаимодействовать с Cal.com, используя естественный язык:

  • "Какие у меня бронирования на этой неделе?"
  • "Создай тип события на 30 минут под названием 'Быстрый чат'"
  • "Отмени мою встречу с Джоном на завтра"
  • "Покажи мои доступные слоты на следующий понедельник"
  • "Перенеси мою встречу в 14:00 на четверг в 15:00"
  • "Какие у меня типы событий?"

Связанные ресурсы

Эта документация создана и размещена на Mintlify, платформе документации для разработчиков.