使用说明
谷歌日历MCP服务器
一个MCP(模型上下文协议)服务器,用于管理谷歌日历提醒,支持基于时间和位置的触发器。
特性
- 基于时间的提醒:“明天早上9点提醒我给妈妈打电话”
- 基于位置的提醒:“当我在特拉维夫哈沙隆街附近时,提醒我去X店”
- 列出提醒:查看即将到来的提醒
- 删除提醒:按ID删除提醒
先决条件
- Python 3.11+
- 紫外线 包管理器
- 启用日历API的谷歌云项目
设置
1.安装依赖项
uv sync
2.设置Google Cloud凭据
- 首选 谷歌云控制台
- 创建新项目或选择现有项目
- 启用 谷歌日历API:
- 转到“API和服务”>“库”
- 搜索“Google日历API”
- 点击“启用”
- 创建OAuth 2.0凭据:
- 转到“API和服务”>“凭据”
- 点击“创建凭据”>“OAuth客户端ID”
- 选择“桌面应用程序”作为应用程序类型
- 下载凭据JSON文件
- 保存凭据文件:
mkdir -p ~/.config/gcalendar-mcp mv ~/Downloads/client_secret_*.json ~/.config/gcalendar-mcp/credentials.json
3.首次认证
运行服务器一次以进行身份验证:
uv run gcalendar-mcp
这将为Google OAuth打开一个浏览器窗口。授权后,您的凭据将被保存。
使用Claude代码
添加到您的Claude Code MCP配置中(~/.claude/claude_desktop_config.json):
{
"mcpServers": {
"gcalendar": {
"command": "uv",
"args": ["run", "--directory", "/path/to/gcalendar_mcp", "gcalendar-mcp"]
}
}
}
可用工具
create_time_reminder
创建基于时间的提醒。
参数:
title(必填):需要提醒什么time(必填):何时提醒(支持自然语言)description(可选):附加注释
示例:
- “明天9点提醒我给妈妈打电话”
- “2小时后提醒我休息一下”
- “今天下午3点提醒我参加会议”
create_location_reminder
创建基于位置的提醒。
参数:
title(必填):需要提醒什么location(必填):地点/地址description(可选):附加注释date(可选):提醒日期
示例:
- “提醒我在杂货店附近买牛奶”
- “当我在特拉维夫哈沙隆街附近时,提醒我去X店”
注: 谷歌日历本身不支持基于位置的触发器。这将创建一个标记了位置的事件。对于自动位置通知,请使用谷歌地图或专用的位置提醒应用程序。
list_reminders
列出日历中即将到来的提醒。
参数:
max_results(可选):最大结果数(默认值:10)
删除提醒器
按事件ID删除提醒。
参数:
event_id(必填):要删除的事件的ID
配置
您可以通过设置环境变量来自定义凭据目录:
export GCALENDAR_MCP_CONFIG_DIR=/path/to/custom/config
发展
# Install dev dependencies
uv sync --dev
# Run tests
uv run pytest
许可证
麻省理工学院