MCPサーバー

Samuelz Chauffeur Booking

io.github.samuelzcom/chauffeur-booking
旅行・ホスピタリティ 公開・接続可能 MCP 2025-11-25

このMCPでできること

Provides chauffeur service options, ride price previews, customer policies, and prepared unpaid offers for transfers or hourly service.

get_customer_policy
Published customer terms
Read current booking preparation terms, account requirement, guest booking and minimum lead time. Service-specific cancellation and waiting terms must be checked on the current offer before confirmation. This does not confirm a booking.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'locale': {'enum': ['de', 'en'], 'type': 'string', 'default': 'de'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'oneOf': [{'type': 'object', 'required': ['status'], 'properties': {'status': {'type': 'string', 'const': 'invalid_request'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['status'], 'properties': {'status': {'type': 'string', 'const': 'unavailable'}, 'bookingUrl': {'type': 'string', 'format': 'uri'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['status', 'bookingUrl', 'timeZone', 'observedAt', 'scope', 'revalidationRequired', 'terms', 'bookingConfirmed'], 'properties': {'scope': {'type': 'string', 'const': 'booking_preparation'}, 'terms': {'type': 'object', 'required': ['minimumLeadTimeMinutes', 'accountRequired', 'bookerForGuestAllowed', 'bookingConfirmation', 'serviceSpecificTerms'], 'properties': {'accountRequired': {'type': 'boolean'}, 'bookingConfirmation': {'type': 'string', 'const': 'after_confirmed_full_payment'}, 'serviceSpecificTerms': {'type': 'string', 'const': 'review_the_current_offer_before_confirmation'}, 'bookerForGuestAllowed': {'type': 'boolean'}, 'minimumLeadTimeMinutes': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}}, 'additionalProperties': False}, 'status': {'type': 'string', 'const': 'available'}, 'timeZone': {'type': 'string'}, 'bookingUrl': {'type': 'string', 'format': 'uri'}, 'observedAt': {'type': 'string'}, 'bookingConfirmed': {'type': 'boolean', 'const': False}, 'revalidationRequired': {'type': 'boolean', 'const': True}}, 'additionalProperties': False}], '$schema': 'https://json-schema.org/draft/2020-12/schema'}
get_offer_status
Read prepared offer status
Read one prepared offer by its submissionId and resumeToken. No quote, booking, payment, message or provider request is created.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['submissionId', 'resumeToken'], 'properties': {'resumeToken': {'type': 'string', 'pattern': '^[a-f0-9]{64}$'}, 'submissionId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'oneOf': [{'type': 'object', 'required': ['status'], 'properties': {'status': {'type': 'string', 'const': 'invalid_request'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['status'], 'properties': {'status': {'type': 'string', 'const': 'unavailable'}, 'bookingUrl': {'type': 'string', 'format': 'uri'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['status', 'retryAfterSeconds'], 'properties': {'status': {'type': 'string', 'const': 'pending'}, 'retryAfterSeconds': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}}, 'additionalProperties': False}, {'type': 'object', 'required': ['status', 'retryAfterSeconds'], 'properties': {'status': {'type': 'string', 'const': 'rate_limited'}, 'retryAfterSeconds': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}}, 'additionalProperties': False}, {'type': 'object', 'required': ['status'], 'properties': {'status': {'enum': ['conflict', 'ambiguous', 'not_found'], 'type': 'string'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['status', 'bookingConfirmed', 'checkoutUrl', 'termsUrl', 'offer', 'nextAction'], 'properties': {'offer': {'type': 'object', 'required': ['currency', 'grossTotalCents', 'expiresAt', 'customerConfirmationRequired', 'completeTermsBound'], 'properties': {'currency': {'type': 'string', 'const': 'EUR'}, 'expiresAt': {'type': 'string'}, 'grossTotalCents': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'completeTermsBound': {'type': 'boolean', 'const': True}, 'customerConfirmationRequired': {'type': 'boolean', 'const': True}}, 'additionalProperties': False}, 'status': {'type': 'string', 'const': 'prepared'}, 'termsUrl': {'type': 'string', 'format': 'uri'}, 'nextAction': {'type': 'string'}, 'checkoutUrl': {'type': 'string', 'format': 'uri'}, 'bookingConfirmed': {'type': 'boolean', 'const': False}}, 'additionalProperties': False}], '$schema': 'https://json-schema.org/draft/2020-12/schema'}
get_service_options
Chauffeur service options
Read this provider's public service, required ride facts and booking link.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'locale': {'enum': ['de', 'en'], 'type': 'string', 'default': 'de'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'oneOf': [{'type': 'object', 'required': ['status'], 'properties': {'status': {'type': 'string', 'const': 'invalid_request'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['status'], 'properties': {'status': {'type': 'string', 'const': 'unavailable'}, 'bookingUrl': {'type': 'string', 'format': 'uri'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['status', 'provider', 'timeZone', 'bookingUrl', 'services', 'requiredRideFacts', 'returnRideFacts', 'nextAction'], 'properties': {'status': {'type': 'string', 'const': 'available'}, 'provider': {'type': 'string'}, 'services': {'type': 'array', 'items': {'type': 'object', 'required': ['key', 'tripTypes', 'availability'], 'properties': {'key': {'type': 'string'}, 'tripTypes': {'type': 'array', 'items': {'enum': ['one_way', 'return'], 'type': 'string'}}, 'availability': {'type': 'string', 'const': 'requires_offer_review'}}, 'additionalProperties': False}}, 'timeZone': {'type': 'string'}, 'bookingUrl': {'type': 'string', 'format': 'uri'}, 'nextAction': {'type': 'string'}, 'returnRideFacts': {'type': 'array', 'items': {'type': 'string'}}, 'requiredRideFacts': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}], '$schema': 'https://json-schema.org/draft/2020-12/schema'}
prepare_offer
Prepare a binding chauffeur offer
Prepare exactly one unpaid reservation and binding offer for an authorized transfer, return transfer or hourly service. Requires real customer contact data and a client-generated submissionId and resumeToken. Approved distribution partners may add their opaque capability for tenant-bound attribution. The customer must review the complete bound terms and confirm on checkoutUrl; this does not charge or confirm the booking.
外部アクセスあり 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['submissionId', 'resumeToken', 'contact', 'ride'], 'properties': {'ride': {'type': 'object', 'required': ['pickup', 'destination', 'date', 'time', 'passengers', 'tripType'], 'properties': {'date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'time': {'type': 'string', 'pattern': '^(?:[01]\\d|2[0-3]):[0-5]\\d$'}, 'hours': {'type': 'integer', 'maximum': 24, 'minimum': 1}, 'pickup': {'type': 'string', 'maxLength': 240, 'minLength': 2}, 'luggage': {'type': 'string', 'maxLength': 240, 'minLength': 1}, 'tripType': {'enum': ['one_way', 'return'], 'type': 'string'}, 'passengers': {'type': 'integer', 'maximum': 60, 'minimum': 1}, 'returnDate': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'returnTime': {'type': 'string', 'pattern': '^(?:[01]\\d|2[0-3]):[0-5]\\d$'}, 'destination': {'type': 'string', 'maxLength': 240, 'minLength': 2}, 'serviceType': {'enum': ['hourly'], 'type': 'string'}, 'flightNumber': {'type': 'string', 'maxLength': 240, 'minLength': 1}}, 'additionalProperties': False}, 'locale': {'enum': ['de', 'en'], 'type': 'string', 'default': 'de'}, 'contact': {'type': 'object', 'properties': {'email': {'type': 'string', 'format': 'email', 'pattern': "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$", 'maxLength': 254}, 'phone': {'type': 'string', 'pattern': '^\\+[1-9][0-9]{6,14}$'}, 'fullName': {'type': 'string', 'maxLength': 120, 'minLength': 2}}, 'additionalProperties': False}, 'resumeToken': {'type': 'string', 'pattern': '^[a-f0-9]{64}$'}, 'submissionId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'specialRequests': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'firstTouchTrackingToken': {'type': 'string', 'pattern': '^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$'}, 'distributionPartnerCapability': {'type': 'string', 'pattern': '^dp_live_[a-f0-9]{64}$'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'oneOf': [{'type': 'object', 'required': ['status'], 'properties': {'status': {'type': 'string', 'const': 'invalid_request'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['status'], 'properties': {'status': {'type': 'string', 'const': 'unavailable'}, 'bookingUrl': {'type': 'string', 'format': 'uri'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['status', 'retryAfterSeconds'], 'properties': {'status': {'type': 'string', 'const': 'pending'}, 'retryAfterSeconds': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}}, 'additionalProperties': False}, {'type': 'object', 'required': ['status', 'retryAfterSeconds'], 'properties': {'status': {'type': 'string', 'const': 'rate_limited'}, 'retryAfterSeconds': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}}, 'additionalProperties': False}, {'type': 'object', 'required': ['status'], 'properties': {'status': {'enum': ['conflict', 'ambiguous', 'not_found'], 'type': 'string'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['status', 'bookingConfirmed', 'checkoutUrl', 'termsUrl', 'offer', 'nextAction'], 'properties': {'offer': {'type': 'object', 'required': ['currency', 'grossTotalCents', 'expiresAt', 'customerConfirmationRequired', 'completeTermsBound'], 'properties': {'currency': {'type': 'string', 'const': 'EUR'}, 'expiresAt': {'type': 'string'}, 'grossTotalCents': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'completeTermsBound': {'type': 'boolean', 'const': True}, 'customerConfirmationRequired': {'type': 'boolean', 'const': True}}, 'additionalProperties': False}, 'status': {'type': 'string', 'const': 'prepared'}, 'termsUrl': {'type': 'string', 'format': 'uri'}, 'nextAction': {'type': 'string'}, 'checkoutUrl': {'type': 'string', 'format': 'uri'}, 'bookingConfirmed': {'type': 'boolean', 'const': False}}, 'additionalProperties': False}], '$schema': 'https://json-schema.org/draft/2020-12/schema'}
quote_ride
Chauffeur price preview
Get a current price preview for complete ride facts, using local service time and addresses with city or postcode. No availability guarantee, booking, charge, message or reservation. Do not include customer contact details.
読み取り専用 外部アクセスあり
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['ride'], 'properties': {'ride': {'type': 'object', 'required': ['pickup', 'destination', 'date', 'time', 'passengers', 'tripType'], 'properties': {'date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'time': {'type': 'string', 'pattern': '^(?:[01]\\d|2[0-3]):[0-5]\\d$'}, 'hours': {'type': 'integer', 'maximum': 24, 'minimum': 1}, 'pickup': {'type': 'string', 'maxLength': 240, 'minLength': 2}, 'luggage': {'type': 'string', 'maxLength': 240, 'minLength': 1}, 'tripType': {'enum': ['one_way', 'return'], 'type': 'string'}, 'passengers': {'type': 'integer', 'maximum': 60, 'minimum': 1}, 'returnDate': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'returnTime': {'type': 'string', 'pattern': '^(?:[01]\\d|2[0-3]):[0-5]\\d$'}, 'destination': {'type': 'string', 'maxLength': 240, 'minLength': 2}, 'serviceType': {'enum': ['hourly'], 'type': 'string'}, 'flightNumber': {'type': 'string', 'maxLength': 240, 'minLength': 1}}, 'additionalProperties': False}, 'locale': {'enum': ['de', 'en'], 'type': 'string', 'default': 'de'}, 'specialRequests': {'type': 'string', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'oneOf': [{'type': 'object', 'required': ['status'], 'properties': {'status': {'type': 'string', 'const': 'invalid_request'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['status'], 'properties': {'status': {'type': 'string', 'const': 'unavailable'}, 'bookingUrl': {'type': 'string', 'format': 'uri'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['status', 'bookingUrl', 'retryAfterSeconds'], 'properties': {'status': {'type': 'string', 'const': 'rate_limited'}, 'bookingUrl': {'type': 'string', 'format': 'uri'}, 'retryAfterSeconds': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}}, 'additionalProperties': False}, {'type': 'object', 'required': ['status', 'bookingUrl', 'message'], 'properties': {'status': {'type': 'string', 'const': 'review_required'}, 'message': {'type': 'string'}, 'bookingUrl': {'type': 'string', 'format': 'uri'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['status', 'bookingUrl', 'bookingConfirmed', 'quote', 'nextAction'], 'properties': {'quote': {'type': 'object', 'required': ['currency', 'grossTotalCents', 'pricesIncludeVat', 'vatRateBasisPoints', 'parkingIncluded', 'tollsIncluded', 'vehicleCount', 'billableHoursPerServiceLine', 'serviceLines', 'calculatedAt', 'revalidationRequired'], 'properties': {'currency': {'type': 'string'}, 'calculatedAt': {'type': 'string'}, 'serviceLines': {'type': 'array', 'items': {'type': 'object', 'required': ['direction', 'grossAmountCents'], 'properties': {'direction': {'enum': ['outbound', 'return'], 'type': 'string'}, 'grossAmountCents': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}}, 'additionalProperties': False}}, 'vehicleCount': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'tollsIncluded': {'type': 'boolean'}, 'grossTotalCents': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'parkingIncluded': {'type': 'boolean'}, 'pricesIncludeVat': {'type': 'boolean'}, 'vatRateBasisPoints': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'revalidationRequired': {'type': 'boolean', 'const': True}, 'billableHoursPerServiceLine': {'type': 'number', 'exclusiveMinimum': 0}}, 'additionalProperties': False}, 'status': {'type': 'string', 'const': 'quoted'}, 'bookingUrl': {'type': 'string', 'format': 'uri'}, 'nextAction': {'type': 'string'}, 'bookingConfirmed': {'type': 'boolean', 'const': False}}, 'additionalProperties': False}], '$schema': 'https://json-schema.org/draft/2020-12/schema'}
変更
prepare_offer
2026年9月29日2:50
変更
quote_ride
2026年9月29日2:50
変更
prepare_offer
2026年9月25日2:49
変更
quote_ride
2026年9月25日2:49
追加
get_offer_status
2026年9月23日2:40
追加
prepare_offer
2026年9月23日2:40
追加
quote_ride
2026年9月23日2:40
追加
get_customer_policy
2026年9月23日2:40
追加
get_service_options
2026年9月23日2:40