# YouCanBook.me MCP

> YouCanBook.me manages your entire scheduling infrastructure through natural conversation. List profiles, check availability across multiple team members, book new appointments, and cancel existing bookings—all without navigating a single dashboard.

## Overview
- **Category:** productivity
- **Price:** Free
- **Tags:** appointment-booking, calendar-sync, availability-management, automated-scheduling, time-zone-handling

## Description

Stop juggling booking dashboards to track down an attendee's email or confirm an open time slot. This MCP connects directly to your YouCanBook.me account, letting your agent handle all scheduling logistics through chat commands. You can list every profile you use and check who is available across your entire team. Need a meeting booked? Simply ask the agent for available times and let it create the appointment intent; once confirmed, it handles the final booking.

The system tracks everything: from listing profiles to retrieving detailed records of specific appointments and even checking account standing. Because scheduling involves sensitive calendar data, every operation runs through Vinkius's zero-trust proxy, meaning your credentials pass through securely in transit but never sit on a disk. This lets you build complex automations—for instance, chaining this MCP with an internal CRM to automatically create a sales record the moment an appointment is booked.

Your agent becomes a dedicated scheduling coordinator that manages everything from monitoring upcoming calls to instantly revoking appointments when plans change.

## Tools

### list_profiles
Lists every individual booking page (profile) that is active within your YouCanBook.me account.

### get_profile
Gets the full configuration and settings for one specific booking page.

### list_bookings
Queries all bookings for a profile, allowing you to filter by status like tentative or finished.

### get_booking
Retrieves comprehensive data for a single, existing YouCanBook.me appointment.

### cancel_booking
Permanently removes a booked appointment from your calendar and notifies the person who was supposed to attend.

### create_intent
Starts a new scheduling process by generating an intent ID for a specific profile.

### get_availability
Looks up specific timeslots that are open for booking within an active scheduling intent.

### confirm_intent
Finalizes an initial booking request, creating the official, confirmed appointment record.

### get_account
Retrieves core details about your overall YouCanBook.me account and subscription plan status.

### list_team_members
Shows all staff members assigned to a specific booking page, letting you know who's on the team.

## Prompt Examples

**Prompt:** 
```
List all my YouCanBook.me booking pages.
```

**Response:** 
```
I found 3 booking pages: 1. 'Product Demo' (ID: prof-123), 2. 'Customer Support' (ID: prof-456), and 3. 'Recruitment Intro' (ID: prof-789). Which one would you like to see bookings for?
```

**Prompt:** 
```
Show me upcoming bookings for the 'Product Demo' profile.
```

**Response:** 
```
You have 2 upcoming bookings for 'Product Demo': 1. John Doe (2026-04-01 at 10:00 AM) and 2. Jane Smith (2026-04-02 at 02:00 PM). Would you like to see the full details for either of these?
```

**Prompt:** 
```
Cancel the booking with ID 'book-999'.
```

**Response:** 
```
Success! I've cancelled the booking 'book-999'. The attendee has been notified and the time slot is now open on your calendar again. Is there anything else you need to reschedule?
```

## Capabilities

### List all booking pages
Retrieves every shareable profile (or 'booking page') associated with your account.

### Check team availability
Lists staff members assigned to a specific profile so you know who's available for a meeting.

### Query and filter bookings
Finds appointments across your profiles, letting you filter results by status (e.g., upcoming or cancelled).

### Programmatically book slots
Initiates the scheduling process to find available time slots and create a new appointment intent.

### Get deep booking details
Retrieves full records for any specific meeting, including custom form answers from attendees.

### Cancel appointments
Instantly revokes a confirmed appointment and automatically notifies the attendee of the change.

## Use Cases

### The meeting was booked, but I need details for follow up.
Instead of digging through emails and dashboards, prompt your agent to run `get_booking` on the specific ID. It instantly pulls all attendee info and custom form responses needed for the next sales call.

