Gmail邮件管理服务

通过Model Context Protocol (MCP)与Gmail账户交互的工具,提供邮件列表、搜索、标签管理等功能。

  • by acro5piano
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 acro5piano/yagms

使用说明

yagms

另一款Gmail MCP服务器

设置和使用

Gmail MCP服务器

Gmail MCP服务器提供了通过模型上下文协议(MCP)与您的Gmail帐户交互的工具。

先决条件

  1. 为Gmail API创建OAuth凭据:
    • 首选 谷歌云控制台
    • 创建新项目或选择现有项目
    • 启用Gmail API
    • 创建OAuth 2.0凭据(桌面应用程序)
    • 下载凭据JSON文件并将其另存为 ~/.yagms-oauth.keys.json

构建此项目

  1. 安装Bun。
  2. 构建代码
bun install
bun run build-gmail # It will emit ./dist/gmail.js

认证

在使用Gmail MCP服务器之前,您需要使用您的Google帐户进行身份验证:

# Run the authentication flow
bun run dist/gmail.js auth

这将:

  • 打开浏览器窗口,让您登录您的谷歌帐户
  • 请求访问您的Gmail帐户的权限
  • 将身份验证凭据保存到 ~/.yagms-credentials.json

运行服务器

身份验证后,您可以运行Gmail MCP服务器:

# Run the server
bun run src/gmail.ts

配置

您可以使用环境变量自定义OAuth密钥和凭据的路径:

  • GMAIL_OAUTH_PATH:OAuth密钥文件的路径(默认值: ~/.yagms-oauth.keys.json)
  • GMAIL_CREDENTIALS_PATH:保存凭据的路径(默认值: ~/.yagms-credentials.json)

可用工具

Gmail MCP服务器提供以下工具:

  1. 列出电子邮件:从收件箱中获取电子邮件

    • 参数:
      • senderEmail (可选):按发件人电子邮件筛选
      • maxResults (可选,默认值:10):要返回的最大电子邮件数
      • labelIds (可选,默认值:[“收件箱”]):要筛选的标签ID
  2. 获取电子邮件:通过ID获取特定电子邮件

    • 参数:
      • emailId:要检索的电子邮件的ID
  3. 搜索电子邮件:使用Gmail搜索语法搜索电子邮件

    • 参数:
      • query:Gmail搜索查询(例如,“发件人:example@gmail.com有:附件”)
      • maxResults (可选,默认值:10):要返回的最大电子邮件数
  4. 获取标签:获取所有Gmail标签

    • 无需参数

MCP配置示例

将此添加到MCP设置文件中:

{
  "mcpServers": {
    "gmail": {
      "command": "bun",
      "args": ["run", "/path/to/yagms/dist/gmail.js"],
      "env": {},
      "disabled": false,
      "autoApprove": []
    }
  }
}