AI-native scheduling: check availability, book meetings, cancel and reschedule via MCP
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
π‘ Paste into ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)
Give your AI agents the power to schedule meetings. The official Model Context Protocol server for Astrocal β the API-first scheduling platform built for developers and AI agents.
Works with Claude Desktop, Cursor, Windsurf, and any MCP-compatible client. Your AI assistant can check availability, book meetings, cancel, reschedule, and manage waitlists β all through natural conversation.
Get your API key | Documentation | API Reference
ac_test_* keys. No emails sent, no calendar events created, no charges made.Add to your claude_desktop_config.json:
Restart Claude Desktop and the scheduling tools will be available immediately.
Install globally:
Run:
| Variable | Required | Description |
|---|---|---|
ASTROCAL_API_KEY | Yes | Your Astrocal API key (get one free) |
ASTROCAL_API_URL | No | API base URL (default: https://api.astrocal.dev) |
ASTROCAL_DEFAULT_EVENT_TYPE_ID | No | Default event type ID β your agent won't need to specify it on every call |
check_availabilityCheck available time slots for booking.
event_type_id (string, optional) β Event type to check. Optional if ASTROCAL_DEFAULT_EVENT_TYPE_ID is set.start_date (string, required) β Start date in ISO 8601 format (e.g., 2026-03-15)end_date (string, required) β End date in ISO 8601 format (e.g., 2026-03-22)timezone (string, optional) β IANA timezone (e.g., America/New_York). Defaults to UTC.create_bookingBook a meeting at a specific time.
event_type_id (string, optional) β Event type to book. Optional if default is set.start_time (string, required) β ISO 8601 datetime (e.g., 2026-03-15T14:00:00Z)invitee_name (string, required) β Full name of the person bookinginvitee_email (string, required) β Email address for calendar invitationinvitee_timezone (string, optional) β IANA timezone. Defaults to UTC.notes (string, optional) β Meeting notes (max 1000 characters)cancel_bookingCancel an existing booking. The invitee receives a cancellation email automatically.
booking_id (string, required) β ID of the booking to cancelreason (string, optional) β Cancellation reason (max 500 characters)reschedule_bookingReschedule a booking to a new time. Check availability first.
booking_id (string, required) β ID of the booking to reschedulenew_start_time (string, required) β New time in ISO 8601 formatreason (string, optional) β Reason for rescheduling (max 500 characters)list_bookingsList bookings with optional filters.
status (string, optional) β Filter: confirmed, cancelled, or pending_paymentlimit (number, optional) β Max results (default: 10, max: 100)event_type_id (string, optional) β Filter by event typelist_event_typesList available event types that can be booked. No input required.
join_waitlistJoin the waitlist when all slots are full.
event_type_id (string, required) β Event type to join the waitlist forname (string, required) β Full nameemail (string, required) β Email addresspreferred_times (string, optional) β Preferred time ranges or notescheck_waitlistCheck your position on a waitlist.
waitlist_entry_id (string, required) β Waitlist entry ID returned from join_waitlistUser: "What meetings can I book?"
Agent: calls
list_event_typesβ "You have two event types: a 30-minute consultation (free) and a 1-hour strategy session ($50)."User: "Check if next Tuesday at 2pm is free for a consultation"
Agent: calls
check_availabilityβ "Tuesday at 2pm is available."User: "Book it for jane@example.com"
Agent: calls
create_bookingβ "Done! Meeting confirmed for Tuesday, March 17 at 2:00 PM UTC with Jane. A calendar invitation has been sent."User: "Actually, move it to 3pm"
Agent: calls
reschedule_bookingβ "Rescheduled to 3:00 PM. Jane has been notified."
This MCP server is one of several ways to integrate with Astrocal:
@astrocal/react) β Typed hooks, provider, and booking widget for React apps@astrocal/widget) β Drop-in booking UI for any websiteCreate a free account to get started.
MIT
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/mcp-server-50)<a href="https://allmcps.com/mcp/mcp-server-50"><img src="https://allmcps.com/api/badge/mcp-server-50?style=directory" alt="Mcp Server on AllMCPs" /></a>