Google Workspace MCP 和 Gemini CLI 使用入门

1. 简介

在此 Codelab 中,您将学习如何使用 Model Context Protocol (MCP) 将 Gemini CLI 连接到 Google Workspace 数据。MCP 是一种开放标准,可让 AI 模型安全地使用远程服务器提供的工具。您将使用 Gemini CLI 作为客户端,无需编写任何代码即可与 Gmail、Google 云端硬盘、Google 日历、Google Chat 和 People API 进行交互!

Google Workspace MCP 架构

您将执行的操作

  • 在 Google Cloud 项目中启用 Google Workspace MCP 服务。
  • 配置 Gemini CLI 以使用这些 MCP 服务。
  • 使用有趣且实用的提示测试集成,这些提示会与您的 Google Workspace 数据进行交互。

所需条件

  • 网络浏览器,例如 Chrome
  • Google Cloud 项目
  • Google Workspace 账号
  • 在本地机器上安装 Gemini CLI

完成此 Codelab 大约需要 30 分钟。

轻松访问此 Codelab

用于访问此 Codelab 的二维码

2. 准备工作

创建或选择 Google Cloud 项目

在 Google Cloud 控制台中,选择或创建 Google Cloud 项目。

启用 API

如需使用 Google Workspace MCP 服务器,您必须启用标准 Google Workspace API。虽然某些 MCP 服务器可以独立运行,但其他服务器仍需要启用底层标准 API:

  • Gmail 和 Chat 仍需要其标准 API。
  • 云端硬盘需要使用标准 API 才能运行某些工具。
  • 日历不需要启用标准 API。
  • People API 可同时处理标准权限和 MCP 功能,因此没有单独的 MCP 服务可供启用。

启用 MCP 服务

接下来,为这些产品启用专用 MCP 服务。

配置 Chat 应用

如需使用 Google Chat MCP 服务器,您必须在 Google Cloud 项目中配置 Chat 应用。

  1. 在 Google Cloud 控制台中,搜索 Google Chat API,然后依次点击 Google Chat API > 管理 > 配置。
  2. 设置 Chat 应用:
    • 在应用名称字段中,输入 Chat MCP。
    • 在头像网址字段中,输入 https://developers.google.com/chat/images/quickstart-app-avatar.png。
    • 在说明中,输入 Chat MCP server。
    • 在功能下,关闭启用互动功能。
    • 在日志下,选择将错误记录到 Logging。
  3. 点击保存。

3. 配置 OAuth 权限请求和客户端

Google Workspace MCP 服务器使用 OAuth 2.0 进行安全身份验证。您必须配置 OAuth 权限请求页面并创建桌面应用客户端。

Google Workspace MCP 服务器使用 OAuth 2.0 进行身份验证。您必须先配置权限请求页面。

  1. 在 Google Cloud 控制台中,依次前往 Google Auth Platform > 品牌信息。如果尚未配置,请点击开始使用。
  2. 配置应用信息:
    • 应用名称:Google Workspace MCP Servers
    • 用户支持邮箱:选择您的邮箱。
  3. 配置受众群体:选择内部(如果“内部”不可用,则选择外部)。
  4. 配置联系信息:输入您的邮箱。
  5. 查看并同意《用户数据政策》,然后点击创建。
  6. 如果您选择了外部,请前往目标对象,然后在测试用户下添加您的电子邮件地址。
  7. 依次前往数据访问权限 > 添加或移除范围。在手动添加范围下,为您要使用的服务器添加以下内容:
    • Google 日历:https://www.googleapis.com/auth/calendar.calendarlist.readonly、https://www.googleapis.com/auth/calendar.events.freebusy、https://www.googleapis.com/auth/calendar.events.readonly
    • Google Chat:https://www.googleapis.com/auth/chat.spaces.readonly、https://www.googleapis.com/auth/chat.memberships.readonly、https://www.googleapis.com/auth/chat.messages.readonly、https://www.googleapis.com/auth/chat.users.readstate.readonly
    • Google 云端硬盘:https://www.googleapis.com/auth/drive.readonly、https://www.googleapis.com/auth/drive.file
    • Gmail:https://www.googleapis.com/auth/gmail.readonly、https://www.googleapis.com/auth/gmail.compose
    • People API:https://www.googleapis.com/auth/directory.readonly、https://www.googleapis.com/auth/userinfo.profile、https://www.googleapis.com/auth/contacts.readonly
  8. 依次点击添加到表格、更新和保存。

