Gmail Postmaster Tools

io.github.optipub由 GitHub 账号 optipub 发布v1.0.1更新于 Oct 27, 2026

Gmail Postmaster Tools v2 — domains, traffic metrics, and compliance via your own Google OAuth.

已验证STDIO仅桌面沟通与协作数据与分析

概览

AI 生成的概览

本地运行的 Gmail Postmaster Tools API v2 MCP 服务器,让助手列出你的域名、检查发件人合规状态并查询 Gmail 流量指标。

可以做什么
  • 列出并查看已注册的 Postmaster 域名及其验证状态
  • 检查发件人合规情况:SPF、DKIM、DMARC、对齐、DNS 记录、TLS、垃圾邮件率与退订判定
  • 按日期范围查询流量指标:垃圾邮件率、认证成功率、TLS 加密率、投递错误与反馈环路
  • 登录、查看登录状态以及退出用于该 API 的 Google 账号
适用场景
适合亲自管理发信的发件人,希望让助手查询自己域名的 Gmail 送达情况、是否符合 Gmail 发件人规则,或垃圾邮件与认证指标,而不必打开 Postmaster Tools 界面。
运行要求
以本地 stdio 进程在桌面机器上运行,需要 Node.js(无 npm 依赖)。需要自备 Google Cloud OAuth 客户端:启用 Gmail Postmaster Tools API、创建桌面应用类型的客户端,并通过 GPT_CLIENT_ID 和 GPT_CLIENT_SECRET 提供客户端 ID 与密钥。登录会通过 127.0.0.1 回环地址打开浏览器。.mcpb 包仅用于 Claude Desktop/Cowork,其他客户端需指向 server/index.js。
安装前请注意
需要提供自己的 Google OAuth 客户端密钥(GPT_CLIENT_SECRET),并保存在客户端配置中。令牌缓存在本地令牌目录;若 OAuth 应用仍处于 Testing 状态,刷新令牌 7 天后失效,需每周重新登录。默认权限包含 postmaster.domain,可列出域名;可用 GPT_SCOPE 收窄。README 说明仅支持远程连接的客户端无法直接使用此本地版本。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Gmail Postmaster Tools,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

Gmail Postmaster Tools MCP

[License: MIT] [Built with MCPB] [Node] [Dependencies]

An MCP server for the Gmail Postmaster Tools API (v2) — query your domains, sender compliance status, and Gmail traffic metrics from Claude, Cursor, or any MCP client.

This is a bring-your-own-credentials tool for hands-on senders: you supply your own Google OAuth client, and the server runs the sign-in locally. Nothing is hosted and no data leaves your machine.

Want this without setting up a Google Cloud project? That's what Postmaster+ is for — hosted, multi-provider (Gmail + Outlook + more), with verification, history, and alerting.

Built & maintained by the Postmaster+ team at OptiPub.

What you get

  • list_domains / get_domain — your registered domains and their verification state
  • get_compliance_status — SPF, DKIM, DMARC, alignment, message formatting, DNS records, TLS encryption, user-reported spam rate, and one-click / honored unsubscribe verdicts
  • query_domain_stats — spam rate, auth success (SPF/DKIM/DMARC), TLS encryption rate, delivery errors, and feedback-loop metrics over any date range
  • gpt_authenticate / gpt_auth_status / gpt_sign_out

Note: Postmaster Tools v2 covers traffic metrics + compliance. Domain and IP reputation are not part of v2.

Prerequisites: create a Google OAuth client (one-time, ~5 min)

You need a Google Cloud OAuth client because Google doesn't offer a shared public one for this API.

  1. Go to the Google Cloud Console and create (or pick) a project.
  2. APIs & Services → Library → search "Gmail Postmaster Tools API" → Enable.
  3. APIs & Services → OAuth consent screen (redirects to Google Auth Platform). If the project has never been configured, click Get started and set an App name + support email, Audience = External, and a contact email. If it's already configured, you'll just see the tabs — skip to the next step.
  4. Open the Audience tab. If User type = External, add your Google address under Test users → + Add users and Save (leave status as Testing — works without app verification, up to 100 users). If User type = Internal (a Workspace org project), no test users are needed — org users can sign in directly.
  5. Open the Clients tab (or APIs & Services → Credentials) → Create client → application type Desktop app → Create.
  6. Copy the Client ID and Client secret.

You'll paste those two values into this extension's configuration at install time. (Make sure the Google account you sign in with is one that has access in Gmail Postmaster Tools.)

Install in Claude / Cowork (the .mcpb)

The .mcpb is a packaging convenience for Claude Desktop / Cowork only.

  1. Download gmail-postmaster-tools.mcpb from the latest release.
  2. Settings → Capabilities → install extension, pick the file.
  3. When prompted, paste your Google OAuth Client ID and Client Secret.
  4. Run gpt_authenticate once — your browser opens for the Google sign-in.

Use with other MCP clients (Cursor, VS Code, Windsurf, …)

