# Cal.com MCP for AI Agents AI Agent Connect

> Cal.com MCP. Let your AI agent handle all the scheduling heavy lifting. It manages bookings, finds open slots, and handles cancellations without you having to jump between tabs. It connects your Cal.com account to your AI client so you can book meetings or check availability using just plain text.

## Overview
- **Category:** loved-by-devs
- **Price:** Free
- **Endpoint:** https://edge.vinkius.com/vk_preview_83NTFdUSoyILJJcP0suKK2kArirHgkrGf9HvudGP/ai-agent-connect
- **Tags:** meeting-automation, booking-infrastructure, availability-management, scheduling-links, calendar-sync

## Description

Connect your Cal.com account to any AI agent and take full control of your professional scheduling infrastructure and meeting lifecycle through natural conversation. You can stop playing phone tag or manually checking your calendar to see if a 2 PM slot is actually free. Instead of you digging through your dashboard to see who's booked or trying to find a time that works for three different people, you just tell your agent what you need. It handles the boring stuff like creating new bookings, rescheduling a meeting that got moved, or listing your upcoming appointments for the week. You get to stay focused on your actual work while the agent handles the coordination. Because Vinkius makes it so easy to connect these types of tools, you can set this up once and let your agent act as a dedicated scheduling coordinator. It knows your working hours, your event types, and your specific availability rules. You can ask it to find a window for a discovery call or check your profile settings instantly. It's about moving from 'Let me check my calendar and get back to you' to 'My agent just booked that.'

## Tools

### cancel_booking
Remove a meeting from your calendar. This is useful for clearing out conflicts quickly.

### create_new_booking
Schedule a new meeting. Use this to put a new appointment on the books immediately.

### get_booking_details
Get specific info about a meeting. This helps you see who is attending and what the details are.

### get_event_type_details
Get info about a specific booking template. Use this to check the rules for a certain type of meeting.

### get_my_profile
Get your user settings. This lets your agent see your personal profile information.

### get_available_slots
Find free times on your calendar. This is perfect for identifying windows for new meetings.

### list_bookings
List all your scheduled meetings. Use this to get a high-level view of your upcoming day.

### list_event_types
List all your booking templates. This helps your agent see what kinds of meetings you offer.

### list_availability_schedules
List your working hours. This lets your agent know when you are actually available to work.

### list_active_webhooks
Get your event configurations. Use this to see how your calendar is currently set up to react to events.

### reschedule_meeting
Update a booking time. This is the go-to tool for moving a meeting to a new slot.

### test_cal_auth
Check your connection. Use this to make sure your API key is working correctly.

## Prompt Examples

**Prompt:** 
```
List my upcoming meetings for the next three days.
```

**Response:** 
```
### Your Upcoming Schedule

| Meeting | Time | Attendee |
| :--- | :--- | :--- |
| **Strategy Session** | Tomorrow, 2:00 PM | Sarah Jenkins |
| **Product Sync** | Tomorrow, 4:30 PM | Engineering Team |
| **Client Onboarding** | Wednesday, 10:00 AM | Mark Ross |

Would you like me to send a summary of any of these to you?
```

**Prompt:** 
```
Find a slot for a 'Strategy Session' on Tuesday afternoon.
```

**Response:** 
```
Scanning your availability for Tuesday afternoon...

I found 3 open slots for your **Strategy Session** template:
* 1:30 PM
* 3:00 PM
* 4:15 PM

Shall I book one of these for you?
```

**Prompt:** 
```
Move my 3 PM meeting today to tomorrow at 10 AM.
```

**Response:** 
```
✅ **Booking Updated**

I've successfully moved your 3:00 PM meeting to tomorrow at 10:00 AM. A notification has been sent to the attendees to update their calendars.
```

## Capabilities

### Create new meeting bookings
Your agent puts a new appointment on the calendar using your preferred templates.

### Find open time slots
The agent identifies free windows based on your specific working hours and rules.

### Cancel existing appointments
Remove meetings from your schedule instantly through natural language commands.

### Update meeting times
Move an existing booking to a new time when plans change.

### List upcoming meetings
Get a high-level summary of your scheduled day or week.

### Manage booking templates
View and monitor the different types of meetings you offer to clients.

### Monitor working hours
Keep your agent informed of your actual availability and schedule rules.

## Use Cases

### Booking a Discovery Call
A sales rep asks the agent to find a time for a 'Discovery Call' tomorrow morning. The agent uses `get_available_slots` and then `create_new_booking` to confirm the time.

### Handling a Conflict
A founder realizes a meeting overlaps. They tell the agent to move it. The agent uses `reschedule_meeting` to find a new slot and update the booking.

### Daily Briefing
An executive assistant asks for a summary of the day's meetings. The agent uses `list_bookings` and `get_booking_details` to provide a concise rundown.

### Template Audit
A manager wants to see what meeting types are active. The agent uses `list_event_types` to show all current templates and their details.

## Benefits

- Stop the manual calendar checking. Use `get_available_slots` to let your agent find perfect windows for clients instantly.
- Handle rescheduling in seconds. Use `reschedule_meeting` to move appointments without opening a browser tab.
- Automate booking creation. Use `create_new_booking` to put meetings on the calendar via natural language.
- Get instant visibility. Use `list_bookings` to see your entire week's schedule in one quick summary.
- Keep templates updated. Use `list_event_types` to ensure your agent always knows your current booking options.
- Manage availability easily. Use `list_availability_schedules` to keep your working hours synced across all your tools.

## How It Works

The bottom line is your AI agent becomes a 24/7 scheduling coordinator that handles the back-and-forth for you.

1. Subscribe to this Connector on Vinkius.
2. Grab your API key from your Cal.com dashboard under Developer settings.
3. Connect your key to your AI client to start managing your schedule.

## Frequently Asked Questions

**Can the Cal.com MCP book meetings for me?**
Yes, it lets your AI agent create new bookings directly on your Cal.com account. You can just tell your agent who you want to meet with and when.

**How does Cal.com MCP handle my availability?**
It reads your current working hours and schedules so the agent only suggests times you are actually free. It stays synced with your real-time calendar.

**Can I use Cal.com MCP to move existing appointments?**
Yes, you can ask your agent to reschedule a specific meeting to a new time or day. It handles the update and notifies the other person for you.

**Does Cal.com MCP work with my existing booking templates?**
It can see and manage all your current event types and templates. This ensures that when your agent books a meeting, it follows your specific rules.

**Is Cal.com MCP good for sales teams?**
It's perfect for sales reps who need to book discovery calls quickly without manual calendar checks. It helps you move prospects through the funnel faster.

**How do I connect Cal.com MCP to my AI client?**
You just need your API key from your Cal.com dashboard under the Developer settings. Once you have that, you can link it to your AI client in seconds.

**How do I find my Cal.com API Key?**
Log in to your account, navigate to **Settings** > **Developer** > **API Keys**, and create a new key for your integration.

**Can I check for available slots via AI?**
Yes! The `get_available_slots` tool allows your agent to find open times for specific event types and date ranges programmatically.

**How do I reschedule a booking?**
Use the `reschedule_meeting` tool and provide the booking ID along with the new start and end times in JSON format.