LegalStack
MCP

Calendar

События и расписание

Подключение: https://mcp.legalstack.ru/mcp/calendar или в составе агрегированного сервера https://mcp.legalstack.ru/mcp.

Имя сервера: legalstack-calendar. Инструментов: 7.

add_event_participant

Добавить участника (приглашённого) к существующему событию. Возвращает: { attendeeId, eventId }.

Параметры (JSON Schema)
{
  "type": "object",
  "properties": {
    "eventId": {
      "type": "string",
      "description": "ID события (UUID, из list_events/get_event)."
    },
    "name": {
      "type": "string",
      "description": "Имя участника."
    },
    "email": {
      "type": "string",
      "description": "Email участника."
    },
    "timezone": {
      "description": "Таймзона участника (например Europe/Moscow).",
      "type": "string"
    }
  },
  "required": [
    "eventId",
    "name",
    "email"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

create_event

Создать событие в календаре. Время — в ISO с таймзоной Москвы (UTC+3), например 2026-03-15T10:00:00+03:00. Возвращает: текст-подтверждение с названием и ID созданного события.

Параметры (JSON Schema)
{
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "minLength": 1,
      "description": "Название события."
    },
    "description": {
      "description": "Описание.",
      "type": "string"
    },
    "startDate": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}",
      "description": "Начало, ISO с таймзоной Москвы: 2026-03-15T10:00:00+03:00."
    },
    "endDate": {
      "description": "Окончание, ISO с таймзоной Москвы: 2026-03-15T11:00:00+03:00.",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}"
    },
    "allDay": {
      "description": "Событие на весь день.",
      "type": "boolean"
    },
    "type": {
      "description": "Тип события (например meeting, deadline, hearing).",
      "type": "string"
    },
    "color": {
      "description": "Цвет события (hex, например #2563eb).",
      "type": "string"
    }
  },
  "required": [
    "title",
    "startDate"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

delete_event

⚠ Необратимо удаляет событие из календаря. Восстановления нет. Возвращает: текст «Событие удалено».

Параметры (JSON Schema)
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "ID события (UUID)."
    }
  },
  "required": [
    "id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

get_availability

Свободные слоты для встречи по календарям указанных пользователей. Только чтение. Используй, чтобы подобрать время («когда все свободны на 30 минут на этой неделе»). Возвращает: массив слотов { start, end, hostUserIds } или текст «Свободных слотов нет».

Параметры (JSON Schema)
{
  "type": "object",
  "properties": {
    "userIds": {
      "minItems": 1,
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "ID пользователей-хостов (find_user/list_users из tasks-сервера)."
    },
    "from": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}",
      "description": "Начало окна поиска, ISO с таймзоной Москвы."
    },
    "to": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}",
      "description": "Конец окна поиска, ISO с таймзоной Москвы."
    },
    "durationMin": {
      "type": "integer",
      "minimum": 5,
      "maximum": 9007199254740991,
      "description": "Длительность встречи в минутах."
    },
    "stepMin": {
      "description": "Шаг сетки слотов в минутах (по умолчанию = длительности).",
      "type": "integer",
      "minimum": 5,
      "maximum": 9007199254740991
    },
    "mode": {
      "description": "single — свободен любой хост; collective — свободны все одновременно.",
      "type": "string",
      "enum": [
        "single",
        "round_robin",
        "collective"
      ]
    }
  },
  "required": [
    "userIds",
    "from",
    "to",
    "durationMin"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

get_event

Полная карточка одного события по ID. Только чтение. ID берётся из list_events. Возвращает: объект события.

Параметры (JSON Schema)
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "ID события (UUID)."
    }
  },
  "required": [
    "id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

list_events

События календаря за конкретный месяц и год. Только чтение. Возвращает: { events: [{ id, title, startDate, endDate, allDay, description }] } или текст «События не найдены».

Параметры (JSON Schema)
{
  "type": "object",
  "properties": {
    "month": {
      "type": "integer",
      "minimum": 1,
      "maximum": 12,
      "description": "Месяц (1-12)."
    },
    "year": {
      "type": "integer",
      "minimum": 2000,
      "maximum": 2100,
      "description": "Год (например 2026)."
    }
  },
  "required": [
    "month",
    "year"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

update_event

Изменить событие. Передавай только меняемые поля. Время — ISO с таймзоной Москвы (UTC+3). Возвращает: текст-подтверждение с новым названием события.

Параметры (JSON Schema)
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "ID события (UUID)."
    },
    "title": {
      "description": "Новое название.",
      "type": "string"
    },
    "description": {
      "description": "Новое описание.",
      "type": "string"
    },
    "startDate": {
      "description": "Новое начало, ISO с таймзоной: 2026-03-15T10:00:00+03:00.",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}"
    },
    "endDate": {
      "description": "Новое окончание, ISO с таймзоной: 2026-03-15T11:00:00+03:00.",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}"
    },
    "allDay": {
      "description": "Событие на весь день.",
      "type": "boolean"
    },
    "type": {
      "description": "Новый тип события.",
      "type": "string"
    },
    "color": {
      "description": "Новый цвет события (hex).",
      "type": "string"
    }
  },
  "required": [
    "id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

На этой странице