marketplace

Book, reschedule and cancel appointments at any business on the BookingMaven marketplace.

사용해야 할까요

품질 및 안전성

A
설명 품질
100%
스키마 완전성
85%
이름 품질
95%
오염 위험
100%
권한 일치
100%
프로토콜 준수
100%

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~2,028토큰 (도구 정의)
~1.4 KB일반적인 응답 크기
중간 정도의 주의 영향 (128k 컨텍스트의 1.58%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "marketplace": {
      "url": "https://mcp.bookingmaven.com/mcp"
    }
  }
}

원격 엔드포인트

https://mcp.bookingmaven.com/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (11)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢search_businesses(location, category, limit)

Search for service businesses by location. Returns businesses with their booking URLs, ratings, and descriptions. Use get_business to see services and get_availability to check open slots.

입력 스키마

{
  "type": "object",
  "properties": {
    "location": {
      "type": "string",
      "description": "City, city+state, or zip code. E.g. 'Brooklyn NY', 'Austin, TX', '90210'"
    },
    "category": {
      "description": "Filter by business type",
      "type": "string",
      "enum": [
        "barbershop",
        "hair_salon",
        "tattoo_piercing",
        "nail_salon",
        "mobile_services",
        "fitness_training",
        "car_detailing",
        "spa_wellness",
        "yoga",
        "personal_trainer"
      ]
    },
    "limit": {
      "description": "Max results (default 10)",
      "default": 10,
      "type": "number",
      "minimum": 1,
      "maximum": 20
    }
  },
  "required": [
    "location"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_business(slug, business_slug)

Get full details for a business including services (with IDs and prices), staff, and hours. You need service_id and optionally staff_id before calling book_appointment.

입력 스키마

{
  "type": "object",
  "properties": {
    "slug": {
      "description": "The business slug from search_businesses results",
      "type": "string"
    },
    "business_slug": {
      "description": "Alias for slug — the business slug from search_businesses results",
      "type": "string"
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_availability(business_slug, date, staff_id, timezone)

Get open appointment slots for a business on a specific date. Returns ISO timestamps for each available slot. Use these start_time/end_time values when calling book_appointment.

입력 스키마

{
  "type": "object",
  "properties": {
    "business_slug": {
      "type": "string",
      "description": "The business slug from search_businesses results"
    },
    "date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Date to check in YYYY-MM-DD format"
    },
    "staff_id": {
      "description": "Specific staff member ID (from get_business). Omit to check any available staff.",
      "type": "string"
    },
    "timezone": {
      "description": "IANA timezone string (e.g. 'America/New_York'). Defaults to business local time.",
      "type": "string"
    }
  },
  "required": [
    "business_slug",
    "date"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢book_appointment(business_slug, service_id, start_time, end_time, customer_name, ...)

Reserve an appointment slot at a service business. Provide a unique idempotency_key to safely retry without double-booking. Get service_id from get_business and start_time/end_time from get_availability.

입력 스키마

{
  "type": "object",
  "properties": {
    "business_slug": {
      "type": "string",
      "description": "The business slug from search_businesses results"
    },
    "service_id": {
      "type": "string",
      "description": "The service ID from get_business results"
    },
    "start_time": {
      "type": "string",
      "description": "ISO 8601 datetime for the appointment start (from get_availability)"
    },
    "end_time": {
      "type": "string",
      "description": "ISO 8601 datetime for the appointment end (from get_availability)"
    },
    "customer_name": {
      "type": "string",
      "description": "Customer full name"
    },
    "customer_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,}$",
      "description": "Customer email address"
    },
    "customer_phone": {
      "description": "Customer phone number (optional)",
      "type": "string"
    },
    "staff_id": {
      "description": "Staff member ID (from get_business). Omit to auto-assign.",
      "type": "string"
    },
    "notes": {
      "description": "Any special requests or notes for the business",
      "type": "string"
    },
    "idempotency_key": {
      "type": "string",
      "description": "Unique key to prevent duplicate bookings (e.g. UUID). Reuse the same key to safely retry."
    }
  },
  "required": [
    "business_slug",
    "service_id",
    "start_time",
    "end_time",
    "customer_name",
    "customer_email",
    "idempotency_key"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_booking(booking_id, lookup_token)

Look up the current status/time of a booking you made. Requires the booking_id and the lookup_token that book_appointment returned. No account needed.

입력 스키마

{
  "type": "object",
  "properties": {
    "booking_id": {
      "type": "string",
      "description": "The booking_id returned from book_appointment"
    },
    "lookup_token": {
      "type": "string",
      "description": "The lookup_token returned from book_appointment for this booking"
    }
  },
  "required": [
    "booking_id",
    "lookup_token"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🔴cancel_appointment(booking_id, lookup_token)

Cancel a booking you made. Requires booking_id and the lookup_token from book_appointment. Safe to retry (idempotent). No account needed.

입력 스키마

{
  "type": "object",
  "properties": {
    "booking_id": {
      "type": "string",
      "description": "The booking_id returned from book_appointment"
    },
    "lookup_token": {
      "type": "string",
      "description": "The lookup_token returned from book_appointment for this booking"
    }
  },
  "required": [
    "booking_id",
    "lookup_token"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🔴reschedule_appointment(booking_id, lookup_token, new_start_time, new_end_time)

Move a booking you made to a new time. Requires booking_id, the lookup_token from book_appointment, and new_start_time/new_end_time (ISO 8601, from get_availability). The new slot is checked for conflicts. No account needed.

입력 스키마

{
  "type": "object",
  "properties": {
    "booking_id": {
      "type": "string",
      "description": "The booking_id returned from book_appointment"
    },
    "lookup_token": {
      "type": "string",
      "description": "The lookup_token returned from book_appointment for this booking"
    },
    "new_start_time": {
      "type": "string",
      "description": "ISO 8601 datetime for the new appointment start (from get_availability)"
    },
    "new_end_time": {
      "type": "string",
      "description": "ISO 8601 datetime for the new appointment end (from get_availability)"
    }
  },
  "required": [
    "booking_id",
    "lookup_token",
    "new_start_time",
    "new_end_time"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡create_account(email, name, phone)

Get a BookingMaven signup link pre-filled with the customer's details. The customer visits the link to set their password and activate their account, which links their past bookings.

입력 스키마

{
  "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,}$",
      "description": "Customer email (use the same email used for booking)"
    },
    "name": {
      "type": "string",
      "description": "Customer full name"
    },
    "phone": {
      "description": "Customer phone number (optional)",
      "type": "string"
    }
  },
  "required": [
    "email",
    "name"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢start_business_signup(business_name, category, email)

Get a link for a business owner to sign up and list their business on BookingMaven. Returns a URL with optional pre-filled details.

입력 스키마

{
  "type": "object",
  "properties": {
    "business_name": {
      "description": "Name of the business",
      "type": "string"
    },
    "category": {
      "description": "Type of business",
      "type": "string",
      "enum": [
        "barbershop",
        "hair_salon",
        "tattoo_piercing",
        "nail_salon",
        "mobile_services",
        "fitness_training",
        "car_detailing",
        "spa_wellness",
        "yoga",
        "personal_trainer"
      ]
    },
    "email": {
      "description": "Business owner 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,}$"
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_my_bookings

List all appointments booked with your email address. Requires signing in (OAuth) — your AI must be connected with an authenticated account that has a verified email. Returns your upcoming and past bookings.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪link_account

Link the guest bookings you made with your email to your signed-in account so you can manage them from your account. Requires signing in (OAuth) with a verified email.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 11개
검증됨버전이 기록되지 않음도구 11개