
Inbox Zero AI MCP
一个 MCP 可以帮助你管理你的电子邮件。例如,它可以识别哪些邮件需要回复或跟进。 它提供的功能超越了基本的 Gmail 功能。
elie222
README
<p align="center"> <a href="https://www.getinboxzero.com"> <h1 align="center">Inbox Zero - 你的 AI 邮件助手</h1> </a> <p align="center"> 开源邮件应用,助你快速实现 Inbox Zero。 <br /> <a href="https://www.getinboxzero.com">网站</a> · <a href="https://www.getinboxzero.com/discord">Discord</a> · <a href="https://github.com/elie222/inbox-zero/issues">问题</a> </p> </p>
关于
Inbox Zero 由两部分组成:
- 一个 AI 邮件助手,帮助你减少在邮件上花费的时间。
- 开源 AI 邮件客户端。
如果你想为项目做贡献,邮件客户端是最好的选择。
感谢 Vercel 赞助 Inbox Zero,以支持开源软件。
功能
- AI 个人助理: 根据纯文本提示文件为你管理邮件。它可以代表你执行任何人工助理可以执行的操作(起草回复、标记标签、存档、回复、转发、标记为垃圾邮件,甚至调用 Webhook)。
- Reply Zero: 跟踪需要你回复的邮件和等待回复的邮件。
- 智能分类: 对所有给你发过邮件的人进行分类。
- 批量取消订阅: 一键快速取消订阅你从未阅读过的邮件。
- 拦截垃圾邮件: 自动拦截垃圾邮件。
- 邮件分析: 通过每日、每周和每月统计数据跟踪你的邮件活动。
在我们的 文档 中了解更多信息。
功能截图
![]() |
![]() |
---|---|
AI 助手 | Reply Zero |
![]() |
![]() |
Gmail 客户端 | 批量取消订阅 |
演示视频
构建于
功能请求
要请求功能,请打开一个 GitHub issue。如果你没有 GitHub 帐户,你可以在 这里 请求功能。或者加入我们的 Discord。
开发者入门
我们在 https://getinboxzero.com 上提供 Inbox Zero 的托管版本。要自行托管,请按照以下步骤操作。
为项目做贡献
你可以在我们的 GitHub Issues 中查看未完成的任务。 加入我们的 Discord 讨论任务并查看正在进行的工作。
ARCHITECTURE.md 解释了项目的架构(由 LLM 生成)。
要求
- Node.js >= 18.0.0
- pnpm >= 8.6.12
- Docker desktop (可选)
设置
这是一个视频 介绍如何设置项目。它涵盖了本文档中提到的相同步骤。但更详细地介绍了如何设置外部服务。
所需的外部服务有:
- Google OAuth
- Google PubSub - 请参阅下面的设置说明
你还需要设置一个 LLM,但你也可以使用本地 LLM:
我们使用 Postgres 作为数据库。 对于 Redis,你可以使用 Upstash Redis 或设置你自己的 Redis 实例。
你可以使用 docker-compose
在本地运行 Postgres 和 Redis
docker-compose up -d # -d 将在后台运行服务
创建你自己的 .env
文件:
cp apps/web/.env.example apps/web/.env
cd apps/web
pnpm install
在新建的 .env
中设置环境变量。你可以在 apps/web/env.ts
中查看所需变量的列表。
所需的环境变量:
NEXTAUTH_SECRET
-- 可以是任何随机字符串(尝试使用openssl rand -hex 32
获取快速安全随机字符串)GOOGLE_CLIENT_ID
-- Google OAuth 客户端 ID。更多信息请参见 这里GOOGLE_CLIENT_SECRET
-- Google OAuth 客户端密钥。更多信息请参见 这里GOOGLE_ENCRYPT_SECRET
-- 用于加密 OAuth 令牌的密钥(尝试使用openssl rand -hex 32
获取安全密钥)GOOGLE_ENCRYPT_SALT
-- 用于加密 OAuth 令牌的盐(尝试使用openssl rand -hex 16
获取安全盐)UPSTASH_REDIS_URL
-- 来自 Upstash 的 Redis URL。(如果使用 Docker Compose,则可以为空)UPSTASH_REDIS_TOKEN
-- 来自 Upstash 的 Redis 令牌。(如果使用 Docker Compose,则可以指定你自己的随机字符串)
当在关闭 Fluid Compute 的情况下使用 Vercel 时,你应该设置 MAX_DURATION=300
或更低。请参阅 此处 了解不同计划的 Vercel 限制。
要运行迁移:
pnpm prisma migrate dev
要在本地运行应用程序以进行开发(较慢):
pnpm run dev
或者从项目根目录:
turbo dev
要在本地以生产模式构建和运行应用程序(更快):
pnpm run build
pnpm start
打开 http://localhost:3000 以在浏览器中查看应用程序。
要升级你自己,请在 .env
中将你自己设置为管理员:ADMINS=hello@gmail.com
然后在 http://localhost:3000/admin 升级你自己。
支持的 LLM
对于 LLM,你可以使用 Anthropic、OpenAI 或 AWS Bedrock 上的 Anthropic。你还可以通过设置以下环境变量来使用 Ollama:
OLLAMA_BASE_URL=http://localhost:11434/api
NEXT_PUBLIC_OLLAMA_MODEL=phi3
注意:如果需要访问本地托管的 Ollama 并且应用程序在 Docker 设置上运行,则可以使用 http://host.docker.internal:11434/api
作为基本 URL。你可能还需要在 Ollama 配置文件中将 OLLAMA_HOST
设置为 0.0.0.0
。
你可以在应用程序的 /settings
页面上选择你希望在应用程序中使用的模型。
设置 Google OAuth 和 Gmail API
你需要在 Google Cloud Console 中启用以下范围:
https://www.googleapis.com/auth/userinfo.profile
https://www.googleapis.com/auth/userinfo.email
https://www.googleapis.com/auth/gmail.modify
https://www.googleapis.com/auth/gmail.settings.basic
https://www.googleapis.com/auth/contacts
通过 Google PubSub 设置推送通知以实时处理电子邮件
请按照 此处 的说明进行操作。
设置环境变量 GOOGLE_PUBSUB_TOPIC_NAME
。
创建订阅时,选择 Push,URL 应如下所示:https://www.getinboxzero.com/api/google/webhook?token=TOKEN
或 https://abc.ngrok-free.app/api/google/webhook?token=TOKEN
,其中域名是你的域名。在你的 .env
文件中设置 GOOGLE_PUBSUB_VERIFICATION_TOKEN
为 TOKEN
的值。
要在开发中运行,ngrok 可能会有所帮助:
ngrok http 3000
# 或使用 ngrok 域名来保持你的端点稳定(设置 `XYZ`):
ngrok http --domain=XYZ.ngrok-free.app 3000
然后更新 Google PubSub 订阅仪表板 中的 Webhook 端点。
要开始监视电子邮件,请访问:/api/google/watch/all
监视电子邮件更新
设置一个 cron 作业来运行这些: Google watch 是必需的。Resend 是可选的。
"crons": [
{
"path": "/api/google/watch/all",
"schedule": "0 1 * * *"
},
{
"path": "/api/resend/summary/all",
"schedule": "0 16 * * 1"
}
]
这里 是一些运行 cron 作业的简单方法。Upstash 是一个免费、简单的选项。我一直无法获得 Vercel vercel.json
。如果你找到了修复方法,欢迎提交 PR。
推荐服务器
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Apple MCP Server
通过 MCP 协议与 Apple 应用(如“信息”、“备忘录”和“通讯录”)进行交互,从而使用自然语言发送消息、搜索和打开应用内容。
MCP Server Trello
通过 Trello API 促进与 Trello 看板的交互,提供速率限制、类型安全、输入验证和错误处理等功能,以实现对卡片、列表和看板活动的无缝管理。
@kazuph/mcp-gmail-gas
用于 Gmail 集成的模型上下文协议 (Model Context Protocol, MCP) 服务器。它允许 Claude Desktop(或任何 MCP 客户端)通过 Google Apps Script 与您的 Gmail 帐户进行交互。

Linear MCP Server
一个模型上下文协议(Model Context Protocol)服务器,它与 Linear 的问题跟踪系统集成,允许大型语言模型(LLM)通过自然语言交互来创建、更新、搜索和评论 Linear 问题。
Composio MCP Server
一个服务器实现,提供与 MCP 兼容的 Composio 应用(如 Gmail 和 Linear)的访问,允许通过结构化的接口与语言模型进行交互。

Folderr
一个模型上下文协议 (MCP) 服务器,它提供与 Folderr API 交互的工具,专门用于管理 Folderr 助手并与之通信。

mcp-google
一个专门的模型上下文协议(MCP)服务器,它将 Google 服务(Gmail、日历等)集成到您的 AI 工作流程中。该服务器通过 MCP 实现对 Google 服务的无缝访问,从而允许 AI 代理与 Gmail、Google 日历和其他 Google 服务进行交互。
MCP-JIRA-Python Server
一个基于 Python 的服务器,允许与 JIRA 无缝集成,通过自定义 API 管理和交互项目。
Email sending MCP 💌
使用此电子邮件发送 MCP 服务器,直接从 Cursor 发送电子邮件