Skip to main content
Glama

gws-mcp-server

npm version license

MCP 服务器,将 Google Workspace CLI (gws) 操作公开为 Model Context Protocol 工具。

为什么?

gws CLI 曾经内置了一个 MCP 服务器,但在 v0.8.0 中被移除,因为它公开了 200-400 个工具,导致 MCP 客户端的上下文窗口膨胀。此服务器采用精选方法:您可以选择要公开的 Google 服务,并且只有一组重点突出、范围狭窄的高价值操作被注册为工具。

先决条件

  • Node.js 18+

  • 已安装并完成身份验证的 gws CLI (npm install -g @googleworkspace/cli && gws auth login)

快速入门

# Install
npm install -g gws-mcp-server

# Or run from source
git clone https://github.com/conorbronsdon/gws-mcp-server.git
cd gws-mcp-server
npm install && npm run build

配置

Claude Code (.mcp.json)

{
  "mcpServers": {
    "google-workspace": {
      "command": "npx",
      "args": [
        "gws-mcp-server",
        "--services", "drive,sheets,calendar,docs,gmail"
      ]
    }
  }
}

Claude Desktop (claude_desktop_config.json)

{
  "mcpServers": {
    "google-workspace": {
      "command": "npx",
      "args": [
        "gws-mcp-server",
        "--services", "drive,sheets,calendar"
      ]
    }
  }
}

选项

标志

描述

默认值

--services, -s

要公开的服务列表(逗号分隔)

所有服务

--gws-path

gws 二进制文件的路径

gws

可用服务与工具

drive (8 个工具)

  • drive_files_list — 搜索并列出文件

  • drive_files_get — 获取文件元数据

  • drive_files_create — 创建文件(可选上传)

  • drive_files_copy — 复制文件(适用于格式转换)

  • drive_files_update — 更新文件元数据/内容

  • drive_files_delete — 删除文件

  • drive_files_export — 将 Google Workspace 文件(文档、表格、幻灯片)导出为其他格式

  • drive_permissions_create — 共享文件

sheets (4 个工具)

  • sheets_get — 获取电子表格元数据

  • sheets_values_get — 读取单元格值

  • sheets_values_update — 写入单元格值

  • sheets_values_append — 追加行

calendar (5 个工具)

  • calendar_events_list — 列出活动

  • calendar_events_get — 获取活动详情

  • calendar_events_insert — 创建活动

  • calendar_events_update — 更新活动

  • calendar_events_delete — 删除活动

docs (3 个工具)

  • docs_get — 获取文档内容

  • docs_create — 创建文档

  • docs_batchUpdate — 应用文档更新

gmail (4 个工具)

  • gmail_messages_list — 搜索邮件

  • gmail_messages_get — 读取邮件

  • gmail_threads_list — 搜索会话

  • gmail_threads_get — 读取完整会话

总计:24 个工具(旧实现中为 200-400 个)

添加新工具

编辑 src/services.ts 以添加工具定义。每个工具直接映射到一个 gws CLI 命令:

{
  name: "drive_files_list",           // MCP tool name
  description: "List files in Drive", // Shown to AI
  command: ["drive", "files", "list"],// gws CLI args
  params: [                           // Maps to --params JSON
    { name: "q", description: "Search query", type: "string", required: false },
  ],
  bodyParams: [                       // Maps to --json body
    { name: "name", description: "File name", type: "string", required: true },
  ],
}

架构

MCP Client (Claude) ←→ stdio ←→ gws-mcp-server ←→ gws CLI ←→ Google APIs

该服务器是一个轻量级包装器:它将 MCP 工具调用转换为 gws CLI 调用,根据需要传递 --params--json,并返回 JSON 输出。


免责声明

在此帐户上表达的所有观点、意见和陈述均仅代表我个人,并以个人身份做出。它们不反映,也不应被解释为反映 Modular 的观点、立场或政策。此帐户与 Modular 没有任何关联,未获得其授权,也未得到其认可。

许可证

MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/conorbronsdon/gws-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server