SuperAPI AI 工具集

calendar-mcp

calendar-mcp 是一个用于访问 macOS 日历事件的 MCP 服务器,由 wyattjoh 开发并开源在 GitHub 上。该项目属于 Deno 单仓库(monorepo),包含两个核心包:@wyattjoh/calendar 是用于只读访问 macOS 日历数据库的核心库,@wyattjoh/calendar-mcp 则是面向 LLM 集成的 Model Context Protocol(MCP)服务器。它可以让 AI 助手(如 Claude Desktop)读取本地日历数据,支持搜索事件、获取近期与即将到来的事件、按日期范围检索、获取今日事件及冲突检测、查看事件详情以及过滤重新安排的事件。项目要求 macOS 系统、Deno 2.x 或更高版本,并需要拥有 ~/Library/Calendars/Calendar.sqlitedb 的读取权限。所有操作均为只读,无法创建、修改或删除事件,且仅访问本地数据。

访问官网

工具介绍

calendar-mcp 是一个 Deno 单仓库项目,提供对 macOS 日历(Calendar)的访问能力,主要面向 LLM 集成场景。仓库地址为 https://github.com/wyattjoh/calendar-mcp。

项目包含两个包:

  1. @wyattjoh/calendar:用于只读访问 macOS 日历数据库的核心库。
  2. @wyattjoh/calendar-mcp:用于 LLM 集成的 Model Context Protocol(MCP)服务器。

主要能力(MCP 服务器提供的工具):

  • get-recent-events:获取近期过去的日历事件。可选参数 limit(事件数量,1-100,默认 10)、includeRescheduled(是否包含原始重新安排的事件,默认 false)。
  • get-upcoming-events:获取即将到来的日历事件。可选参数同上 limit 和 includeRescheduled。
  • get-events-by-date-range:获取指定日期范围内的事件。必需参数 startDate(ISO 格式起始日期,例如 "2024-01-01")、endDate(ISO 格式结束日期,例如 "2024-01-31");可选参数 includeRescheduled。
  • search-events:按标题/摘要搜索事件。必需参数 query(搜索查询);可选参数 limit(最大结果数,1-100,默认 20)、timeRange("all"、"past" 或 "future",默认 "all")、includeRescheduled。
  • get-todays-events:获取今天安排的所有事件,支持冲突检测。可选参数 includeRescheduled。
  • get-event-details:获取特定事件的详细信息,包括地点、URL 和重复规则。必需参数 eventId(事件的 ROWID)。

使用方式:

  • 环境要求:macOS(Calendar 仅在 macOS 上可用)、Deno 2.x 或更高版本、对 ~/Library/Calendars/Calendar.sqlitedb 的读取权限。
  • 与 Claude Desktop 应用集成时,可将配置添加到 claude_desktop_config.json。
  • 从源码运行:克隆仓库后,进入 packages/calendar-mcp 目录,执行 deno run --allow-read --allow-env --allow-ffi --allow-sys mod.ts,或使用任务 deno task dev。

限制:

  • 服务器以只读方式访问日历数据库,无法创建、修改或删除任何事件。
  • 仅访问本地数据。
  • 仅支持 macOS 系统。
  • 使用 Deno 单仓库结构,根目录命令会影响所有包。

关于响应格式和详细事件字段的更多信息,资料中暂未提供具体细节。