MCPサーバー

reservations

kz.tehprof.booking/reservations

このMCPでできること

Lists bookable resources and availability and manages reservations for a booking tenant.

cancel_reservation
[Requires API key with the matching scope] Cancel a reservation by UUID. Requires the reservations:write scope and the reservation must belong to the key tenant (idempotent — cancelling an already-cancelled booking succeeds).
入力スキーマ
{'type': 'object', 'required': ['reservation_id'], 'properties': {'reservation_id': {'type': 'string', 'description': 'Reservation UUID to cancel.'}}}
check_availability
Get free time slots for a resource on a given date. Returns bookable slots considering existing reservations. No API key required.
入力スキーマ
{'type': 'object', 'required': ['resource_id', 'date'], 'properties': {'date': {'type': 'string', 'description': 'Date in YYYY-MM-DD.'}, 'resource_id': {'type': 'string', 'description': 'Resource UUID (from list_resources).'}, 'duration_minutes': {'type': 'integer', 'description': 'Slot duration in minutes (5-1440, default 60).'}}}
create_reservation
[Requires API key with the matching scope] Create a reservation. Requires an API key with the reservations:write scope; the booking is bound to the key tenant and the resource must belong to it. Provide either check_in_date+check_out_date (overnight/rental) OR start_at+end_at ISO datetimes (time-slot).
入力スキーマ
{'type': 'object', 'required': ['resource_id', 'guest_name', 'guest_phone'], 'properties': {'notes': {'type': 'string', 'description': 'Free-text notes (max 1000 chars, optional).'}, 'end_at': {'type': 'string', 'description': 'Slot end ISO datetime.'}, 'locale': {'type': 'string', 'description': 'Locale ru/en/kk (optional, default ru).'}, 'start_at': {'type': 'string', 'description': 'Slot start ISO datetime (alternative to check_in_date).'}, 'guest_name': {'type': 'string', 'description': 'Guest full name (2-200 chars).'}, 'guest_email': {'type': 'string', 'description': 'Guest email (optional).'}, 'guest_phone': {'type': 'string', 'description': 'Guest phone, 6-15 digits with optional +.'}, 'resource_id': {'type': 'string', 'description': 'Resource UUID to book.'}, 'check_in_date': {'type': 'string', 'description': 'Rental check-in date YYYY-MM-DD.'}, 'check_out_date': {'type': 'string', 'description': 'Rental check-out date YYYY-MM-DD.'}, 'idempotency_key': {'type': 'string', 'description': 'Optional client-generated key (e.g. a UUID) to make retries safe. Repeating the call with the same key returns the original reservation instead of creating a duplicate (24h window).'}}}
get_branding
Get public tenant profile and branding (name, logo, colors, tagline) by the tenant public slug. No API key required.
入力スキーマ
{'type': 'object', 'required': ['slug'], 'properties': {'slug': {'type': 'string', 'description': 'Tenant public slug, e.g. "baiterekresort-bitrix24-kz".'}}}
get_reservation
[Requires API key with the matching scope] Get a single reservation by its UUID. With the reservations:read scope and matching tenant, returns guest details; otherwise only public status fields.
入力スキーマ
{'type': 'object', 'required': ['reservation_id'], 'properties': {'reservation_id': {'type': 'string', 'description': 'Reservation UUID.'}}}
list_groups
List resource groups (categories) of a tenant by public slug — only groups with at least one publicly visible resource. No API key required.
入力スキーマ
{'type': 'object', 'required': ['slug'], 'properties': {'slug': {'type': 'string', 'description': 'Tenant public slug.'}}}
list_reservations
[Requires API key with the matching scope] List reservations of the API key tenant. Requires the reservations:read scope. Optional filters: resource_id, from/to (YYYY-MM-DD), status, limit (1-200, default 50).
入力スキーマ
{'type': 'object', 'properties': {'to': {'type': 'string', 'description': 'End date filter YYYY-MM-DD.'}, 'from': {'type': 'string', 'description': 'Start date filter YYYY-MM-DD.'}, 'limit': {'type': 'integer', 'description': '1-200, default 50.'}, 'status': {'type': 'string', 'description': 'Filter by status (e.g. confirmed, pending, cancelled).'}, 'resource_id': {'type': 'string', 'description': 'Filter by resource UUID.'}}}
list_resources
List bookable resources of a tenant (rooms, halls, services) by public slug. Optional filters: group_id, search, bed_type, resource_class, min_capacity, amenities (comma-separated). No API key required.
入力スキーマ
{'type': 'object', 'required': ['slug'], 'properties': {'slug': {'type': 'string', 'description': 'Tenant public slug.'}, 'search': {'type': 'string', 'description': 'Free-text name filter (1-100 chars).'}, 'bed_type': {'type': 'string'}, 'group_id': {'type': 'string', 'description': 'Resource group UUID, or "none" for ungrouped.'}, 'amenities': {'type': 'string', 'description': 'Comma-separated amenity keys.'}, 'min_capacity': {'type': 'integer', 'description': 'Minimum capacity.'}, 'resource_class': {'type': 'string'}}}
追加
cancel_reservation
2026年9月17日12:54
追加
get_reservation
2026年9月17日12:54
追加
list_reservations
2026年9月17日12:54
追加
create_reservation
2026年9月17日12:54
追加
check_availability
2026年9月17日12:54
追加
list_groups
2026年9月17日12:54
追加
list_resources
2026年9月17日12:54
追加
get_branding
2026年9月17日12:54