/ 目錄 / 演練場 / google_workspace_mcp
● 社群 taylorwilsdon ⚡ 即開即用

google_workspace_mcp

作者 taylorwilsdon · taylorwilsdon/google_workspace_mcp

一個 MCP 伺服器支援 Gmail、Drive、Calendar、Docs、Sheets、Slides、Chat、Forms、Tasks、Contacts、Apps Script — 搭配分層式工具載入,保持語境精簡。

taylorwilsdon/google_workspace_mcp 是一個 Python MCP,提供約 100 個工具來封裝 Google Workspace API。透過你自己的 Google Cloud 專案進行 OAuth 2.0。選擇工具層級(core / extended / complete)來控制 MCP 客戶端中會顯示多少工具。

為什麼要用

核心特性

即時演示

實際使用效果

google-workspace.replay ▶ 就緒
0/0

安裝

選擇你的客戶端

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "google-workspace": {
      "command": "uvx",
      "args": [
        "google_workspace_mcp"
      ],
      "_inferred": true
    }
  }
}

開啟 Claude Desktop → Settings → Developer → Edit Config。儲存後重啟應用。

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "google-workspace": {
      "command": "uvx",
      "args": [
        "google_workspace_mcp"
      ],
      "_inferred": true
    }
  }
}

Cursor 使用與 Claude Desktop 相同的 mcpServers 格式。專案級設定優先於全域。

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "google-workspace": {
      "command": "uvx",
      "args": [
        "google_workspace_mcp"
      ],
      "_inferred": true
    }
  }
}

點擊 Cline 側欄中的 MCP Servers 圖示,然後選 "Edit Configuration"。

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "google-workspace": {
      "command": "uvx",
      "args": [
        "google_workspace_mcp"
      ],
      "_inferred": true
    }
  }
}

格式與 Claude Desktop 相同。重啟 Windsurf 生效。

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "google-workspace",
      "command": "uvx",
      "args": [
        "google_workspace_mcp"
      ]
    }
  ]
}

Continue 使用伺服器物件陣列,而非映射。

~/.config/zed/settings.json
{
  "context_servers": {
    "google-workspace": {
      "command": {
        "path": "uvx",
        "args": [
          "google_workspace_mcp"
        ]
      }
    }
  }
}

加入 context_servers。Zed 儲存後熱重載。

claude mcp add google-workspace -- uvx google_workspace_mcp

一行命令搞定。用 claude mcp list 驗證,claude mcp remove 移除。

使用場景

實戰用法: google_workspace_mcp

如何透過 AI 標籤和草稿將收件匣整理到零

👤 知識工作者、主管 ⏱ ~20 min intermediate

何時使用: 星期一上午或休假後,當你的收件匣爆炸時。

前置條件
  • 啟用 Gmail API 的 Google Cloud 專案 — console.cloud.google.com > APIs > Gmail API > Enable
  • OAuth 2.0 桌面應用程式憑證 — Credentials > Create OAuth client > Desktop。設定 GOOGLE_OAUTH_CLIENT_ID 和 _SECRET 環境變數
步驟
  1. 取得上週未讀訊息
    搜尋 Gmail 尋找最近 7 天的未讀訊息。按寄件者類別分組(團隊、外部、廠商、電子報)。✓ 已複製
    → 分組計數 + 預覽行
  2. 自動標籤 + 封存電子報
    對於電子報群組,標籤為 'newsletter' 並封存。✓ 已複製
    → 封存計數、討論串 ID
  3. 為前 5 個重要討論串起草回覆
    針對 5 個最重要的討論串(客戶提問、障礙、需要決定),起草簡潔的回覆。不要寄送 — 僅起草。✓ 已複製
    → Gmail 中可見 5 個草稿

結果: 收件匣少於 20 個,草稿已準備好檢閱 + 寄送。

注意事項
  • AI 寄送回覆而非起草 — 始終在提示中說「僅起草」;對不受信任的工作階段停用 send_gmail_message
搭配使用: notion

如何從你的日曆為明天的每場會議做準備

👤 任何有連續會議的人 ⏱ ~15 min beginner

何時使用: 在繁忙日前一天結束前。

步驟
  1. 列出明天的活動
    取得我明天的日曆活動。對於每個,顯示出席者和會議標題。✓ 已複製
    → 活動時間表
  2. 對於每場會議,尋找連結的文件和最近的電子郵件
    對於有議程連結的每場會議,打開文件並摘要。對於每個出席者,顯示與他們的最後郵件討論串。✓ 已複製
    → 每個會議的簡報
  3. 匯出到一個文件
    建立文件 'Prep 2026-04-15',每場會議一個部分。✓ 已複製
    → 傳回文件 URL

結果: 一個你可以邊喝咖啡邊快速瀏覽的準備文件。

注意事項
  • 外部出席者的電子郵件包含 PII — 他們會傳給你的 LLM 提供者 — 如果你在意,在提示中僅保留名稱
搭配使用: notion

如何將 Google 試算表轉變為代理程式的讀 / 寫資料來源

👤 在試算表上執行業務流程的營運人員 ⏱ ~15 min intermediate

何時使用: 你還不想遷移到真正的資料庫,但希望 AI 回答問題 + 記錄事件。

步驟
  1. 描述試算表版面配置
    讀取試算表 1AbC... 中的「Orders」頁籤 — 告訴我結構描述。✓ 已複製
    → 帶有類型的欄列表
  2. 回答一個問題
    使用 read_sheet_values,三月份超過 $1000 的訂單有多少?✓ 已複製
    → 數字答案 + 參考的儲存格
  3. 附加一列
    附加新列:今天的日期、customer=acme、amount=1200、status=pending。✓ 已複製
    → 附加的列索引

