google_workspace_mcp

GitHub
2k 590 较难 1 次阅读 昨天MITAgent语言模型图像开发框架
AI 解读 由 AI 自动生成,仅供参考

google_workspace_mcp 是一款功能全面的开源工具,旨在让人工智能助手通过自然语言直接操控谷歌全家桶服务。它无缝连接 Gmail、日历、文档、表格、幻灯片、云端硬盘、聊天及任务等核心应用,让用户能用对话方式完成邮件收发、日程安排、文件编辑和数据检索等复杂操作,彻底打破了传统图形界面与 AI 交互之间的壁垒。

该工具主要解决了现有 AI 集成方案中功能碎片化、多用户支持不足以及部署安全性欠缺的痛点。无论是个人用户希望提升办公效率,还是企业需要为整个团队构建安全统一的 AI 后端,它都能提供稳定可靠的解决方案。

google_workspace_mcp 非常适合开发者、技术研究人员以及希望深度定制 AI 工作流的高级用户。其独特的技术亮点包括原生支持 OAuth 2.1 协议,实现了安全的无状态多用户认证模式;支持外部认证服务器,便于企业集中管控权限;同时提供功能强大的命令行界面(CLI),可轻松集成到 Claude Code、VS Code 等各类开发环境中。凭借对免费谷歌账号及各类企业版计划的广泛兼容,它是目前生态中最完整且适合组织级部署的谷歌工作区 MCP 服务器之一。

使用场景

某科技公司的项目经理需要在每周例会后,迅速整理会议记录、更新项目进度表并同步给所有相关人员。

没有 google_workspace_mcp 时

  • 手动切换繁琐:需要在 Gmail、Google Docs、Sheets 和 Calendar 等多个网页标签间反复跳转,复制粘贴数据极易出错。
  • 信息同步滞后:会议结束后需人工逐一向团队成员发送邮件摘要,并手动在任务列表(Tasks)中创建待办事项,耗时且容易遗漏。
  • 数据一致性差:口头讨论的截止日期变更,往往忘记同步更新到共享日历或项目排期表中,导致团队协作出现时间偏差。
  • 检索效率低下:查找过往相关项目的会议纪要或附件时,需在 Google Drive 和邮件中通过关键词反复搜索,难以快速定位上下文。

使用 google_workspace_mcp 后

  • 自然语言一键联动:直接在 AI 助手对话框输入“根据刚才的会议录音整理纪要存入 Docs,并提取关键数据更新 Sheets",google_workspace_mcp 自动跨应用执行操作。
  • 自动化工作流闭环:AI 自动将生成的任务项添加至 Tasks,向参会人员发送包含文档链接的 Gmail 通知,并即时调整 Calendar 中的下次会议时间。
  • 实时数据强一致:所有对话中确认的日期变更,由 google_workspace_mcp 实时写入日历和表格,确保全员看到的永远是最新状态。
  • 语义化精准检索:只需询问“上个季度关于 API 重构的讨论文件”,google_workspace_mcp 即可结合 Drive 内容和邮件历史,直接返回最相关的文档片段。

google_workspace_mcp 将原本割裂的办公套件转化为一个可被自然语言统一调度的智能中枢,让协作流程从“人找工具”变为“工具随人动”。

运行环境要求

操作系统
  • Linux
  • macOS
  • Windows
GPU

未说明

内存

未说明

依赖
notes该工具是一个 Google Workspace MCP 服务器,主要用于集成 Gmail、Drive、日历等谷歌服务,不涉及深度学习模型推理,因此无 GPU 需求。运行前需在 Google Cloud 控制台创建项目并配置 OAuth 2.0 桌面应用凭证(Client ID 和 Secret)。支持通过 uvx 直接运行或作为 Claude Desktop 扩展安装。开发模式下需设置环境变量 OAUTHLIB_INSECURE_TRANSPORT=1。
python3.10+
uv/uvx
FastMCP
google_workspace_mcp hero image

快速开始

Google Workspace MCP 服务器

许可证:MIT Python 3.10+ PyPI PyPI 下载量 官网

通过所有 MCP 客户端、AI 助手和开发者工具,实现对 Google 日历、云端硬盘、Gmail、文档、表格、幻灯片、表单、任务、联系人和聊天的完全自然语言控制。包含功能齐全的命令行界面,可与 Claude Code 和 Codex 等工具配合使用!

功能最全面的 Google Workspace MCP 服务器,支持远程 OAuth2.1 多用户认证,并提供一键式 Claude 安装。凭借原生 OAuth 2.1、无状态模式和外部认证服务器支持,它是唯一一款可供整个组织集中且安全托管的 Workspace MCP!

支持所有免费 Google 账号(Gmail、文档、云端硬盘等)及 Google Workspace 各种方案(Starter、Standard、Plus、Enterprise、Non Profit),并扩展了聊天和 Spaces 等应用选项。

您是否对私有、托管云实例感兴趣?我们可以安排。

观看实际演示:


概述

Workspace MCP 是集成所有主要 Google Workspace 服务与 AI 助手的最完整 MCP 服务器。它既支持单用户操作,也支持通过 OAuth 2.1 进行多用户认证,是自定义应用程序的强大后端。基于 FastMCP 构建,具有卓越性能、先进的认证处理、服务缓存和精简的开发模式。整个工具集均可用于命令行界面,支持本地和远程实例。

简化设置:现采用 Google Desktop OAuth 客户端——无需配置重定向 URI 或端口!

特性

12 项服务 — Gmail · 云端硬盘 · 日历 · 文档 · 表格 · 幻灯片 · 表单 · 聊天 · Apps Script · 任务 · 联系人 · 搜索

📧 Gmail — 完整的电子邮件管理,端到端覆盖
📁 云端硬盘 — 文件操作,支持共享、权限及 Office 格式
📅 日历 — 全面的事件管理,具备高级功能
📝 文档 — 深度、精细化编辑、格式化和评论
📊 表格 — 灵活的单元格管理、格式化和条件规则
🖼️ 幻灯片 — 演示文稿创建、更新和内容操作
📋 表单 — 创建、发布设置和回复管理
💬 聊天 — 空间管理、消息传递和反应

⚡ Apps Script — 跨应用工作流自动化
 项目、部署、版本、执行、调试

✅ 任务 — 带层次结构的任务和清单管理
👤 联系人 — People API,支持群组和批量操作
🔍 自定义搜索 — 可编程搜索引擎集成


🔐 认证与安全
OAuth 2.0 和 2.1 · 自动刷新令牌 · 多用户承载令牌 · 传输感知回调 · CORS 代理


快速入门

设置凭据 → 选择启动命令 → 连接客户端

# 1. 凭据
export GOOGLE_OAUTH_CLIENT_ID="..."
export GOOGLE_OAUTH_CLIENT_SECRET="..."

# 2. 启动 — 选择层级
uvx workspace-mcp --tool-tier core       # 基础工具
uvx workspace-mcp --tool-tier extended   # 基础 + 管理操作
uvx workspace-mcp --tool-tier complete   # 全部