创建 OAuth 客户端 ID

为 Google Workspace MCP 服务器配置 OAuth 2.0 客户端时,您必须选择将此客户端用于 AI 赋能的智能体,以启用智能体分类设置 (is_agentic)。未启用此设置的 OAuth 客户端将无法调用 Google Workspace MCP 端点。

  1. 依次前往 Google Auth Platform > 客户端 > 创建客户端(或 API 和服务 > 凭证 > 创建凭证 > OAuth 客户端 ID)。
  2. 选择桌面应用作为应用类型。
  3. 将该文件命名为 Gemini CLI。
  4. 选择将此客户端用于 AI 赋能的智能体,以便在 OAuth 客户端上启用 is_agentic 分类标志。
  5. 点击创建,然后复制客户端 ID 和客户端密钥。您在下一步中需要用到这些信息。

4. 配置 Gemini CLI

现在,我们来配置 Gemini CLI 以使用这些端点。如果您尚未安装 Gemini CLI,请按照 Gemini CLI 网站上的安装说明进行安装。

创建配置文件

在主目录中打开或创建 ~/.gemini/settings.json,并添加以下配置。将占位符替换为您的 OAuth 凭证。

{
  "mcpServers": {
    "calendar": {
      "httpUrl": "https://calendarmcp.googleapis.com/mcp/v1",
      "oauth": {
        "enabled": true,
        "clientId": "<YOUR_CLIENT_ID>",
        "clientSecret": "<YOUR_CLIENT_SECRET>",
        "scopes": [
          "https://www.googleapis.com/auth/calendar.calendarlist.readonly",
          "https://www.googleapis.com/auth/calendar.events.freebusy",
          "https://www.googleapis.com/auth/calendar.events.readonly"
        ]
      }
    },
    "chat": {
      "httpUrl": "https://chatmcp.googleapis.com/mcp/v1",
      "oauth": {
        "enabled": true,
        "clientId": "<YOUR_CLIENT_ID>",
        "clientSecret": "<YOUR_CLIENT_SECRET>",
        "scopes": [
          "https://www.googleapis.com/auth/chat.spaces.readonly",
          "https://www.googleapis.com/auth/chat.memberships.readonly",
          "https://www.googleapis.com/auth/chat.messages.readonly",
          "https://www.googleapis.com/auth/chat.users.readstate.readonly"
        ]
      }
    },
    "drive": {
      "httpUrl": "https://drivemcp.googleapis.com/mcp/v1",
      "oauth": {
        "enabled": true,
        "clientId": "<YOUR_CLIENT_ID>",
        "clientSecret": "<YOUR_CLIENT_SECRET>",
        "scopes": [
          "https://www.googleapis.com/auth/drive.readonly",
          "https://www.googleapis.com/auth/drive.file"
        ]
      }
    },
    "gmail": {
      "httpUrl": "https://gmailmcp.googleapis.com/mcp/v1",
      "oauth": {
        "enabled": true,
        "clientId": "<YOUR_CLIENT_ID>",
        "clientSecret": "<YOUR_CLIENT_SECRET>",
        "scopes": [
          "https://www.googleapis.com/auth/gmail.readonly",
          "https://www.googleapis.com/auth/gmail.compose"
        ]
      }
    },
    "people": {
      "httpUrl": "https://people.googleapis.com/mcp/v1",
      "oauth": {
        "enabled": true,
        "clientId": "<YOUR_CLIENT_ID>",
        "clientSecret": "<YOUR_CLIENT_SECRET>",
        "scopes": [
          "https://www.googleapis.com/auth/directory.readonly",
          "https://www.googleapis.com/auth/userinfo.profile",
          "https://www.googleapis.com/auth/contacts.readonly"
        ]
      }
    }
  }
}

