使用说明
gcal gmail mcp
一个模型上下文协议(MCP)服务器,为克劳德等人工智能助理提供Gmail、谷歌日历、谷歌文档、谷歌会议、谷歌任务、谷歌表格和Trello访问权限。
特性
Gmail
- 发送和起草电子邮件(带附件、HTML、CC/BCC)
- 阅读和搜索电子邮件
- 管理标签(创建、更新、删除)
- 创建电子邮件过滤器(带模板)
- 批量操作修改/删除多封电子邮件
- 下载附件
谷歌日历
- 列出、创建、更新和删除事件
- 从自然语言快速添加事件
- 回应活动邀请(接受/拒绝/暂定)
- 列出日历并检查忙/闲状态
- 支持定期活动、与会者和Google Meet链接
谷歌文件
- 获取和添加会议笔记和议程项目
- 创建电子邮件审阅文档
谷歌见面会
- 列出会议记录
- 获取成绩单和成绩单条目
工作表
- 任务列表和任务的完整CRUD
- 移动、重新排序和清除已完成的任务
谷歌表格
- 读取和写入单元格值
- 添加行,创建电子表格和表格
特雷洛
- 板、列表、卡片、标签、检查表
- 自定义字段、注释、成员分配
快速安装
curl -fsSL https://raw.githubusercontent.com/hansd/gcal-gmail-mcp/main/install.sh | bash
这将:
- 下载最新的JAR文件至
~/.gcal-gmail-mcp/ - 检查Java 21+
- 运行身份验证(如果OAuth凭据已就绪)
- 自动配置Claude代码
跑步前,得到 gcp-oauth.keys.json 从管理员处创建文件并将其放置在:
~/.gcal-gmail-mcp/gcp-oauth.keys.json
更新中
再次运行相同的安装命令以获取最新版本。
手动设置
Click to expand manual installation steps
先决条件
- Java 21或更高版本(下载)
- OAuth凭据文件(
gcp-oauth.keys.json)来自您的管理员
一步一步
-
下载JAR文件:
mkdir -p ~/.gcal-gmail-mcp curl -L -o ~/.gcal-gmail-mcp/gcal-gmail-mcp.jar \ $(curl -s https://api.github.com/repos/hansd/gcal-gmail-mcp/releases/latest \ | grep browser_download_url | cut -d '"' -f 4) -
放置OAuth凭据:
cp /path/to/gcp-oauth.keys.json ~/.gcal-gmail-mcp/gcp-oauth.keys.json -
身份验证:
java -jar ~/.gcal-gmail-mcp/gcal-gmail-mcp.jar auth -
配置克劳德代码:
claude mcp add gmail-kotlin --scope user -- java -jar ~/.gcal-gmail-mcp/gcal-gmail-mcp.jar
从源头构建
Click to expand (for developers only)
git clone https://github.com/hansd/gcal-gmail-mcp.git
cd gcal-gmail-mcp
./gradlew install
环境变量
GOOGLE_OAUTH_PATH-OAuth客户端凭据JSON路径(默认值:~/.gcal-gmail-mcp/gcp-oauth.keys.json)GMAIL_CREDENTIALS_PATH-存储用户凭据的路径(默认值:~/.gcal-gmail-mcp/credentials.json)
可用工具
Gmail(19个工具)
| 工具 | 说明 |
|---|---|
send_email |
发送新电子邮件 |
draft_email |
创建电子邮件草稿 |
read_email |
按ID阅读特定电子邮件 |
search_emails |
使用Gmail查询语法搜索电子邮件 |
modify_email |
在电子邮件中添加/删除标签 |
delete_email |
永久删除电子邮件 |
list_email_labels |
列出所有Gmail标签 |
batch_modify_emails |
修改多封电子邮件上的标签 |
batch_delete_emails |
删除多封电子邮件 |
create_label |
创建新标签 |
update_label |
更新标签 |
delete_label |
删除标签 |
get_or_create_label |
获取现有标签或创建它 |
create_filter |
创建电子邮件筛选器 |
list_filters |
列出所有筛选器 |
get_filter |
获取过滤器详细信息 |
delete_filter |
删除筛选器 |
create_filter_from_template |
从预定义模板创建筛选器 |
download_attachment |
下载电子邮件附件 |
日历(11个工具)
| 工具 | 说明 |
|---|---|
list_calendar_events |
使用可选筛选器列出事件 |
get_calendar_event |
获取活动详细信息 |
create_calendar_event |
创建新事件 |
update_calendar_event |
更新现有事件 |
delete_calendar_event |
删除事件 |
quick_add_calendar_event |
从自然语言创建事件 |
respond_to_calendar_event |
接受/拒绝/初步回应 |
list_calendars |
列出可访问的日历 |
get_free_busy |
检查可用性 |
list_event_instances |
列出重复事件的实例 |
list_event_attachments |
列出事件附件 |
文档(5个工具)
| 工具 | 说明 |
|---|---|
get_meeting_notes |
从日历事件中获取会议笔记 |
get_agenda_items |
从会议笔记中获取议程项目 |
add_agenda_item |
在会议笔记中添加议程项目 |
create_email_review_doc |
创建Google文档以进行电子邮件审核 |
read_doc_content |
阅读谷歌文档的全文内容 |
满足(3个工具)
| 工具 | 说明 |
|---|---|
list_conference_records |
列出最近的会议记录 |
get_transcript |
获取成绩单元数据和文档ID |
list_transcript_entries |
列出原始成绩单条目 |
任务(10个工具)
| 工具 | 说明 |
|---|---|
list_task_lists |
列出所有任务列表 |
create_task_list |
创建新任务列表 |
delete_task_list |
删除任务列表 |
list_tasks |
在任务列表中列出任务 |
get_task |
获取特定任务 |
create_task |
创建新任务 |
update_task |
更新任务 |
delete_task |
删除任务 |
move_task |
移动/重新排序任务 |
clear_completed_tasks |
从列表中清除已完成的任务 |
表格(7个工具)
| 工具 | 说明 |
|---|---|
get_spreadsheet |
获取电子表格元数据 |
read_sheet_values |
从某个范围读取单元格值 |
read_sheet_multiple_ranges |
从多个范围读取 |
update_sheet_values |
更新单元格值 |
append_sheet_values |
在现有数据后追加行 |
create_spreadsheet |
创建新的电子表格 |
create_sheet |
添加新工作表/选项卡 |
Trello(25工具)
| 工具 | 说明 |
|---|---|
list_trello_boards |
列表板 |
get_trello_board |
获取电路板详细信息 |
create_trello_board |
创建一个板 |
search_trello |
搜索板和卡片 |
list_trello_lists |
在板上列出列表 |
create_trello_list |
创建列表 |
update_trello_list |
更新列表 |
archive_trello_list |
存档列表 |
list_trello_cards |
列出卡片 |
get_trello_card |
获取卡详细信息 |
create_trello_card |
创建卡片 |
update_trello_card |
更新卡片 |
move_trello_card |
移动卡片 |
archive_trello_card |
将卡片存档 |
add_trello_card_comment |
添加评论 |
list_trello_labels |
列出标签 |
create_trello_label |
创建标签 |
update_trello_label |
更新标签 |
delete_trello_label |
删除标签 |
list_trello_board_members |
列出董事会成员 |
assign_trello_card_members |
为卡片分配成员 |
create_trello_checklist |
创建检查表 |
get_trello_checklist |
获取检查表详细信息 |
add_trello_checklist_item |
添加检查表项 |
update_trello_checklist_item |
更新检查表项目 |
OAuth范围
gmail.modify-阅读、发送和管理电子邮件gmail.settings.basic-管理过滤器和标签calendar-完全日历访问documents-创建和编辑谷歌文档meetings.space.readonly-阅读会议记录和成绩单tasks-完整的谷歌任务访问权限spreadsheets-读写谷歌表格
备注
- 这
From标头会自动设置为经过身份验证的Gmail地址 - UI启动的进程(如MCP客户端)可能不会继承shell环境变量-set
GOOGLE_OAUTH_PATH如果需要,在MCP服务器配置中明确显示 - Trello集成需要一个单独的API密钥和令牌(通过
TRELLO_API_KEY和TRELLO_TOKEN环境变量)
许可证
麻省理工学院
