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.
We haven't yet run this listing's install command through our automated sandbox check. This isn't a red flag β we're steadily working through the catalog.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Inspect callable tools, capabilities, and parameters exposed to AI agents by Astrocal Dev MCP.
check_availabilityCheck available time slots for booking.
create_bookingBook a meeting at a specific time.
cancel_bookingCancel an existing booking. The invitee receives a cancellation email automatically.
reschedule_bookingReschedule a booking to a new time. Check availability first.
list_bookingsList bookings with optional filters.
list_event_typesList available event types that can be booked. No input required.
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
Factual signals from GitHub, npm, and our automated checks β not a rating.
No reviews yet β be the first to share how this listing worked for you.
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="Astrocal Dev MCP on AllMCPs" /></a>