5. 对 MCP 服务器进行身份验证和验证

您必须先进行身份验证并验证 MCP 服务器是否已连接,然后才能使用这些服务器。

启动 Gemini CLI

在终端中运行以下命令以启动 Gemini CLI:

gemini

身份验证

在 Gemini CLI 中运行相应命令,对要测试的服务进行身份验证。您只需对计划在此 Codelab 中使用的服务进行身份验证。

日历

/mcp auth calendar

聊天

/mcp auth chat

云端硬盘

/mcp auth drive

Gmail

/mcp auth gmail

人员

/mcp auth people

按照浏览器中的提示授权每项服务。

验证连接

验证工具是否已加载并准备就绪:

/mcp list

您应该会看到输出,其中显示服务为 Ready,并列出了其工具。

6. 测试 MCP 服务器

现在,您可以使用自然语言与 Google Workspace 数据进行互动。以下是每项服务的一些示例提示。

Google 日历

不妨试试问问 Gemini 日程安排:

  • “我本周有哪些即将举行的会议?”
  • “我明天下午有空闲时间吗?”

Google Chat

不妨试试问问 Gemini 搜索消息:

  • “在‘[SPACE_NAME]’中查找包含‘[KEYWORD]’的消息”

Google 云端硬盘

不妨试试问问 Gemini 查找或阅读文件:

  • “在我的 Google 云端硬盘中搜索包含‘[关键词]’的文件。”
  • “列出我最近编辑过的文档。”
  • “阅读我的‘[FILE_NAME]’文档的内容,并总结主要目标。”

Gmail

不妨试试问问 Gemini,让它搜索或管理您的邮件:

  • “总结我收到的最后 5 封电子邮件。”
  • “起草一封邮件给‘[EMAIL_ADDRESS]’,询问‘[PROJECT_NAME]’项目的最新进展。”

People API

不妨试试问问 Gemini 你的个人资料或通讯录:

  • “根据我的 Google 个人资料,我叫什么名字?”
  • “查找‘[姓名]’的联系信息。”

结合使用多项服务

当 Gemini 跨多项服务编排任务时,MCP 的真正威力便得以发挥。不妨试试以下提示,体验跨服务功能:

  • “在云端硬盘中搜索与‘[PROJECT_NAME] 里程碑更新’相关的文件,总结其内容,找到‘[NAME]’的邮箱,然后创建一封 Gmail 草稿,将总结内容发送给对方。”

探索更多工具

以上只是几个示例。如需查看每项服务可用的完整工具列表并进行试用,请参阅官方文档的支持的产品部分。

7. 清理

如需在不删除项目的情况下清理项目,您可以停用已启用的 API 和 MCP 服务:

  1. 在 Google Cloud 控制台中,前往 API 和服务信息中心。
  2. 点击您启用的每个 Google Workspace 和 MCP API(例如 Calendar MCP、Chat MCP),然后点击停用 API。

如果您不再打算使用 OAuth 客户端凭据,请在 Google Auth Platform 控制台中将其删除。

8. 恭喜

恭喜!您已成功使用 Gemini CLI 配置并测试了官方 Google Workspace MCP 服务器。

您学到的内容

  • 如何在 Google Cloud 中启用 Google Workspace MCP 服务。
  • 如何为 MCP 配置 OAuth 客户端。
  • 如何使用 Gemini CLI 通过标准工具与 Google Workspace 数据互动。

参考文档