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:

  • GmailChat 仍需要其标准 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.readonlyhttps://www.googleapis.com/auth/calendar.events.freebusyhttps://www.googleapis.com/auth/calendar.events.readonly
    • Google Chathttps://www.googleapis.com/auth/chat.spaces.readonlyhttps://www.googleapis.com/auth/chat.memberships.readonlyhttps://www.googleapis.com/auth/chat.messages.readonlyhttps://www.googleapis.com/auth/chat.users.readstate.readonly
    • Google 云端硬盘https://www.googleapis.com/auth/drive.readonlyhttps://www.googleapis.com/auth/drive.file
    • Gmailhttps://www.googleapis.com/auth/gmail.readonlyhttps://www.googleapis.com/auth/gmail.compose
    • People APIhttps://www.googleapis.com/auth/directory.readonlyhttps://www.googleapis.com/auth/userinfo.profilehttps://www.googleapis.com/auth/contacts.readonly
  8. 点击添加到表格,然后点击更新,最后点击保存

创建 OAuth 客户端 ID

  1. 依次前往 Google Auth Platform > 客户端 > 创建客户端
  2. 选择桌面应用作为应用类型。
  3. 将该文件命名为 Gemini CLI
  4. 点击创建,然后复制客户端 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 云端硬盘中包含‘[关键字]’的文件。”
  • “列出我最近编辑的文档。”
  • “Read the content of my ‘[FILE_NAME]' doc and summarize the main goals.”(读出我的“[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 数据互动。

参考文档