项目简介
本项目提供了一个基于 Model Context Protocol (MCP) 的服务器实现,旨在让支持 MCP 协议的大语言模型 (LLM) 客户端能够与用户的 Google Calendar 进行交互,实现日历事件的查询、创建、更新和删除。它通过标准化的 MCP 接口暴露 Google Calendar 的功能,使得 LLM 可以作为智能助手帮助用户管理日常日程。
主要功能点
- 查询日历事件: 根据日期范围、关键词(如摘要、描述、地点)等条件搜索并列出日历中的现有事件。
- 创建新事件: 根据用户提供的日期、时间、摘要、描述、地点和时区等信息,在 Google Calendar 中创建新的日历事件。
- 删除日历事件: 根据事件的唯一标识符 (ID) 删除指定的日历事件。
- 更新现有事件: 根据事件 ID 修改现有日历事件的部分或全部信息,如时间、标题、描述或地点。
安装步骤
- 安装 UV 包管理器: 按照 UV 官方文档的指引安装 'uv',这是一个快速的 Python 包管理器。
- 克隆仓库并设置环境:
- 使用 Git 克隆本项目仓库到本地:'git clone https://github.com/rsc1102/Google_Calendar_MCP.git'
- 进入项目目录:'cd Google_Calendar_MCP'
- 使用 UV 安装项目依赖:'uv sync'
- 获取 Google Cloud 凭据:
- 访问 Google Cloud Console 创建或选择一个项目。
- 启用 Google Calendar API。
- 导航到 "APIs & Services" > "Credentials"。
- 点击 "Create Credentials",选择 "OAuth Client ID"。
- 应用类型选择 Desktop app。
- 下载生成的 'credentials.json' 文件。
- 将下载的 'credentials.json' 文件放置在本项目的 'Google_Calendar_MCP' 目录下。
服务器配置 (供 MCP 客户端使用)
要让 MCP 客户端(例如 Anthropic Claude Desktop)连接并使用此 Google Calendar 服务器,您需要在客户端的配置中添加服务器信息。配置通常是一个 JSON 格式的文件,您需要指定服务器的名称以及启动服务器的命令行指令。
典型的配置项包括:
- 服务器名称 (server name): 例如设置为 "calendar"。这是客户端用来引用此服务器的名称。
- 命令 (command): 启动 MCP 服务器脚本的可执行文件路径。在本例中,通常是安装了 uv 的 Python 环境中的 'uv' 命令。
- 参数 (args): 传递给命令的参数。对于本项目,这些参数会告诉 'uv' 在哪个目录下以及运行哪个脚本作为 MCP 服务器。您需要提供本项目文件夹的绝对路径,并指定运行 'calendar_mcp.py' 脚本。
请注意: 具体的配置方式和文件位置取决于您使用的 MCP 客户端。请查阅您的 MCP 客户端文档,找到配置 MCP 服务器的部分,并根据上述信息填写。您需要将示例配置中的 '/ABSOLUTE/PATH/TO/PARENT/FOLDER/Google_Calendar_MCP' 替换为您实际的项目路径。
基本使用方法
- 完成上述安装和 Google Cloud 凭据设置。
- 在您的 MCP 客户端中,按照其文档指引配置并启用此 Google Calendar MCP 服务器。
- 首次连接时,系统会引导您进行 Google 认证,授权此服务器访问您的 Google Calendar。请按提示完成授权流程。
- 在客户端中创建一个新的项目或使用现有项目。
- 根据您的 MCP 客户端要求,可能需要在项目设置中指定您的本地时区(使用 IANA 时区格式,例如 "America/New_York"),以便服务器正确处理时间信息。
- 开始与 LLM 交互,通过自然语言发出管理 Google Calendar 事件的指令,LLM 将通过配置好的 MCP 服务器调用相应的工具功能。
信息
分类
生产力应用