結果: 臨時分析 + 記錄,無需離開聊天。

注意事項
  • 公式在寫入時重新計算,可能會覆蓋你關心的儲存格 — 添加資料時,使用 append_table_rows,而非範圍寫入
搭配使用: filesystem

如何從 markdown 範本產生 Google 文件

👤 任何產生提案、報告或範本化文件的人 ⏱ ~10 min beginner

何時使用: 你想要豐富的文件輸出(表格、標題),而無需學習 Google 的 API。

步驟
  1. 在 markdown 中起草
    根據 [brief] 為 ACME 撰寫客戶提案。輸出為 markdown。✓ 已複製
    → Markdown 草稿
  2. 轉換為文件
    建立新的 Google 文件,標題為 'ACME Proposal 2026-04',包含該內容。使用 create_doc,然後 batch_update_doc 以保留格式。✓ 已複製
    → 文件 URL

結果: 一個格式正確的文件,你可以分享。

注意事項
  • create_doc 只接受純文字 — 格式需要後續 batch_update — 對於豐富的文件,始終使用兩步流程

組合

與其他 MCP 搭配,撬動十倍槓桿

google-workspace + notion

將會議準備文件鏡像到 Notion 以提高團隊可見性

對於今天的每場會議,將 Google 文件議程複製到「會議記錄」下的新 Notion 頁面,以日期作為標題。✓ 已複製
google-workspace + filesystem

將雲端硬碟資料夾匯出到本地磁碟作為備份

將雲端硬碟資料夾 'Client Contracts 2025' 中的每個檔案下載到 /backups/drive/contracts-2025/。✓ 已複製
google-workspace + github

交叉參考 GitHub 問題與日曆站會

在我上午 10 點的站會前,列出分配給我的開放 GitHub 問題,並將摘要附加到今天的站會活動描述。✓ 已複製

工具

此 MCP 暴露的能力

工具輸入參數何時呼叫成本
search_gmail_messages query: str, max_results?: int 按寄件者、主旨、日期查找訊息 1 個 Gmail API 呼叫
draft_gmail_message to, subject, body, thread_id? 對於 AI 工作流程,偏好起草而非寄送 1 個 API 呼叫
send_gmail_message to, subject, body 僅當使用者明確要求寄送時 1 個 API 呼叫(不可逆轉)
get_events calendar_id?, time_min, time_max 在時間視窗中取得活動 1 個日曆 API 呼叫
manage_event action, event_id?, summary?, attendees?, time? 建立 / 更新 / 刪除活動 1 個 API 呼叫
read_sheet_values spreadsheet_id, range 讀取儲存格範圍 1 個試算表 API 呼叫
append_table_rows spreadsheet_id, table_id, rows 安全附加,無需覆蓋公式 1 個試算表 API 呼叫
create_doc title, content? 啟動新文件 1 個文件 API 呼叫
batch_update_doc doc_id, requests[] 在 create_doc 後套用格式 1 個文件 API 呼叫(已批次)
search_drive_files query, max_results? 按名稱 / 擁有者尋找檔案 1 個雲端硬碟 API 呼叫

成本與限制

運行它的成本

API 配額
Gmail:250 配額單位 / 使用者 / 秒。試算表:300 次讀取 / 分鐘 / 使用者。雲端硬碟:1000 次查詢 / 100 秒 / 使用者。
每次呼叫 Token 數
'complete' 層級的工具清單很大(約 100 個工具);使用 'core' 層級以保持成本低廉
費用
使用 Google 帳戶免費
提示
使用 --tool-tier core 執行,僅當你實際需要 Slides / Forms / Script 時才切換到 extended。

安全

權限、密鑰、影響範圍

最小權限: 僅授予你實際使用的服務的範圍(例如 gmail.readonly、calendar.readonly)
憑證儲存: GOOGLE_OAUTH_CLIENT_ID / _SECRET 在環境中;重新整理令牌持久化在磁碟上
資料出站: 你的文件 / 電子郵件內容透過 MCP 伺服器傳送給你選擇的 LLM 提供者
切勿授予: 如果你不需要寄送,不授予 gmail.send 如果 drive.file 足夠,不授予 drive(完整) 不授予管理員範圍

故障排查

常見錯誤與修復

invalid_grant / 令牌已過期或被撤銷

刪除快取的令牌檔案並重新執行身分驗證流程。

驗證: ls ~/.config/google_workspace_mcp/tokens
403 權限不足

使用所需的範圍重新同意 — 儲存的令牌還沒有它。

API 未啟用

在 Google Cloud Console 中為你的專案啟用特定 API(例如文件 API)。

超出使用者配額

Gmail 和試算表有每分鐘上限。批次讀取;使用指數退避進行重試。

替代方案

google_workspace_mcp 對比其他方案

替代方案何時用它替代權衡
官方 Gmail MCP(Anthropic 遠端)你想要 Anthropic 託管的 OAuth,無需設定僅限 Gmail;沒有 Drive / Docs / Sheets
zapier MCP你已經為 Zapier 付費,想要零設定每次呼叫需要付費;延遲更高

更多

資源

📖 閱讀 GitHub 上的官方 README

🐙 查看未解決的 issue

🔍 瀏覽全部 400+ MCP 伺服器和 Skills