A
alexneamtu/gmail-mcp
Self-hosted, owner-only Gmail MCP connector for multiple accounts over Streamable HTTP and OAuth.
SECURITY.md ✓
在 GitHub 查看 ↗链接已于 2026-11-12 核查 · HTTP 200 · 打开的是厂商自己的官网
我们没有从该仓库取到可核对的安装命令,也没有公开的远端端点。这两样都没有时,我们不出配置——编一条出来比不给更糟。 各客户端的接法 →
- ★ 数取值
- 4 ★ · alexneamtu/gmail-mcp · 取自 GitHub 搜索 API · (2026-11-13 20:00:50 核对)
- 来源明细
- 收录自 punkpeye/awesome-mcp-servers 榜单(我们从中收集的条目之一) · 条目类型:MCP 服务
- 收录与活跃
- 收录于 2026-10-23 · 最近见到 2026-11-14 · 共见到 26 次 · 被 23 个来源列出
- 评分构成
- 综合分 2,300 · 4 ★ · 23 个来源 · mcp
常见问题(答案都来自我们的记录)
它适合谁 / 用来做什么?
我们把它归在这些标签下: MCP 服务。标签来自条目自身,不是我们强加的分类。
谁维护它、还在更新吗?
仓库
alexneamtu/gmail-mcp;我们收录于 2026-10-23;最近见到 2026-11-14。这里没有"官方认证"或"质量评级"——我们只记录来源与时间。# Gmail MCP
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
Search, read, and draft across personal and work Gmail accounts through one
self-hosted MCP endpoint. Choose which accounts to connect and whether to enable
sending and label changes. Only your configured Google identity can authorize
access.
Get started · Connect Claude · Connect Codex · Operations · CI
> [!NOTE]
> Early release for technically experienced self-hosters. Requires Node 24,
> Linux with systemd, an HTTPS hostname, and your own Google OAuth project.
> Each deployment supports one owner with multiple Gmail accounts.
## What you can do
| Capability | Tools | Access mode |
| Check connected aliases and local enrollment | listaccounts | Both |
| Search with Gmail queries and read messages | searchmessages, getmessage | Both |
| Read whole threads | getthread | Both |
| List and download attachments (up to 5 MB) | getmessage, getattachment | Both |
| Look up existing labels | listlabels | Both |
| Create plain-text drafts in the selected mailbox | createdraft | Both |
| Send an existing draft | senddraft | Full |
| Apply or remove existing labels | modifymessagelabels | Full |
Every tool takes an explicit account alias, such as personal or work.
Aliases refer to separately enrolled mailboxes. Forwarded addresses are read
through their destination mailbox; forwarding alone does not enable sending
from those addresses.
After connecting, try:
> Search work for unread messages from the past week and summarize the ones
> that need a reply.
> In personal, draft an email to friend@example.com suggesting lunch on Friday.
> Save it as a draft. Do not send it.
> [!IMPORTANT]
> Drafts mode omits the sending and label-modification tools. Google's
> gmail.compose scope still includes sending permission at the Google level.
> In full mode, the client must obtain your approval to send a specific draft;
> the server does not provide a separate human-approval screen for each send.
## How it works
mermaid
flowchart LR
client["Claude or Codex"] -->|HTTPS| tunnel["Cloudflare Tunnel"]
tunnel -->|Loopback HTTP| server["Gmail MCP · /mcp Owner-only OAuth + PKCE"]
server -->|"account: personal"| personal["Personal Gmail"]
server -->|"account: work"| work["Work Gmail"]
The server uses Streamable HTTP. Google authorization enrolls each mailbox;
a separate OAuth consent flow lets Claude or Codex use those enrolled accounts.
Credentials and authorization state live in encrypted SQLite storage on your
server. The service runs as a dedicated non-root user under systemd.
Email content is untrusted input. Message bodies are capped at 60,000 characters
(200,000 per thread) with explicit truncation indicators. Attachments are
capped at 5 MB; images return as image content, other files as embedded resources. Plain text is preferred; HTML-only messages
return labelled HTML text. See the security policy for the trust
boundaries, logging rules, and backup limitations.
## Setup
### Schema inspection for directories
Glama and other stdio inspectors can inspect the tool catalog without private
configuration or Google credentials:
sh
npm ci --ignore-scripts
npm run build
node dist/inspection-main.js
This entrypoint exposes the same nine tool definitions as full access mode. The
self-hosted MCP endpoint. Choose which accounts to connect and whether to enable
sending and label changes. Only your configured Google identity can authorize
access.
Get started · Connect Claude · Connect Codex · Operations · CI
> [!NOTE]
> Early release for technically experienced self-hosters. Requires Node 24,
> Linux with systemd, an HTTPS hostname, and your own Google OAuth project.
> Each deployment supports one owner with multiple Gmail accounts.
## What you can do
| Capability | Tools | Access mode |
| Check connected aliases and local enrollment | listaccounts | Both |
| Search with Gmail queries and read messages | searchmessages, getmessage | Both |
| Read whole threads | getthread | Both |
| List and download attachments (up to 5 MB) | getmessage, getattachment | Both |
| Look up existing labels | listlabels | Both |
| Create plain-text drafts in the selected mailbox | createdraft | Both |
| Send an existing draft | senddraft | Full |
| Apply or remove existing labels | modifymessagelabels | Full |
Every tool takes an explicit account alias, such as personal or work.
Aliases refer to separately enrolled mailboxes. Forwarded addresses are read
through their destination mailbox; forwarding alone does not enable sending
from those addresses.
After connecting, try:
> Search work for unread messages from the past week and summarize the ones
> that need a reply.
> In personal, draft an email to friend@example.com suggesting lunch on Friday.
> Save it as a draft. Do not send it.
> [!IMPORTANT]
> Drafts mode omits the sending and label-modification tools. Google's
> gmail.compose scope still includes sending permission at the Google level.
> In full mode, the client must obtain your approval to send a specific draft;
> the server does not provide a separate human-approval screen for each send.
## How it works
mermaid
flowchart LR
client["Claude or Codex"] -->|HTTPS| tunnel["Cloudflare Tunnel"]
tunnel -->|Loopback HTTP| server["Gmail MCP · /mcp Owner-only OAuth + PKCE"]
server -->|"account: personal"| personal["Personal Gmail"]
server -->|"account: work"| work["Work Gmail"]
The server uses Streamable HTTP. Google authorization enrolls each mailbox;
a separate OAuth consent flow lets Claude or Codex use those enrolled accounts.
Credentials and authorization state live in encrypted SQLite storage on your
server. The service runs as a dedicated non-root user under systemd.
Email content is untrusted input. Message bodies are capped at 60,000 characters
(200,000 per thread) with explicit truncation indicators. Attachments are
capped at 5 MB; images return as image content, other files as embedded resources. Plain text is preferred; HTML-only messages
return labelled HTML text. See the security policy for the trust
boundaries, logging rules, and backup limitations.
## Setup
### Schema inspection for directories
Glama and other stdio inspectors can inspect the tool catalog without private
configuration or Google credentials:
sh
npm ci --ignore-scripts
npm run build
node dist/inspection-main.js
This entrypoint exposes the same nine tool definitions as full access mode. The
收录徽章(可选)
想把收录标记放进 README 就复制这行,可选,不影响收录。
[](https://anclum.com/zh/s/alexneamtu-gmail-mcp/)
- 来源
- awesome · https://github.com/alexneamtu/gmail-mcp
- 按领域浏览
- MCP 服务
- Traction
- 4 ★
- 收录来源
- 23 个独立来源
- 收录于
- 今天
- 安全策略
- 该仓库根目录有
SECURITY.md(我们只核文件存在,未核内容)
同类推荐
所属领域与标签
每个标签都能点进去看同类的全部条目。数字是当前库里的真实条数。