Underneath, this is a standard stdio MCP server — any client that runs local MCP servers can use it directly, no .mcpb required. Clone or download the repo, then point the client at server/index.js and pass your Google credentials as env vars.

Cursor — edit ~/.cursor/mcp.json (global) or .cursor/mcp.json (per project):

json
{  "mcpServers": {    "gmail-postmaster-tools": {      "command": "node",      "args": ["/absolute/path/to/gmail-postmaster-tools-mcp/server/index.js"],      "env": {        "GPT_CLIENT_ID": "xxxxx.apps.googleusercontent.com",        "GPT_CLIENT_SECRET": "xxxxx"      }    }  }}

VS Code (.vscode/mcp.json), Windsurf, Claude Desktop (manual config), and most other clients use the same command + args + env shape — only the config file location differs. Other env overrides are listed under Configuration.

The first tool call (or gpt_authenticate) opens your browser for the Google sign-in; the 127.0.0.1 loopback works on any local desktop client.

Remote-only clients (e.g. Perplexity, ChatGPT connectors): these accept only a remote HTTPS MCP server URL, not a local command, so this stdio build can't be added directly. That would require hosting it — which is what Postmaster+ provides.

Usage examples

  • "Sign me in to Gmail Postmaster Tools" → gpt_authenticate
  • "List my Postmaster domains" → list_domains
  • "Is example.com compliant with Gmail's sender rules?" → get_compliance_status { domain: "example.com" }
  • "Spam rate for example.com over the last 30 days" → query_domain_stats { domain: "example.com", start_date: "...", end_date: "...", metrics: ["SPAM_RATE"] }
  • "DKIM auth success for example.com" → query_domain_stats { domain: "example.com", metrics: [{ "standardMetric": "AUTH_SUCCESS_RATE", "filter": "auth_type=\"dkim\"" }] }

Some metrics require a filter: AUTH_SUCCESS_RATE (auth_type=spf|dkim|dmarc), TLS_ENCRYPTION_RATE (traffic_direction=inbound|outbound), DELIVERY_ERROR_RATE (optional error_type=...). SPAM_RATE needs none.

How authentication works

OAuth 2.0 authorization-code + PKCE, over a http://127.0.0.1:<dynamic-port> loopback redirect (Google's recommended flow for desktop apps). On sign-in the server starts a short-lived listener on 127.0.0.1, opens your browser, receives the code, and exchanges it (with your client secret + PKCE verifier) for tokens.

Google requires a client secret even for desktop apps, which is why both values are needed. Tokens are stored only on your machine at ~/.gmail-postmaster-mcp/tokens.json (0600) and are git-ignored.

Scopes: by default the server requests postmaster.traffic.readonly (metrics + compliance) and postmaster.domain (list/get domains). Override with the GPT_SCOPE env var if you want to narrow it (e.g. traffic-only, dropping list_domains/get_domain).

Token lifetime (important)

Google revokes refresh tokens after 7 days for OAuth apps whose publishing status is Testing — the mode the setup steps above use to skip verification. In practice that means you'll re-run gpt_authenticate about once a week. The server handles this gracefully: when the refresh fails, tool calls tell you to re-authenticate.

To stop the weekly re-auth, set your OAuth app's publishing status to In production (Google Auth Platform → Audience → Publish app). Notes for the postmaster (sensitive) scopes:

  • Production, unverified — refresh tokens no longer expire at 7 days. You'll still click through the "Google hasn't verified this app" screen, and the app is capped at 100 users until verified. For your own single-user use, this is the simple fix.
  • Verified — submit the app for Google's OAuth verification to remove the warning and the user cap. Only worth it if you're distributing the app widely.

Configuration (env overrides)

VariablePurposeDefault
GPT_CLIENT_IDGoogle OAuth client ID (required)—
GPT_CLIENT_SECRETGoogle OAuth client secret (required)—
GPT_SCOPESpace-separated OAuth scopestraffic.readonly + domain
GPT_API_BASEAPI base URLhttps://gmailpostmastertools.googleapis.com/v2
GPT_TOKEN_DIRToken cache directory~/.gmail-postmaster-mcp
GPT_LOGIN_TIMEOUT_MSSign-in wait180000
GPT_REQUEST_TIMEOUT_MSPer-request timeout60000

Build

bash
npx @anthropic-ai/mcpb validate manifest.jsonnpx @anthropic-ai/mcpb pack . gmail-postmaster-tools.mcpb

Pushing a vX.Y.Z tag triggers CI to pack, attach the .mcpb to a GitHub Release, and publish to the MCP Registry.

Why zero dependencies

Only Node.js built-ins (http, https, crypto, readline) — tiny bundle, no supply-chain risk, nothing to npm install.

Contributing

See CONTRIBUTING.md.

License

MIT © OptiPub


Not affiliated with or endorsed by Google. "Gmail", "Google", and "Postmaster Tools" are trademarks of Google LLC.

来源:README.md,提交 df71e5d

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v1.0.1最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分