🚀 Google Calendar MCP Server
这是一个基于模型上下文协议(MCP)的服务器,它与谷歌日历 API 相连,能够以自然语言回答有关日程安排和活动的问题。
✨ 主要特性
- 自然语言查询:你可以提出如“我今天的日程安排是什么?”或“我明天有会议吗?”这类问题。
- 灵活的时间范围:可查询特定日期、日期范围或未来时间段的活动。
- 可用性检查:检查特定时间段是否空闲或存在冲突。
- 时区支持:处理不同时区,确保日程安排准确无误。
- 结构化响应:获取格式规范、易于阅读的日历信息。
📦 安装指南
1. 谷歌日历 API 设置
选项 A:服务账户(推荐 - 无需 OAuth 重定向)
- 访问 谷歌云控制台。
- 创建一个新项目或选择现有项目。
- 启用谷歌日历 API。
- 进入“API 和服务”>“凭据”。
- 点击“创建凭据”>“服务账户”。
- 创建服务账户并下载 JSON 密钥文件。
- 重要提示:将你的谷歌日历共享给服务账户的电子邮件地址(在 JSON 文件中以
client_email
形式存在)。
选项 B:OAuth 2.0(传统方法)
- 访问 谷歌云控制台。
- 创建一个新项目或选择现有项目。
- 启用谷歌日历 API。
- 为桌面应用程序创建凭据(OAuth 2.0 客户端 ID)。
- 下载凭据 JSON 文件。
2. 配置
服务账户配置:
- 将服务账户的 JSON 文件复制为
service-account-key.json
,或者
- 设置为环境变量:
export GOOGLE_SERVICE_ACCOUNT_KEY='{"type": "service_account", ...}'
OAuth 2.0 配置:
- 将下载的凭据文件复制为
credentials.json
,或者
- 设置为环境变量:
export GOOGLE_CREDENTIALS_JSON='{"installed": {...}}'
3. 安装依赖
安装所需的依赖项:
pip install google-auth google-auth-oauthlib google-api-python-client mcp python-dateutil pytz