# 或者选择性地运行特定服务
uv run main.py --tools gmail drive calendar

凭据设置 → · 所有启动选项 → · 层级详情 →

环境变量参考
变量 用途
🔐 认证
GOOGLE_OAUTH_CLIENT_ID 必填 来自 Google Cloud 的 OAuth 客户端 ID
GOOGLE_OAUTH_CLIENT_SECRET 必填 OAuth 客户端密钥
OAUTHLIB_INSECURE_TRANSPORT 必填* 开发时设为 1 — 允许使用 http:// 重定向
USER_GOOGLE_EMAIL 单用户认证的默认邮箱
GOOGLE_CLIENT_SECRET_PATH 自定义 client_secret.json 文件路径
GOOGLE_MCP_CREDENTIALS_DIR 凭据存储目录 — 默认 ~/.google_workspace_mcp/credentials
🖥️ 服务器
WORKSPACE_MCP_BASE_URI 服务器基础 URI(不带端口)— 默认 http://localhost
WORKSPACE_MCP_PORT 监听端口 — 默认 8000
WORKSPACE_MCP_HOST 绑定主机 — 默认 0.0.0.0
WORKSPACE_EXTERNAL_URL 反向代理部署时的外部 URL
WORKSPACE_ATTACHMENT_DIR 下载附件的目录 — 默认 ~/.workspace-mcp/attachments/
WORKSPACE_MCP_URL CLI 使用的远程 MCP 端点 URL
ALLOWED_FILE_DIRS 本地文件读取的白名单,用冒号分隔
🔑 OAuth 2.1 和多用户
MCP_ENABLE_OAUTH21 设置为 true 启用 OAuth 2.1 多用户支持
EXTERNAL_OAUTH21_PROVIDER 设置为 true 使用携带令牌的外部 OAuth 流程
WORKSPACE_MCP_STATELESS_MODE 设置为 true 实现无状态的容器友好型运行
GOOGLE_OAUTH_REDIRECT_URI 覆盖 OAuth 回调 URL — 默认自动构建
OAUTH_CUSTOM_REDIRECT_URIS 逗号分隔的额外重定向 URI 列表
OAUTH_ALLOWED_ORIGINS 逗号分隔的额外 CORS 域列表
WORKSPACE_MCP_OAUTH_PROXY_STORAGE_BACKEND 可选值为 memorydiskvalkey — 见 存储后端
FASTMCP_SERVER_AUTH_GOOGLE_JWT_SIGNING_KEY 用于 OAuth 代理存储的自定义加密密钥
🔍 自定义搜索
GOOGLE_PSE_API_KEY 可编程搜索引擎的 API 密钥
GOOGLE_PSE_ENGINE_ID PSE 的搜索引擎 ID

*仅开发时需要。Claude Desktop 会将凭据安全地存储在操作系统钥匙串中——只需在扩展设置中配置一次即可。


一键安装 Claude Desktop

.dxt 包含服务器、依赖项和清单文件——下载后双击即可完成安装,无需终端操作或编辑 JSON 文件。

  1. 下载 最新的 google_workspace_mcp.dxt 文件,访问 Releases
  2. 安装 — 双击该文件,Claude Desktop 会提示您进行安装
  3. 配置 — 进入设置 → 扩展程序 → Google Workspace MCP,粘贴您的 OAuth 凭据
  4. 使用 — 打开一个新的 Claude 对话,即可调用任何 Google Workspace 工具

先决条件

Python 3.10+ · uv/uvx · Google Cloud 项目 并具备 OAuth 2.0 凭据

配置

Google Cloud 设置
  1. 创建项目打开控制台 → → 创建新项目

  2. 创建 OAuth 凭据 — API 和服务 → 凭据 → 创建凭据 → OAuth 客户端 ID

    • 选择 桌面应用(无需设置重定向 URI!)
    • 下载并记下您的客户端 ID 和客户端密钥
  3. 启用 API — API 和服务 → 库,然后逐一启用以下服务:

    日历 云端硬盘 Gmail 文档
    表格 幻灯片 表单 任务
    Chat People 自定义搜索 Apps Script
  4. 设置凭据 — 参见上方的 环境变量参考,或者:

    export GOOGLE_OAUTH_CLIENT_ID="your-client-id"
    export GOOGLE_OAUTH_CLIENT_SECRET="your-secret"
    

完整的 OAuth 文档 → · 凭据设置详情 →

Google 自定义搜索设置

自定义搜索配置 ← 启用网络搜索功能

1. 创建搜索引擎

programmablesearchengine.google.com
/controlpanel/create

→ 配置特定站点或整个网页
→ 记下您的引擎 ID (cx)

打开控制面板 →

2. 获取 API 密钥

developers.google.com
/custom-search/v1/overview

→ 创建或选择项目
→ 启用自定义搜索 API
→ 创建凭据(API 密钥)

获取 API 密钥 →

3. 设置变量

export GOOGLE_PSE_API_KEY=\
  "your-api-key"
export GOOGLE_PSE_ENGINE_ID=\
  "your-engine-id"

在环境变量中配置

快速设置指南 ← 分步说明

完整设置流程:

  1. 创建搜索引擎 - 访问 控制面板

    • 选择“搜索整个网页”或指定特定站点
    • 复制搜索引擎 ID(格式如:017643444788157684527:6ivsjbpxpqw
  2. 启用 API 并获取密钥 - 访问 Google 开发者控制台

    • 在您的项目中启用“自定义搜索 API”
    • 创建凭据 → API 密钥
    • 建议将密钥限制为仅用于自定义搜索 API
  3. 配置环境变量 - 添加到您的 shell 或 .env 文件中:

    export GOOGLE_PSE_API_KEY="AIzaSy..."
    export GOOGLE_PSE_ENGINE_ID="01764344478..."
    

完整文档 →

启动服务器

📌 传输模式指南:对于所有现代 MCP 客户端,包括 Claude Code、VS Code MCP 和 MCP Inspector,请使用 流式 HTTP 模式--transport streamable-http)。Stdio 模式仅适用于不完全支持 MCP 规范的客户端。

启动命令 ← 选择您的启动模式

▶ 传统模式

uv run main.py

⚠️ Stdio 模式(仅限不完全支持 MCP 的客户端)

◆ HTTP 模式(推荐)

uv run main.py \
  --transport streamable-http

✅ 完全符合 MCP 规范及 OAuth 2.1

@ 单用户模式

uv run main.py \
  --single-user

简化身份验证 ⚠️ 不能与 OAuth 2.1 模式同时使用

高级选项 ← 工具选择、层级与 Docker

▶ 选择性加载工具

# 只加载特定服务
uv run main.py --tools gmail drive calendar
uv run main.py --tools sheets docs

# 结合其他标志
uv run main.py --single-user --tools gmail

🔒 只读模式

# 请求只读权限范围,并禁用写入工具
uv run main.py --read-only

