Calendar MCP
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
A Deno monorepo containing packages for macOS Calendar access:
- **@wyattjoh/calendar** - Core library for read-only macOS Calendar database access
- **@wyattjoh/calendar-mcp** - Model Context Protocol (MCP) server for LLM integration
Features
- Search calendar events by title/summary
- Get recent past events
- Get upcoming events
- Retrieve events within date ranges
- Get today's events with conflict detection
- Get detailed event information including location, URL, and recurrence
- Filter rescheduled events
Requirements
- macOS (Calendar is only available on macOS)
- Deno 2.x or later
- Read access to ~/Library/Calendars/Calendar.sqlitedb
Packages
@wyattjoh/calendar
Core library for accessing Calendar data:
See full documentation
@wyattjoh/calendar-mcp
MCP server for LLM integration:
For Claude Desktop app integration, add this to your claude_desktop_config.json:
Option 2: From Source
1. Clone this repository
2. Run the server:
Available Tools
1. **get-recent-events** - Get recent past calendar events
- limit (optional): Number of events (1-100, default: 10)
- includeRescheduled (optional): Include original rescheduled events (default: false)
2. **get-upcoming-events** - Get upcoming calendar events
- limit (optional): Number of events (1-100, default: 10)
- includeRescheduled (optional): Include original rescheduled events (default: false)
3. **get-events-by-date-range** - Get events within a date range
- startDate (required): Start date in ISO format (e.g., "2024-01-01")
- endDate (required): End date in ISO format (e.g., "2024-01-31")
- includeRescheduled (optional): Include original rescheduled events (default: false)
4. **search-events** - Search for events by title/summary
- query (required): Search query for event titles
- limit (optional): Maximum results (1-100, default: 20)
- timeRange (optional): "all", "past", or "future" (default: "all")
- includeRescheduled (optional): Include original rescheduled events (default: false)
5. **get-todays-events** - Get all events scheduled for today
- includeRescheduled (optional): Include original rescheduled events (default: false)
6. **get-event-details** - Get detailed information about a specific event
- eventId (required): The ROWID of the event