项目简介
MCPApp 是一个基于 Google Apps Script (GAS) 的 MCP 服务器实现库。它允许开发者在 Google Apps Script 环境中构建符合 Model Context Protocol (MCP) 标准的应用后端,从而使大型语言模型 (LLM) 客户端能够安全、标准化地访问用户的 Google Workspace 数据(如 Google Drive 文件、Google Calendar 日程等)以及通过 GAS 实现的自定义功能(工具)。
主要功能点
- MCP协议支持: 实现MCP的核心协议方法,包括处理客户端发来的 'initialize', 'tools/list', 'tools/call', 'resources/list', 'resources/read', 'prompts/list', 'prompts/get' 等请求。
- 工具 (Tools) 定义与执行: 允许您定义可在 Google Apps Script 中执行的函数作为 MCP 工具,LLM 客户端可通过 'tools/call' 方法调用这些函数,实现与 Google Workspace 或其他外部服务的交互。
- 资源 (Resources) 定义与访问: 支持定义静态或动态生成的资源,LLM 客户端可通过 'resources/read' 方法访问这些资源获取上下文信息。
- Prompt 模板 (Prompts) 定义: 可以定义预设的 Prompt 模板,指导 LLM 如何与服务器交互或处理特定任务。
- Google Apps Script 集成: 利用 GAS 的特性,方便地访问 Google Drive、Google Calendar 等 Google Workspace 服务的数据。
- Web App部署: 作为 GAS Web App 运行,通过 HTTP POST 接收 JSON-RPC 请求。
- 日志功能: 可选地将客户端与服务器之间的通信日志记录到 Google Sheets,便于调试和监控。
安装步骤
- 创建 Google Apps Script 项目: 在 Google Drive 中创建一个新的 Google Apps Script 项目(独立脚本或绑定到 Google Docs/Sheets/Forms/Slides 的脚本均可)。
- 安装 MCPApp 库:
- 打开新创建的 GAS 项目的脚本编辑器。
- 在左侧菜单中找到“库”(Libraries),点击“+”号。
- 在“脚本ID”(Script ID)字段输入本项目库的ID:'1TlX_L9COAriBlAYvrMLiRFQ5WVf1n0jChB6zHamq2TNwuSbVlI5sBUzh'。
- 点击“查找”,然后点击“添加”并保存项目。
- (或者,您也可以选择直接将本项目的 'MCPApp.js' 代码复制粘贴到您的脚本项目中)。
- 添加业务逻辑: 将本项目 README 中提供的示例脚本(例如 'sample1.js' 的内容)复制到您的 GAS 项目中。这些脚本定义了 'doPost', 'getserverResponse_', 'getFunctions_' 函数,以及实际执行工具/资源操作的函数(如 'search_files_on_Google_Drive', 'get_today_schedule' 等)。您可以根据自己的需求修改或添加新的工具和资源函数。
服务器配置 (for MCP客户端)
部署为 Web App 后,您的 MCP 服务器将有一个唯一的 URL(例如:'https://script.google.com/macros/s/###/exec')。您的 MCP 客户端需要知道这个 URL 才能连接。
通常,MCP 客户端的配置会包含服务器名称、用于启动或连接服务器的命令及其参数。对于使用 'mcp-remote' 代理连接到基于 HTTP 的 MCP 服务器的客户端(例如 Claude Desktop),配置信息类似如下:
- 服务器名称: 您自定义的、用于在客户端标识此服务器的名称 (例如: 'google_workspace_server')
- 命令 (command): 'npx' (用于执行 Node.js 包)
- 参数 (args): 'mcp-remote', 您的 GAS Web App URL (例如: 'https://script.google.com/macros/s/###/exec')。如果启用了访问密钥,参数将是 'mcp-remote', 'https://script.google.com/macros/s/###/exec?accessKey=sample'。
客户端会使用此配置来通过 'mcp-remote' 代理访问您的 Google Apps Script Web App MCP服务器。
基本使用方法
- 按照安装步骤设置您的 Google Apps Script 项目,并添加或修改工具、资源和 Prompt 的定义及实现函数。
- 将您的 GAS 项目部署为 Web App。在部署设置中,“执行身份”选择“我”(您的Google账号),“有权访问的用户”选择“任何人”。请注意保存生成的 Web App URL。
- 在您的 MCP 客户端(如支持 MCP 的 LLM 应用或工具)中,配置一个新的 MCP 服务器连接,使用您部署的 Web App URL 和任何必要的访问密钥(如果配置了)。
- 启动 MCP 客户端。客户端将通过 MCP 协议与您的 GAS Web App 交互,发现服务器提供的工具、资源和 Prompt。
- 在客户端中,LLM 或用户可以调用这些工具或访问资源,从而与您的 Google Workspace 数据进行交互。例如,您可以指示LLM使用“搜索文件”工具查找 Google Drive 中的文件,或者读取“今日日程”资源获取日历信息。
- 当您修改了 GAS 脚本后,必须重新部署 Web App 并创建新的版本,以确保更改生效。
信息
分类
生产力应用