### I need to know if John or Sarah can meet with the client this week.
Ask your agent to first run `list_profiles` to find the correct booking page, then use `list_team_members` to see who is assigned. Finally, check their combined availability using `get_availability`.

### A client needs to cancel, but I don't have the confirmation number.
Tell your agent to list all bookings for that profile (`list_bookings`). Once you spot the date and name, ask it to `cancel_booking` using the ID. The cancellation is immediate and automated.

### We need a new booking page for our niche services.
The agent can list all existing profiles first (`list_profiles`), helping you verify if you already have one. If not, it guides you through setting up the initial intent via `create_intent`.

## Benefits

- Stop manually checking calendars; use the agent to list team members assigned to a profile, ensuring you know who's available before scheduling.
- Never miss a detail again. You can run `get_booking` to pull full appointment records, including all custom notes and form responses from attendees.
- If plans change, you don't need to log in. Simply telling the agent to cancel an appointment triggers the process via `cancel_booking`, notifying everyone involved.
- Set up meetings by using `create_intent` first, then running `get_availability`. This builds a reliable booking flow that asks for confirmation before committing.
- When you connect this MCP through Vinkius, all your scheduling and client data is protected by a zero-trust proxy. Your keys are used in transit but never stored on disk.
- Build multi-step automations: chain this MCP with a messaging MCP to automatically send a confirmation email right after the agent uses `confirm_intent`.

## How It Works

The bottom line is that your AI client handles all communication and data retrieval directly from YouCanBook.me without requiring manual logins or dashboard navigation.

1. Subscribe to this MCP and provide your YouCanBook.me API Key and Account ID.
2. Use any compatible client (like Claude or Cursor) to instruct your agent on the task, such as listing all profiles.
3. The agent executes the command against YourCanBook.me, providing you with real-time data like available time slots or booking records.

## Frequently Asked Questions

**How do I list my YouCanBook.me profiles using the list_profiles tool?**
You simply ask the agent to run `list_profiles`. It reads all active booking pages in your account and gives you a list of available profile IDs and names.

**What is the difference between get_availability and get_booking?**
`get_availability` finds out *if* time slots are open (the potential). `get_booking` retrieves all the specific details about a single appointment that has already been confirmed.

**Can I use create_intent to book something?**
No, `create_intent` only starts the conversation. It generates an intent ID and helps you find potential time slots; you must then confirm those details using a subsequent tool call.

**Does cancel_booking actually notify the attendee?**
Yes. The `cancel_booking` action permanently removes the calendar event and automatically sends notification to the original attendee, keeping everyone in sync.

**How do I check my YouCanBook.me subscription status using the get_account tool?**
The get_account tool retrieves your account details, including your current plan and standing. This is useful for verifying access rights or confirming if you need to upgrade before running other scheduling commands.

**When I use list_bookings, how can I filter the results by booking status?**
You pass a specific status option like 'cancelled', 'upcoming', or 'tentative' when calling this tool. This lets your agent query only the relevant records without needing to manually filter dashboards.

**Does get_booking provide all the custom data entered by an attendee?**
Yes, this tool pulls full details for a specific appointment. It includes both attendee information and any responses submitted through your custom booking forms.

**What does list_team_members tell me about staff assignments?**
It lists every team member assigned to a particular booking page. Your agent uses this data point to confirm which consultants or technicians are available for scheduling purposes.

**Can I cancel a specific booking and notify the attendee via chat?**
Yes. The `cancel_booking` tool allows your AI agent to permanently revoke an appointment using its booking ID. This action automatically removes the event from your calendar and sends a cancellation notice to the attendee.

**How do I check my upcoming appointments for a specific booking page?**
Use the `list_bookings` tool. Provide the unique `profile_id` and set the status to 'upcoming'. Your agent will return a list of all confirmed future appointments for that scheduling page.

**Is it possible to see which staff members are assigned to a booking profile?**
Absolutely. Using the `list_team_members` tool, you can retrieve a list of all staff members linked to a specific profile, showing you who is available to take appointments on that page.