macos-native-schedule-manager
Interface with the native macOS calendar subsystem to perform CRUD operations on appointments and events via a standardized API endpoint.
Author

shadowfax92
Quick Info
Actions
Tags
MCP Interface for macOS Scheduling Data
This Model Context Protocol (MCP) server facilitates programmatic interaction with the Apple Calendar framework residing on macOS hosts. It offers a unified gateway for Large Language Models (LLMs) to manipulate personal and shared calendar entries.
System Requirements
- Operating System: Requires macOS version 12.0 (Monterey) or newer.
- Runtime Environment: Node.js environment, version 16.0 or higher.
- Auxiliary Service: A locally deployed intermediary service, such as the Calendar API Bridge, must be operational.
Setup Procedure
- Acquire the source code repository via cloning.
- Install requisite project dependencies:
bash npm install - Compile the TypeScript source code into executable JavaScript:
bash npm run build
Operational Execution
- Confirm the auxiliary Calendar API Bridge is listening, typically on TCP port 8080.
- Initiate the MCP service:
bash npm start
Exposed Functionality (Tools)
The running MCP server exposes the following callable functions for AI agents:
getCalendars: Retrieves a manifest of all accessible calendar sets.getCalendarEvents: Fetches scheduled items belonging to a specified calendar identifier.createCalendarEvent: Inserts a novel time-bound entry into a designated calendar.updateCalendarEvent: Modifies the attributes of an existing scheduled item.deleteCalendarEvent: Removes a specific entry from the calendar record.
Time Representation Standards
When specifying start or end times for event creation or modification, the following date/time string formats are acceptable by the backend bridge:
-
ISO 8601 (Recommended): Including milliseconds and explicit UTC designation.
2025-03-09T10:00:00.000Z -
Simplified ISO 8601: Omitting sub-second precision.
2025-03-09T10:00:00 -
ISO Variant: Utilizing a space separator instead of the 'T' designator.
2025-03-09 10:00:00 -
Slash Separator Format: Using forward slashes for date components.
2025/03/09 10:00:00
The underlying Calendar API Bridge handles the normalization of these inputs automatically.
Iterative Development Mode
To launch the service with watch mode for rapid iteration:
npm run dev
Licensing
This component is distributed under the MIT License.
