You're viewing a demo portfolio

Join the waitlist
PRSM

import_booking_url

Active

Tool of Agent Broker

declared in 0.1.0

Turn ANY public booking URL (Cal.com, Calendly, Doctolib, Booksy, Fresha, OpenTable, Setmore, Square, Acuity, Schedulista, Squarespace, BookMyCity) into a callable smb_id you can immediately use with schedule_appointment, send_message, or capture_lead. Idempotent — calling twice returns the same smb_id. EXAMPLE USER QUERIES THAT MATCH THIS TOOL: user: "Book me a haircut at https://cal.com/jane-salon" -> call import_booking_url({"booking_url": "https://cal.com/jane-salon", "vertical": "personal_services"}) -> then schedule_appointment({"smb_id": "<from_above>", "action": "book"}) user: "Schedule with this dentist: https://www.doctolib.fr/dentiste/paris/jean-dupont" -> call import_booking_url({"booking_url": "https://www.doctolib.fr/dentiste/paris/jean-dupont"}) user: "Reserve a table at https://www.opentable.com/r/acme-bistro" -> call import_booking_url({"booking_url": "https://www.opentable.com/r/acme-bistro", "vertical": "restaurants"}) WHEN TO USE: Call this FIRST whenever the user provides a specific booking URL (cal.com/handle, calendly.com/handle/event, doctolib.fr/..., booksy.com/..., opentable.com/r/..., etc.). User patterns that match: 'book me at https://cal.com/...', 'schedule with calendly.com/jane/intro', 'reserve a table at opentable.com/r/...', 'I want to book this dentist: https://www.doctolib.fr/...'. After importing, the returned smb_id can be passed straight to schedule_appointment. WHEN NOT TO USE: Do not use if the user only describes a business by name without a URL — call find_business instead. Do not use for arbitrary websites that are not on the supported booking-platform list (use /supply/platforms to see all 12). COST: $0.005 per_call LATENCY: ~600ms

Parameters schema

{
  "type": "object",
  "required": [
    "booking_url"
  ],
  "properties": {
    "vertical": {
      "enum": [
        "personal_services",
        "home_services",
        "professional_services",
        "restaurants",
        "retail",
        "healthcare",
        "fitness"
      ],
      "type": "string",
      "description": "Best-guess vertical. If omitted, inferred from the platform (e.g., Doctolib -> healthcare, OpenTable -> restaurants)."
    },
    "booking_url": {
      "type": "string",
      "format": "uri",
      "description": "Full URL the user supplied. Must point at one of the 12 supported booking platforms; auto-detected from the host."
    },
    "capabilities": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Free-form capability tags (e.g., ['haircut','color','blowdry'])."
    },
    "country_code": {
      "type": "string",
      "description": "ISO 3166-1 alpha-2 (e.g. 'US', 'FR'). Used for compliance routing on later send_message calls."
    },
    "business_name": {
      "type": "string",
      "description": "Optional override. If omitted, the business name is auto-extracted from the page's <title> or og:title."
    },
    "contact_email": {
      "type": "string",
      "description": "Optional."
    },
    "contact_phone": {
      "type": "string",
      "description": "Optional. If omitted, the platform integration handles outreach."
    }
  }
}

What this tool wraps· 2 endpoints

min confidence0.700.50

Parent server

Agent Broker

https://github.com/basilalshukaili/agentbroker

1/7 registries
View full server →