# 结合特定工具或层级
uv run main.py --tools gmail drive --read-only
uv run main.py --tool-tier core --read-only

只读模式通过以下方式提供安全受限的访问:

  • 仅请求 *.readonly OAuth 范围(例如 gmail.readonlydrive.readonly
  • 在启动时自动过滤掉需要写入权限的工具
  • 允许对所有服务执行读取操作:列出、获取、搜索和导出

🔐 细粒度权限

# 按服务设置权限级别
uv run main.py --permissions gmail:organize drive:readonly

# 将权限与层级筛选结合
uv run main.py --permissions gmail:send drive:full --tool-tier core

细粒度权限模式可逐项控制各服务的权限范围:

  • 格式:service:level(每项服务一个条目)
  • Gmail 权限级别:readonlyorganizedraftssendfull(累积)
  • Tasks 权限级别:readonlymanagefull(累积;manage 允许创建/更新/移动,但禁止删除和清除已完成任务)
  • 其他服务目前支持:readonlyfull
  • --permissions--read-only 互斥
  • --permissions 不能与 --tools 同时使用;启用的服务由 --permissions 条目决定(可选地通过 --tool-tier 进行筛选)
  • 使用 --tool-tier 时,仅启用对应层级的工具,并且仅导入包含该层级工具的服务

★ 工具层级

uv run main.py --tool-tier core      # ● 仅核心工具
uv run main.py --tool-tier extended  # ◐ 核心工具 + 其他
uv run main.py --tool-tier complete  # ○ 所有可用工具

◆ Docker 部署

docker build -t workspace-mcp .
docker run -p 8000:8000 -v $(pwd):/app \
  workspace-mcp --transport streamable-http

# 通过环境变量选择工具
docker run -e TOOL_TIER=core workspace-mcp
docker run -e TOOLS="gmail drive calendar" workspace-mcp

可用服务gmaildrivecalendardocssheetsformstaskscontactschatsearch

CLI

workspace-cli 命令会列出工具并调用正在运行的服务器上的这些工具——它采用加密且基于磁盘的 OAuth 令牌缓存,因此您只需进行一次身份验证。首次运行时,它会打开浏览器以获取 Google 同意;后续运行则会自动重用已缓存的令牌。

令牌以加密形式存储在 ~/.workspace-mcp/cli-tokens/ 中,使用在 ~/.workspace-mcp/.cli-encryption-key 自动生成的 Fernet 密钥进行加密。

workspace-cli 命令 ← 持久化 OAuth,无需每次调用都重新认证

▶ 列出工具

uv run workspace-cli list
uv run workspace-cli --url https://custom.server/mcp list

# 或者,如果已全局安装:
workspace-cli list
workspace-cli --url https://custom.server/mcp list

查看所有可用工具

◆ 调用工具

uv run workspace-cli call search_gmail_messages \
  query="is:unread" max_results=5

使用 key=value 参数执行工具

使用 --urlWORKSPACE_MCP_URL 环境变量设置远程端点的 URL。

高级:FastMCP CLI ← 检查、安装、发现

上游 FastMCP CLI 也已捆绑提供,它包含用于模式检查、客户端安装和编辑器发现的额外命令。请注意,fastmcp 使用内存中的令牌存储,因此每次调用都可能重新触发 OAuth 流程。

fastmcp inspect fastmcp_server.py                        # 打印工具、资源、提示
fastmcp install claude-code fastmcp_server.py             # 一键式客户端设置
fastmcp install cursor fastmcp_server.py
fastmcp discover                                          # 查找在编辑器中配置的服务器

有关完整命令参考,请参阅 fastmcp --helpFastMCP CLI 文档

工具层级

该服务器将工具组织成三个递进的层级,以简化部署。请根据您的使用需求和 API 配额要求选择合适的层级。

可用层级

核心 (--tool-tier core) 日常任务所需的基本工具。非常适合轻量级使用且对 API 配额要求较低的情况。包括所有服务中的搜索、读取、创建以及基本的修改操作。

扩展 (--tool-tier extended) 核心功能加上管理工具。新增标签、文件夹、批量操作和高级搜索功能。适合常规使用且对 API 需求适中的场景。

完整 (--tool-tier complete) 全面的 API 访问权限,包括评论、页眉/页脚、发布设置以及管理功能。适用于需要最大功能性的高级用户。

重要说明

core 开始,并根据需要升级 层级具有累积性——每一层都包含前一层的所有功能 可结合 --tools 对特定服务进行混合搭配 配置位于 core/tool_tiers.yaml 所有层级均包含身份验证

使用示例

# 基本层级选择
uv run main.py --tool-tier core                            # 仅启动基本工具
uv run main.py --tool-tier extended                        # 扩展到包含管理功能
uv run main.py --tool-tier complete                        # 启用所有可用功能

# 结合层级选择按需加载特定服务
uv run main.py --tools gmail drive --tool-tier core        # 为特定服务启用核心工具
uv run main.py --tools gmail --tool-tier extended          # 仅启用 Gmail 的扩展功能
uv run main.py --tools docs sheets --tool-tier complete    # 全面访问 Docs 和 Sheets

# 将层级选择与细粒度权限级别结合使用
uv run main.py --permissions gmail:organize drive:full --tool-tier core

📋 凭证配置

🔑 OAuth 凭证设置 ← 所有安装的必要步骤

🚀 环境变量

export GOOGLE_OAUTH_CLIENT_ID=\
  "your-client-id"
export GOOGLE_OAUTH_CLIENT_SECRET=\
  "your-secret"

最适合生产环境

📁 基于文件

# 下载并放置于项目根目录
client_secret.json

# 或指定自定义路径
export GOOGLE_CLIENT_SECRET_PATH=\
  /path/to/secret.json

传统方法

⚡ .env 文件

cp .env.oauth21 .env
# 编辑 .env 文件填写凭证

最适合开发环境

📖 凭证加载详情 ← 了解优先级及最佳实践

加载优先级

  1. 环境变量(export VAR=value
  2. 项目根目录下的 .env 文件(注意:如果您通过 uvx 而不是从仓库目录运行 uv run,您将启动一个独立进程,该进程与您的仓库克隆无关,因此不会找到您的 .env 文件,除非您直接指定它)
  3. 通过 GOOGLE_CLIENT_SECRET_PATH 加载的 client_secret.json
  4. 项目根目录下的默认 client_secret.json

为何使用环境变量?

  • 适用于 Docker/K8s——原生容器支持
  • 适用于云平台——Heroku、Railway、Vercel
  • 适用于 CI/CD 流水线——GitHub Actions、Jenkins
  • 无需将密钥提交到 Git——确保凭证安全
  • 易于轮换——无需更改代码即可更新凭证

🧰 可用工具

注意:所有工具均支持通过 @require_google_service() 装饰器实现自动身份验证,并具备 30 分钟的服务缓存机制。

📅 Google 日历 calendar_tools.py

工具 层级 描述
list_calendars 核心 列出可访问的日历
get_events 核心 检索带有时间范围筛选的事件
manage_event 核心 创建、更新或删除日历事件
manage_out_of_office 扩展 创建、列出、更新或删除“不在办公室”事件

📁 Google 云端硬盘 drive_tools.py

工具 层级 描述
search_drive_files 核心 使用查询语法搜索文件
get_drive_file_content 核心 读取文件内容(Office 格式)
get_drive_file_download_url 核心 将 Drive 文件下载到本地磁盘
create_drive_file 核心 创建文件或从 URL 获取
create_drive_folder 核心 在 Drive 或共享云端硬盘中创建空文件夹
import_to_google_doc 核心 将文件(MD、DOCX、HTML 等)导入为 Google 文档
get_drive_shareable_link 核心 获取文件的可分享链接
list_drive_items 扩展 列出文件夹内容
copy_drive_file 扩展 复制现有文件(模板),可选重命名
update_drive_file 扩展 更新文件元数据,在不同文件夹之间移动
manage_drive_access 扩展 授予、更新、撤销权限,以及转移所有权
set_drive_file_permissions 扩展 设置链接共享和文件级别的共享设置
get_drive_file_permissions 完整 获取详细的文件权限
check_drive_file_public_access 完整 检查公开共享状态

📧 Gmail gmail_tools.py

工具 层级 描述
search_gmail_messages 核心 使用 Gmail 操作符进行搜索
get_gmail_message_content 核心 检索邮件内容
get_gmail_messages_content_batch 核心 批量检索邮件内容
send_gmail_message 核心 发送电子邮件
get_gmail_thread_content 扩展 获取完整线程内容
modify_gmail_message_labels 扩展 修改邮件标签
list_gmail_labels 扩展 列出可用标签
list_gmail_filters 扩展 列出 Gmail 过滤器
manage_gmail_label 扩展 创建/更新/删除标签
manage_gmail_filter 扩展 创建或删除 Gmail 过滤器
draft_gmail_message 扩展 创建草稿
get_gmail_threads_content_batch 完整 批量检索线程内容
batch_modify_gmail_message_labels 完整 批量修改标签
start_google_auth 完整 旧版 OAuth 2.0 认证(启用 OAuth 2.1 后禁用)
📎 邮件附件 ← 附带文件发送邮件

send_gmail_messagedraft_gmail_message 均支持通过两种方式添加附件:

选项 1:文件路径(仅限本地服务器)

attachments=[{"path": "/path/to/report.pdf"}]

从磁盘读取文件,自动检测 MIME 类型。可选覆盖 filename

选项 2:Base64 编码内容(适用于所有环境)

attachments=[{
    "filename": "report.pdf",
    "content": "JVBERi0xLjQK...",  # base64 编码
    "mime_type": "application/pdf"   # 可选
}]

⚠️ 中央托管服务器:当 MCP 服务器运行在远程环境(云、共享实例)时,无法访问您的本地文件系统。请使用 选项 2,即 Base64 编码的内容。您的 MCP 客户端必须在发送前对文件进行编码。

📥 下载附件存储 ← 下载文件保存的位置

在下载 Gmail 附件(get_gmail_attachment_content)或 Drive 文件(get_drive_file_download_url)时,文件会被保存到一个持久化的本地目录,而不是工作目录中的临时文件夹。

默认位置: ~/.workspace-mcp/attachments/

文件会以原始文件名加上一个简短的 UUID 后缀来确保唯一性(例如:invoice_a1b2c3d4.pdf)。在 stdio 模式下,工具会返回文件的绝对路径,以便直接访问文件系统。而在 HTTP 模式下,则会通过 /attachments/{file_id} 端点返回下载链接。

要自定义存储目录:

export WORKSPACE_ATTACHMENT_DIR="/path/to/custom/dir"

已保存的文件会在 1 小时后过期,并自动清理。

📝 Google 文档 docs_tools.py

工具 层次 描述
get_doc_content 核心 提取文档文本
create_doc 核心 创建新文档
modify_doc_text 核心 通过标签/段落定位、支持追加到段落、高级排版和链接管理,插入、替换并富格式化文本
search_docs 扩展 按名称查找文档
find_and_replace_doc 扩展 查找并替换文本
list_docs_in_folder 扩展 列出文件夹中的文档
insert_doc_elements 扩展 添加表格、列表、分页符
update_paragraph_style 扩展 应用高级段落样式,包括标题、间距、方向、分页控制、底纹以及带嵌套的项目符号/编号/复选框列表
get_doc_as_markdown 扩展 将文档导出为带格式的 Markdown,可选添加注释
insert_doc_image 完整 从云端硬盘/URL 插入图片
update_doc_headers_footers 完整 创建或更新页眉和页脚,并确保正确地根据段落进行写入
batch_update_doc 完整 执行原子性的多步骤 Docs API 操作,包括命名范围、分节符、文档/节布局、页眉/页脚创建、基于段落的插入、图片、表格以及富格式化等
inspect_doc_structure 完整 分析文档结构,包括安全的插入点、表格、分节符、页眉/页脚以及命名范围
export_doc_to_pdf 扩展 将文档导出为 PDF
create_table_with_data 完整 创建数据表格
debug_table_structure 完整 调试表格问题
list_document_comments 完整 列出所有文档评论
manage_document_comment 完整 创建、回复或解决评论

📊 Google 表格 sheets_tools.py

工具 层次 描述
read_sheet_values 核心 读取单元格区域
modify_sheet_values 核心 写入/更新/清除单元格
create_spreadsheet 核心 创建新的电子表格
list_spreadsheets 扩展 列出可访问的电子表格
get_spreadsheet_info 扩展 获取电子表格元数据
format_sheet_range 扩展 应用颜色、数字格式、文本换行、对齐方式、加粗/斜体、字体大小等
create_sheet 完整 向现有文件添加工作表
list_spreadsheet_comments 完整 列出所有电子表格评论
manage_spreadsheet_comment 完整 创建、回复或解决评论
manage_conditional_formatting 完整 添加、更新或删除条件格式规则

🖼️ Google 幻灯片 slides_tools.py

工具 层次 描述
create_presentation 核心 创建新演示文稿
get_presentation 核心 获取演示文稿详情
batch_update_presentation 扩展 应用多项更新
get_page 扩展 获取特定幻灯片信息
get_page_thumbnail 扩展 生成幻灯片缩略图
list_presentation_comments 完整 列出所有演示文稿评论
manage_presentation_comment 完整 创建、回复或解决评论

📋 Google 表单 forms_tools.py

工具 层次 描述
create_form 核心 创建新表单
get_form 核心 获取表单详情及 URL
set_publish_settings 完整 配置表单设置
get_form_response 完整 获取单个回答
list_form_responses 扩展 分页列出所有回答
batch_update_form 完整 批量更新(题目、设置)

✓ Google 任务 tasks_tools.py

工具 层次 描述
list_tasks 核心 列出带筛选的任务
get_task 核心 获取任务详情
manage_task 核心 创建、更新、删除或移动任务
list_task_lists 完整 列出任务清单
get_task_list 完整 获取任务清单详情
manage_task_list 完整 创建、更新、删除任务清单,或清除已完成的任务

👤 Google 联系人 contacts_tools.py

工具 层次 描述
search_contacts 核心 按姓名、邮箱、电话搜索联系人
get_contact 核心 获取详细的联系人信息
list_contacts 核心 分页列出联系人
manage_contact 核心 创建、更新或删除联系人
list_contact_groups 扩展 列出联系人群组/标签
get_contact_group 扩展 获取群组详情及其成员
manage_contacts_batch 完整 批量创建、更新或删除联系人
manage_contact_group 完整 创建、更新、删除群组,或修改成员关系

💬 Google Chat chat_tools.py

工具 等级 描述
list_spaces 扩展 列出聊天空间/聊天室
get_messages 核心 获取空间消息
send_message 核心 向空间发送消息
search_messages 核心 跨聊天历史搜索
create_reaction 核心 为消息添加表情反应
download_chat_attachment 扩展 从聊天消息中下载附件

🔍 Google 自定义搜索 search_tools.py

工具 等级 描述
search_custom 核心 执行网页搜索(支持通过 sites 参数限制站点)
get_search_engine_info 完整 获取搜索引擎元数据

⚡ Google Apps Script apps_script_tools.py

工具 等级 描述
list_script_projects 核心 列出可访问的 Apps Script 项目
get_script_project 核心 获取包含所有文件的完整项目
get_script_content 核心 检索特定文件内容
create_script_project 核心 创建新的独立或绑定项目
update_script_content 核心 更新或创建脚本文件
run_script_function 核心 执行带参数的函数
list_deployments 扩展 列出所有项目部署
manage_deployment 扩展 创建、更新或删除脚本部署
list_script_processes 扩展 查看最近的执行记录和状态

工具等级说明:
核心 — 基本功能所需的核心工具 · 最小化 API 使用 · 入门级
扩展 — 核心功能 + 额外特性 · 常规使用 · 功能更全面
完整 — 包含高级特性的所有可用工具 · 高级用户 · 完全 API 访问权限


连接到 Claude Desktop

该服务器支持两种传输模式:

Stdio 模式(旧版 - 适用于不完全支持 MCP 的客户端)

⚠️ 重要提示: Stdio 模式是针对那些未正确实现带有 OAuth 2.1 和可流式传输 HTTP 支持的 MCP 规范的客户端的 遗留回退方案Claude Code 及其他现代 MCP 客户端应使用可流式传输 HTTP 模式 (--transport streamable-http),以实现正确的 OAuth 流程和多用户支持。

通常情况下,您应该使用 Claude Desktop 的一键 DXT 安装包。如果您因某种原因无法使用,则可以通过 claude_desktop_config.json 手动配置。

手动 Claude 配置(替代方案)

📝 Claude Desktop JSON 配置 ← 单击以获取手动设置说明
  1. 打开 Claude Desktop 设置 → 开发者 → 编辑配置

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%\Claude\claude_desktop_config.json
  2. 添加服务器配置:

{
  "mcpServers": {
    "google_workspace": {
      "command": "uvx",
      "args": ["workspace-mcp"],
      "env": {
        "GOOGLE_OAUTH_CLIENT_ID": "您的客户端 ID",
        "GOOGLE_OAUTH_CLIENT_SECRET": "您的密钥",
        "OAUTHLIB_INSECURE_TRANSPORT": "1"
      }
    }
  }
}

连接到 LM Studio

在 LM Studio 中添加一个新的 MCP 服务器(设置 → MCP 服务器),使用相同的 JSON 格式:

{
  "mcpServers": {
    "google_workspace": {
      "command": "uvx",
      "args": ["workspace-mcp"],
      "env": {
        "GOOGLE_OAUTH_CLIENT_ID": "您的客户端 ID",
        "GOOGLE_OAUTH_CLIENT_SECRET": "您的密钥",
        "OAUTHLIB_INSECURE_TRANSPORT": "1",
      }
    }
  }
}

2. 高级 / 跨平台安装

如果您正在开发、部署到服务器上,或使用其他支持 MCP 的客户端,请继续阅读。

即时 CLI (uvx)

快速入门 uvx ← 无需安装!
# 需要 Python 3.10+ 和 uvx
# 首先设置凭据(参见上方的凭据配置)
uvx workspace-mcp --tool-tier core  # 或 --tools gmail drive calendar

注意: 在运行之前,请先配置 OAuth 凭据。支持环境变量、.env 文件或 client_secret.json

本地开发设置

🛠️ 开发者工作流程 ← 安装依赖、代码检查和测试
# 安装进行代码检查、测试和发布工具所需的全部内容
uv sync --group dev

# 运行与 git hooks 自动调用的相同 linter
uv run ruff check .

# 执行完整的测试套件(异步 fixture 需要 pytest-asyncio)
uv run pytest
  • 如果需要更精简的环境,可以使用 uv sync --group test 仅安装测试相关依赖。
  • uv run main.py --transport streamable-http 可以使用您检出的代码启动服务器,以便手动验证。
  • Ruff 属于 dev 组,因为预推送钩子会自动调用 ruff check——请在提交前在本地运行,以免触发钩子失败。

OAuth 2.1 支持(多用户 Bearer 令牌认证)

服务器包含用于承载令牌认证的 OAuth 2.1 支持,可实现多用户会话管理。OAuth 2.1 会自动复用您现有的 GOOGLE_OAUTH_CLIENT_IDGOOGLE_OAUTH_CLIENT_SECRET 凭证——无需额外配置!

何时使用 OAuth 2.1:

  • 多个用户访问同一个 MCP 服务器实例
  • 需要使用承载令牌认证而非传递用户邮箱
  • 在 MCP 服务器之上构建 Web 应用程序或 API
  • 生产环境需要安全的会话管理
  • 基于浏览器的客户端需要 CORS 支持

⚠️ 重要提示:OAuth 2.1 与单用户模式互斥

OAuth 2.1 模式(MCP_ENABLE_OAUTH21=true)不能与 --single-user 标志同时使用:

  • 单用户模式:适用于在工具调用中传递用户邮箱的旧版客户端
  • OAuth 2.1 模式:适用于使用承载令牌认证的现代多用户场景

请仅选择一种认证方式;同时使用两者会导致启动错误。

启用 OAuth 2.1: 要启用 OAuth 2.1,请将 MCP_ENABLE_OAUTH21 环境变量设置为 true

# OAuth 2.1 需要 HTTP 传输模式
export MCP_ENABLE_OAUTH21=true
uv run main.py --transport streamable-http

如果未将 MCP_ENABLE_OAUTH21 设置为 true,服务器将使用传统认证方式,这适用于不支持 OAuth 2.1 的客户端。

🔐 FastMCP GoogleProvider 如何处理 OAuth ← 高级 OAuth 2.1 详情

FastMCP 自带一个原生的 GoogleProvider,我们现在直接依赖它。它解决了在 MCP 客户端中使用 Google OAuth 的两个棘手问题:

  1. 动态客户端注册:Google 仍然不支持 OAuth 2.1 DCR,但 FastMCP 提供者暴露了完整的 DCR 接口,并使用您固定的凭证将注册请求转发给 Google。MCP 客户端按常规注册,提供者会在后台为其分配您的 Google 客户端 ID/密钥。

  2. CORS 和浏览器兼容性:该提供者包含一个 OAuth 代理,可为所有发现、授权和令牌端点提供带有正确 CORS 头部的服务。我们不再维护自定义的 /oauth2/* 路由——提供者会安全地处理上游交互,并向客户端发布正确的元数据。

其结果是,服务器更加精简,但仍能使任何符合 OAuth 2.1 标准的客户端(包括基于浏览器的客户端)通过 Google 进行认证,而无需编写定制代码。

无状态模式(适合容器化环境)

服务器支持无状态模式,专为应避免文件系统写入的容器化环境设计:

启用无状态模式:

# 无状态模式要求启用 OAuth 2.1
export MCP_ENABLE_OAUTH21=true
export WORKSPACE_MCP_STATELESS_MODE=true
uv run main.py --transport streamable-http

主要特性:

  • 不写入文件系统:凭据绝不会写入磁盘
  • 无调试日志:完全禁用基于文件的日志记录
  • 仅内存会话:所有令牌通过 OAuth 2.1 会话存储保存在内存中
  • 适合容器:非常适合 Docker、Kubernetes 和无服务器部署
  • 每请求令牌:每个请求必须包含有效的 Bearer 令牌

要求:

  • 必须与 MCP_ENABLE_OAUTH21=true 一起使用
  • 不兼容单用户模式
  • 客户端必须自行完成 OAuth 流程,并在每次请求中发送有效令牌

此模式非常适合:

  • 无法使用持久化存储的云部署
  • 需要严格隔离的多租户环境
  • 具有只读文件系统的容器化应用
  • 无服务器函数和临时计算环境

MCP Inspector:使用桌面 OAuth 客户端时无需额外配置。 Claude Code:使用桌面 OAuth 客户端时无需额外配置。

OAuth 代理存储后端

服务器支持可插拔的存储后端,用于通过 FastMCP 2.13.0+ 管理 OAuth 代理的状态。请根据您的部署需求选择合适的后端。

可用后端:

后端 最佳用途 持久性 多服务器支持
内存 开发、测试
磁盘 单服务器生产环境
Valkey/Redis 分布式生产环境

配置:

# 内存存储(速度快,无持久性)
export WORKSPACE_MCP_OAUTH_PROXY_STORAGE_BACKEND=memory

# 磁盘存储(重启后仍保留数据)
export WORKSPACE_MCP_OAUTH_PROXY_STORAGE_BACKEND=disk
export WORKSPACE_MCP_OAUTH_PROXY_DISK_DIRECTORY=~/.fastmcp/oauth-proxy

# Valkey/Redis 存储(分布式,支持多服务器)
export WORKSPACE_MCP_OAUTH_PROXY_STORAGE_BACKEND=valkey
export WORKSPACE_MCP_OAUTH_PROXY_VALKEY_HOST=redis.example.com
export WORKSPACE_MCP_OAUTH_PROXY_VALKEY_PORT=6379

磁盘支持需要在源码安装时指定 workspace-mcp[disk](或 py-key-value-aio[disk])。 官方 Docker 镜像默认包含 disk 附加组件。 Valkey 支持是可选的。仅当启用 Valkey 后端时,才需安装 workspace-mcp[valkey](或 py-key-value-aio[valkey])。 Windows:从源码构建 valkey-glide 需要支持 C11 的 MSVC C++ 编译工具。如果出现 aws-lc-sys C11 错误,请设置 CFLAGS=/std:c11

🔐 Valkey/Redis 配置选项
变量 默认值 描述
WORKSPACE_MCP_OAUTH_PROXY_VALKEY_HOST localhost Valkey/Redis 主机
WORKSPACE_MCP_OAUTH_PROXY_VALKEY_PORT 6379 端口(6380 自动启用 TLS)
WORKSPACE_MCP_OAUTH_PROXY_VALKEY_DB 0 数据库编号
WORKSPACE_MCP_OAUTH_PROXY_VALKEY_USE_TLS auto 启用 TLS(端口 6380 自动启用 TLS)
WORKSPACE_MCP_OAUTH_PROXY_VALKEY_USERNAME - 认证用户名
WORKSPACE_MCP_OAUTH_PROXY_VALKEY_PASSWORD - 认证密码
WORKSPACE_MCP_OAUTH_PROXY_VALKEY_REQUEST_TIMEOUT_MS 5000 远程主机的请求超时
WORKSPACE_MCP_OAUTH_PROXY_VALKEY_CONNECTION_TIMEOUT_MS 10000 远程主机的连接超时

加密:磁盘和 Valkey 存储采用 Fernet 加密。加密密钥源自 FASTMCP_SERVER_AUTH_GOOGLE_JWT_SIGNING_KEY(若已设置),否则源自 GOOGLE_OAUTH_CLIENT_SECRET

外部 OAuth 2.1 提供者模式

服务器支持外部 OAuth 2.1 提供者模式,适用于由外部系统负责认证的场景。在此模式下,MCP 服务器本身不管理 OAuth 流程,而是期望在工具调用的 Authorization 头中接收到有效的承载令牌。

启用外部 OAuth 2.1 提供者模式:


# 外部 OAuth 提供者模式需要启用 OAuth 2.1
export MCP_ENABLE_OAUTH21=true
export EXTERNAL_OAUTH21_PROVIDER=true
uv run main.py --transport streamable-http

工作原理:

  • 协议级认证已启用:所有 MCP 请求(包括 initializetools/list)都需要有效的 Bearer 令牌,遵循标准的 OAuth 2.1 流程。未通过认证的请求将收到 401 响应,其中包含指向 Google 授权服务器的资源元数据。
  • 外部 OAuth 流程:您的外部系统负责处理 OAuth 流程并获取 Google 访问令牌(ya29.*)。
  • 令牌验证:服务器通过调用 Google 的 userinfo API 来验证 Bearer 令牌。
  • 多用户支持:每个请求都根据其 Bearer 令牌独立进行认证。
  • 资源元数据发现:服务器会提供 /.well-known/oauth-protected-resource(RFC 9728),声明 Google 为授权服务器,并列出所需的范围。

关键特性:

  • 无本地 OAuth 流程:服务器不提供 /authorize/token/register 端点——仅提供资源元数据。
  • 仅支持 Bearer 令牌:所有认证均通过 Authorization: Bearer <token> 头部完成。
  • 设计上无状态:与 WORKSPACE_MCP_STATELESS_MODE=true 无缝兼容。
  • 外部身份提供商:可与您现有的认证基础设施集成。

要求:

  • 必须与 MCP_ENABLE_OAUTH21=true 一起使用。
  • 仍需 OAuth 凭证用于令牌验证(GOOGLE_OAUTH_CLIENT_IDGOOGLE_OAUTH_CLIENT_SECRET)。
  • 外部系统必须获取有效的 Google OAuth 访问令牌(ya29.*)。
  • 每个工具调用请求都必须包含有效的 Bearer 令牌。

使用场景:

  • 集成现有认证系统。
  • 由您的应用程序管理的自定义 OAuth 流程。
  • 在上游处理认证的 API 网关。
  • 具有集中式认证的多租户 SaaS 应用程序。
  • 自带 OAuth 实现的移动或 Web 应用程序。

VS Code MCP 客户端支持

✅ 推荐:VS Code MCP 扩展完全支持完整的 MCP 规范。请务必使用 HTTP 传输模式以实现正确的 OAuth 2.1 认证。

🆚 VS Code 配置 ← VS Code MCP 扩展的设置
{
    "servers": {
        "google-workspace": {
            "url": "http://localhost:8000/mcp/",
            "type": "http"
        }
    }
}

注意:使用 VS Code MCP 时,请确保以 --transport streamable-http 启动服务器。

Claude Code MCP 客户端支持

✅ 推荐:Claude Code 是一款现代的 MCP 客户端,能够正确支持完整的 MCP 规范。为了实现正确的 OAuth 2.1 认证和多用户支持,始终建议使用 HTTP 传输模式。

🆚 Claude Code 配置 ← 为 Claude Code 设置 MCP 支持
# 首先以 HTTP 模式启动服务器
uv run main.py --transport streamable-http

# 然后添加到 Claude Code
claude mcp add --transport http workspace-mcp http://localhost:8000/mcp

反向代理设置

如果您将 MCP 服务器部署在反向代理(nginx、Apache、Cloudflare 等)之后,您有两种配置选项:

问题:当位于反向代理之后时,服务器会使用内部端口构建 OAuth URL(例如 http://localhost:8000),但外部客户端需要的是公共 URL(例如 https://your-domain.com)。

解决方案 1:为所有 OAuth 端点设置 WORKSPACE_EXTERNAL_URL

# 此配置会使所有 OAuth 端点使用您的外部 URL
export WORKSPACE_EXTERNAL_URL="https://your-domain.com"

解决方案 2:仅为回调设置 GOOGLE_OAUTH_REDIRECT_URI

# 这仅会覆盖 OAuth 回调 URL
export GOOGLE_OAUTH_REDIRECT_URI="https://your-domain.com/oauth2callback"

此外,您还可以选择以下配置: | OAUTH_CUSTOM_REDIRECT_URIS (可选) | 逗号分隔的额外重定向 URI 列表 | | OAUTH_ALLOWED_ORIGINS (可选) | 逗号分隔的额外 CORS 域列表 |

重要提示

  • 当所有 OAuth 端点都应使用外部 URL 时,请使用 WORKSPACE_EXTERNAL_URL(推荐用于反向代理设置)。
  • 当只需覆盖回调 URL 时,请使用 GOOGLE_OAUTH_REDIRECT_URI
  • 重定向 URI 必须与 Google Cloud 控制台中配置的完全一致。
  • 您的反向代理必须将 OAuth 相关请求(/oauth2callback/oauth2/*/.well-known/*)转发至 MCP 服务器。
🚀 高级 uvx 命令 ← 更多启动选项
# 首先配置凭据(参见凭据配置部分)

# 仅启动特定工具
uvx workspace-mcp --tools gmail drive calendar tasks

# 按工具层级启动(推荐给大多数用户)
uvx workspace-mcp --tool-tier core      # 核心工具
uvx workspace-mcp --tool-tier extended  # 核心工具 + 高级功能
uvx workspace-mcp --tool-tier complete  # 所有工具

# 以 HTTP 模式启动以便调试
uvx workspace-mcp --transport streamable-http

需要 Python 3.10+ 和 uvx。该软件包可在 PyPI 上找到。

开发安装

用于开发或自定义:

git clone https://github.com/taylorwilsdon/google_workspace_mcp.git
cd google_workspace_mcp
uv run main.py

开发安装(适用于贡献者)

🔧 开发者设置 JSON ← 适用于贡献者及自定义
{
  "mcpServers": {
    "google_workspace": {
      "command": "uv",
      "args": [
        "run",
        "--directory",
        "/path/to/repo/google_workspace_mcp",
        "main.py"
      ],
      "env": {
        "GOOGLE_OAUTH_CLIENT_ID": "your-client-id",
        "GOOGLE_OAUTH_CLIENT_SECRET": "your-secret",
        "OAUTHLIB_INSECURE_TRANSPORT": "1"
      }
    }
  }
}

</details。

HTTP 模式(用于调试或 Web 界面)

如果您需要在 Claude Desktop 中使用 HTTP 模式:

{
  "mcpServers": {
    "google_workspace": {
      "command": "npx",
      "args": ["mcp-remote", "http://localhost:8000/mcp"]
    }
  }
}

注意:使用 HTTP 模式时,请确保以 --transport streamable-http 启动服务器。

首次认证

服务器使用 Google Desktop OAuth 进行简化认证:

  • 无需重定向 URI:桌面 OAuth 客户端无需复杂的回调 URL 即可完成认证
  • 自动流程:服务器会透明地管理整个 OAuth 流程
  • 传输无关性:无论是在 stdio 模式还是 HTTP 模式下都能无缝工作

调用工具时:

  1. 服务器返回授权 URL
  2. 在浏览器中打开该 URL 并进行授权
  3. Google 提供授权码
  4. 按提示粘贴授权码(或由系统自动处理)
  5. 服务器完成认证并重新尝试您的请求

◆ 开发

项目结构

google_workspace_mcp/
├── auth/              # 带装饰器的认证系统
├── core/              # MCP 服务器及实用工具
├── g{service}/        # 各服务专用工具
├── main.py            # 服务器入口文件
├── client_secret.json # OAuth 凭证文件(未提交到版本库)
└── pyproject.toml     # 依赖项

添加新工具

from auth.service_decorator import require_google_service

@require_google_service("drive", "drive_read")  # 服务 + 权限范围组
async def your_new_tool(service, param1: str, param2: int = 10):
    """工具描述"""
    # service 会自动注入并缓存
    result = service.files().list().execute()
    return result  # 返回原生 Python 对象

架构亮点

  • 服务缓存:30 分钟 TTL 降低认证开销
  • 权限范围管理:集中于 SCOPE_GROUPS,便于维护
  • 错误处理:使用原生异常,而非手动构造错误
  • 多服务支持@require_multiple_services() 用于复杂工具

凭证存储系统

服务器包含一个抽象的凭证存储 API 和一个默认后端,用于管理 Google OAuth 凭证,并支持多种存储后端:

特性:

  • 抽象接口CredentialStore 基类定义了标准操作(获取、存储、删除、列出用户)
  • 本地文件存储LocalDirectoryCredentialStore 实现将凭证以 JSON 文件形式存储
  • 可配置存储位置:环境变量 GOOGLE_MCP_CREDENTIALS_DIR 可设置存储路径
  • 多用户支持:可为多个 Google 账号存储和管理凭证
  • 自动创建目录:如果存储目录不存在,则会自动创建

配置:

# 可选:设置自定义凭证目录
export GOOGLE_MCP_CREDENTIALS_DIR="/path/to/credentials"

# 默认位置(若未设置 GOOGLE_MCP_CREDENTIALS_DIR):
# - ~/.google_workspace_mcp/credentials(若主目录可访问)
# - ./.credentials(备用)

使用示例:

from auth.credential_store import get_credential_store

# 获取全局凭证存储实例
store = get_credential_store()

# 存储某用户的凭证
store.store_credential("user@example.com", credentials)

# 获取凭证
creds = store.get_credential("user@example.com")

# 列出所有已存储凭证的用户
users = store.list_users()

凭证存储会自动处理凭证序列化、过期解析,并为存储操作提供错误处理。


⊠ 安全

  • 提示注入:此 MCP 服务器具备检索您的电子邮件、日历事件和云端硬盘文件的能力。这些邮件、事件和文件可能包含提示注入——即隐藏的白色文本,指示其将您的邮件转发至其他地址。请务必谨慎操作,通常仅应将可信数据连接到 LLM!
  • 凭证安全:切勿将 .envclient_secret.json.credentials/ 目录提交到版本控制系统!
  • OAuth 回调:开发时使用 http://localhost:8000/oauth2callback(需设置 OAUTHLIB_INSECURE_TRANSPORT=1
  • 传输感知回调:在 stdio 模式下,仅启动一个最小化的 HTTP 服务器用于 OAuth,确保回调在所有模式下均能正常工作。
  • 生产环境:请使用 HTTPS 和 OAuth 2.1,并相应配置。
  • 权限范围最小化:工具仅请求必要的权限。
  • 本地文件访问控制:读取本地文件的工具(例如附件、file:// 上传)默认仅允许访问用户的主目录。可通过 ALLOWED_FILE_DIRS 环境变量覆盖此限制:
    # 以冒号分隔的目录列表(Windows 使用分号),指定允许读取本地文件的目录
    export ALLOWED_FILE_DIRS="/home/user/documents:/data/shared"
    
    不论白名单如何,对敏感路径(.env.ssh/.aws//etc/shadow、凭证文件等)的访问始终被禁止。


≡ 许可证

MIT 许可证——详情请参阅 LICENSE 文件。


验证: MCP 标识

已在 MseeP 上验证

批量邮件

版本历史

v1.17.22026/04/04
v1.17.12026/04/02
v1.17.02026/04/01
v1.16.22026/03/29
v1.16.12026/03/28
v1.16.02026/03/27
v1.15.12026/03/27
v1.15.02026/03/22
v1.14.32026/03/15
v1.14.22026/03/03
v1.14.12026/03/01
v1.14.02026/03/01
v1.13.12026/02/28
v1.13.02026/02/24
v1.12.02026/02/19
v1.11.52026/02/17
v1.11.22026/02/15
v1.11.12026/02/13
v1.10.72026/02/09
v1.10.12026/02/09

常见问题

相似工具推荐

stable-diffusion-webui

stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。

162.1k|★★★☆☆|今天
开发框架图像Agent

everything-claude-code

everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上

139k|★★☆☆☆|今天
开发框架Agent语言模型

ComfyUI

ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。

107.7k|★★☆☆☆|2天前
开发框架图像Agent

NextChat

NextChat 是一款轻量且极速的 AI 助手,旨在为用户提供流畅、跨平台的大模型交互体验。它完美解决了用户在多设备间切换时难以保持对话连续性,以及面对众多 AI 模型不知如何统一管理的痛点。无论是日常办公、学习辅助还是创意激发,NextChat 都能让用户随时随地通过网页、iOS、Android、Windows、MacOS 或 Linux 端无缝接入智能服务。 这款工具非常适合普通用户、学生、职场人士以及需要私有化部署的企业团队使用。对于开发者而言,它也提供了便捷的自托管方案,支持一键部署到 Vercel 或 Zeabur 等平台。 NextChat 的核心亮点在于其广泛的模型兼容性,原生支持 Claude、DeepSeek、GPT-4 及 Gemini Pro 等主流大模型,让用户在一个界面即可自由切换不同 AI 能力。此外,它还率先支持 MCP(Model Context Protocol)协议,增强了上下文处理能力。针对企业用户,NextChat 提供专业版解决方案,具备品牌定制、细粒度权限控制、内部知识库整合及安全审计等功能,满足公司对数据隐私和个性化管理的高标准要求。

87.6k|★★☆☆☆|今天
开发框架语言模型

ML-For-Beginners

ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程,旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周,包含 26 节精炼课程和 52 道配套测验,内容涵盖从基础概念到实际应用的完整流程,有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。 无论是希望转型的开发者、需要补充算法背景的研究人员,还是对人工智能充满好奇的普通爱好者,都能从中受益。课程不仅提供了清晰的理论讲解,还强调动手实践,让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持,通过自动化机制提供了包括简体中文在内的 50 多种语言版本,极大地降低了全球不同背景用户的学习门槛。此外,项目采用开源协作模式,社区活跃且内容持续更新,确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路,ML-For-Beginners 将是理想的起点。

85k|★★☆☆☆|今天
图像数据工具视频

ragflow

RAGFlow 是一款领先的开源检索增强生成(RAG)引擎,旨在为大语言模型构建更精准、可靠的上下文层。它巧妙地将前沿的 RAG 技术与智能体(Agent)能力相结合,不仅支持从各类文档中高效提取知识,还能让模型基于这些知识进行逻辑推理和任务执行。 在大模型应用中,幻觉问题和知识滞后是常见痛点。RAGFlow 通过深度解析复杂文档结构(如表格、图表及混合排版),显著提升了信息检索的准确度,从而有效减少模型“胡编乱造”的现象,确保回答既有据可依又具备时效性。其内置的智能体机制更进一步,使系统不仅能回答问题,还能自主规划步骤解决复杂问题。 这款工具特别适合开发者、企业技术团队以及 AI 研究人员使用。无论是希望快速搭建私有知识库问答系统,还是致力于探索大模型在垂直领域落地的创新者,都能从中受益。RAGFlow 提供了可视化的工作流编排界面和灵活的 API 接口,既降低了非算法背景用户的上手门槛,也满足了专业开发者对系统深度定制的需求。作为基于 Apache 2.0 协议开源的项目,它正成为连接通用大模型与行业专有知识之间的重要桥梁。

77.1k|★★★☆☆|昨天
Agent图像开发框架