项目简介
Arclio G Suite MCP 服务器是基于 Model Context Protocol (MCP) 构建的应用后端,专注于通过标准化的接口,为大型语言模型 (LLM) 客户端提供访问和管理 Google Workspace (G Suite) 服务的能力。它允许 AI 助手理解和执行与 Google 日历、云端硬盘、Gmail 和演示文稿相关的任务。
主要功能点
本 MCP 服务器通过实现 MCP 的核心机制,提供了以下对 Google Workspace 的集成功能:
- 资源 (Resources):提供对特定数据的访问能力,例如:
- 列出用户可访问的 Google 日历。
- 获取当天的日历事件。
- 获取 Google 云端硬盘中的最近文件。
- 获取共享给用户的文件。
- 获取 Gmail 标签列表。
- 获取收件箱未读邮件数。
- 工具 (Tools):允许 LLM 调用外部功能执行操作,例如:
- 根据查询条件搜索 Gmail 邮件。
- 通过 ID 获取完整的 Gmail 邮件及其附件信息。
- 通过 ID 获取 Gmail 邮件的特定附件数据。
- 创建 Gmail 草稿邮件。
- 通过 ID 删除 Gmail 草稿邮件。
- 回复现有 Gmail 邮件(可发送或保存为草稿)。
- 批量删除 Gmail 邮件。
- 在 Google 日历中创建新事件。
- 通过 ID 删除 Google 日历事件。
- 通过 ID 获取 Google 演示文稿的元数据和内容。
- 获取 Google 演示文稿中的所有幻灯片。
- 创建新的 Google 演示文稿。
- 向演示文稿中添加新幻灯片(支持指定布局)。
- 向幻灯片中添加普通文本或富文本(带格式)。
- 向幻灯片中添加项目符号列表或表格。
- 向幻灯片添加演示者备注。
- 复制演示文稿中的幻灯片。
- 通过 ID 删除演示文稿中的幻灯片。
- 从结构化 Markdown 内容创建完整的 Google 演示文稿。
- 根据查询字符串搜索 Google 云端硬盘中的文件。
- 通过 ID 读取 Google 云端硬盘文件的内容(支持导出 Google 文档类型)。
- 上传本地文件到 Google 云端硬盘。
- 通过 ID 删除 Google 云端硬盘中的文件。
- Prompt 模板 (Prompts):定义了用于引导 LLM 生成特定回复的 Prompt 格式,例如:
- 基于日历事件信息起草会议议程。
- 根据主题建议文档大纲。
- 根据主题和目标建议演示文稿幻灯片内容。
- 用于创建演示文稿的 Prompt。
安装步骤
- 安装 Python: 确保你的系统上安装了 Python 3.10 或更高版本。
- 安装 Make: 确保你的系统上安装了 Make 工具。
- 克隆仓库:
git clone https://github.com/arclio/arclio-mcp-tooling.git cd arclio-mcp-tooling - 设置开发环境:
make setup-dev - 安装 MCP G Suite 包:
make install-gsuite
服务器配置
MCP 客户端与 MCP 服务器通过进程间通信(默认为 Stdio)建立连接。为了使 MCP 客户端能够启动并连接到此服务器,你需要为客户端提供一个 JSON 格式的配置,指定服务器的名称和启动命令。
此外,该 MCP 服务器需要 Google Workspace 账户的访问凭据。这些凭据通过环境变量提供:
- 'GSUITE_CLIENT_ID': Google Cloud 项目的客户端 ID。
- 'GSUITE_CLIENT_SECRET': Google Cloud 项目的客户端密钥。
- 'GSUITE_REFRESH_TOKEN': 用于离线访问的 OAuth 刷新令牌。你需要通过 OAuth 流程获取一次刷新令牌。
- 'GSUITE_ENABLED_CAPABILITIES': 逗号分隔的列表,声明此服务器提供的 MCP 能力(例如:'drive,gmail,calendar,slides')。MCP Hub 会根据客户端请求的能力来启动相应的服务器。
MCP 客户端的配置示例(JSON 格式,非代码):
{ "server name": "arclio-mcp-gsuite", "command": "python", "args": ["-m", "arclio_mcp_gsuite"] }
- 'server name': 服务器的唯一标识符,此处为 "arclio-mcp-gsuite"。
- 'command': 启动服务器进程的可执行文件路径,此处为 "python"。
- 'args': 传递给命令的参数列表,此处为运行 Python 模块的参数 '["-m", "arclio_mcp_gsuite"]'。
请注意: 实际的认证凭据 ('GSUITE_CLIENT_ID', 'GSUITE_CLIENT_SECRET', 'GSUITE_REFRESH_TOKEN') 必须在运行 MCP 客户端(进而启动 MCP 服务器进程)的环境中作为环境变量设置好。MCP 服务器启动后会读取这些环境变量进行认证。
基本使用方法
- 设置环境变量: 在你的操作系统或运行环境中设置上述 Google Workspace 认证相关的环境变量。
- 通过 MCP 客户端启动: 使用兼容 MCP 的客户端应用,配置好上述 JSON 启动信息。客户端会自动启动 'arclio-mcp-gsuite' 服务器进程并通过 Stdio 建立连接。
- LLM 交互: LLM 客户端通过 MCP 协议(JSON-RPC)向服务器发送请求,调用其声明的工具、读取资源或获取 Prompt 模板。例如,LLM 可以通过调用 'query_gmail_emails' 工具来搜索邮件,或通过 'calendar://today' 资源获取今天的日历事件。
信息
分类
生产力应用