关于 [WIP] Programmable Email
[WIP] Programmable Email 是一款实验性 MCP 服务,通过本地 OAuth 令牌将 Claude 等 MCP 客户端连接到 Gmail。目前仅支持部分 Gmail 搜索功能,发送邮件仍属后续计划。
主要功能
- 01使用本地 OAuth 令牌连接 Gmail
- 02支持部分 Gmail 邮件搜索
- 03以 Docker 镜像运行
适用场景
- 01通过 MCP 客户端检索近期未读邮件
- 02试验从 Claude 访问 Gmail
MCP 相关
通过 MCP 向 Claude 等客户端提供 Gmail 访问能力。使用 Claude 时,获取的邮件会发送到 Claude 的服务器。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
【进行中】可编程电子邮件
用于将 Claude 与 Gmail 连接的 MCP 服务
此服务使用 Gmail 的本地 OAuth 令牌,将 Claude 或任何 MCP 客户端与 Gmail 连接。 此服务旨在用于实验和测试。请注意,获取的任何电子邮件都会发送到 Claude 的服务器。
前提条件
- Docker
- Mac 版 Claude Desktop
安装
1. Gmail OAuth 凭据
首先,按照此指南生成个人 OAuth 令牌。创建用作服务器端应用的 OAuth 客户端 ID 凭据。
你需要在根目录中准备代表 Google OAuth 令牌的 credentials.json,以及 token.json。首次使用 Google OAuth 凭据时,会自动生成 token.json。
2. 运行 docker build
运行 docker build -t programmable-email . 构建镜像。
运行 docker run -i --rm programmable-email,确认其可以正常运行。
3. 使用 MCP 服务配置 Claude
进入存放 MCP 服务配置的目录:cd ~/Library/Application\ Support/Claude
按以下内容编辑 claude_desktop_config.json:
{
"mcpServers": {
"programmable-email": {
"command": "docker",
"args": ["run", "-i", "--rm", "programmable-email"]
}
}
}
4. 打开(或重启)Claude
5. 让 Claude 获取最近的未读电子邮件。
TODO
- 完成 Gmail 读取功能(目前仅支持部分可用的搜索功能,参见 index.ts)
- 将 Gmail 发送功能实现为 MCP 工具(参见
gmail_api.ts了解功能) - 增加更多测试
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。