Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Add a link to an MCP Apple Calendar server.
Server Details
Motivation and Context
This server allows users to interact with their Apple calendar on MacOS via natural language. It supports creating, updating and reading events across different calendars. It also supports advanced features such as creating recurring events, moving events between calendars, creating events with reminders etc.
I haven't seen similar functionality, specifically for Apple calendar, hence the creation of this server.
How Has This Been Tested?
Integration tests are provided in the server repo which test all calendar CRUD operations.
Extensive testing via manual prompt execution using Claude for desktop as an MCP client.
Extensive manual tool invocation via the MCP inspector tool.
Breaking Changes
No breaking changes expected, but user's will need to update their MCP client configuration to connect the mcp-ical (Apple Calendar) server.
Types of changes
Checklist
Additional context
Use of this MCP server will trigger a MacOS prompt asking user's to grant access to their calendar. This means that if Claude for Desktop is used as the MCP client, it must be launched via the terminal - this has been properly document in the server's README.