article
README
🚀 Google Calendar MCP 服务器工具说明文档
本工具为 Google Calendar 打造了 MCP(机器对机器协议)接口,借助该接口,你能轻松完成创建、更新、删除事件等操作,还能获取日历列表,甚至支持不重启 Claude 切换 Google 账户,极大提升了使用 Google Calendar 的便捷性。
🚀 快速开始
使用本工具前,请确保拥有有效的 Google Calendar 账户,并配置正确的 API 密钥和授权权限。测试时,可在终端运行以下命令:
npm test
✨ 主要特性
- 多事件操作:支持创建、更新和删除事件,能灵活管理日程安排。
- 日历列表获取:可轻松检索所有可访问的日历。
- 账户切换便捷:新增
authenticate工具,无需重启 Claude 就能切换不同的 Google 账户。 - 重复事件支持:通过
recurrence参数,可直接创建和修改重复事件,方便管理重复性日程。
📦 安装指南
文档未提及具体安装步骤,可参考官方文档进行安装。
💻 使用示例
基础用法
MCP 消息格式
MCP 通信采用 JSON - RPC 协议,以下是具体的请求格式示例:
{
"jsonrpc": "2.0",
"method": "tool.name",
"params": {
"calendarId": "primary", // 日历 ID,默认为 "primary"
"event": { ... }, // 具体事件信息
...
},
"id": 1
}
高级用法
createEvent
- 功能:创建新的日程安排。
- 参数:
calendarId(可选):指定目标日历,默认为"primary"。event:包含事件详细信息的对象,必须包括summary,description,start, 和end字段。
updateEvent
- 功能:更新现有事件的信息。
- 参数:
eventId:需要修改的事件 ID。calendarId(可选):目标日历,默认为"primary"。event:包含要更新字段的对象,未提供的字段将保持原值。
deleteEvent
- 功能:删除指定的日程安排。
- 参数:
eventId:要删除的事件 ID。calendarId(可选):目标日历,默认为"primary"。
getCalendars
- 功能:获取所有可访问的日历列表。
- 返回值:包含日历 ID 和名称的对象数组。
📚 详细文档
版本历史记录
版本 1.0.6 更新内容
- 删除了不必要的授权范围 (
scope) 设置,优化了与 Google Calendar API 的集成。
版本 1.0.5 更新内容
- 新增功能:
- 支持通过
recurrence参数在createEvent和updateEvent中直接创建和修改重复事件。 - 允许用户无需手动设置即可管理重复日程安排。
- 支持通过
版本 1.0.4 更新内容
- 维护版本更新,与最新依赖保持兼容性。
- 没有功能性变化,主要优化内部代码结构。
版本 1.0.3 更新内容
-
新增功能:
- 引入
authenticate工具,支持在运行时重新认证。 - 实现了账户切换功能,无需重启 Claude 即可更改 Google 账户。
- 提供手动认证选项,适用于无法访问 localhost 的环境。
- 增加控制台界面,便于用户输入授权码。
- 引入
-
优化改进:
- 更新 zod 依赖至最新版本(3.24.2)。
- 修复了多个潜在的安全性和性能问题。
版本 1.0.2 更新内容
- 修复了一个可能导致日历访问权限错误的 bug。
贡献指南
- 代码仓库:项目托管在GitHub。
- 提交问题:使用Github Issues报告问题或提出建议。
- 参与开发:欢迎 Fork 仓库并 Pull Request。
测试指南
-
测试要求:
- 确保拥有有效的 Google Calendar 账户。
- 配置正确的 API 密钥和授权权限。
-
测试方法:
npm test
📄 许可证
本项目遵循MIT License协议,源代码可在Github获取。
如有任何问题,请联系支持团队或访问我们的官方文档。
扫码联系在线客服