项目简介
clasp (Command Line Apps Script Projects) 是一个用于在本地开发和管理 Google Apps Script 项目的命令行工具。它允许开发者使用自己喜欢的编辑器和版本控制系统来编写和管理 Apps Script 代码,然后通过命令行同步到 Google 的 Apps Script 服务器。其实验性 MCP 模式是将部分核心功能以 Model Context Protocol (MCP) 服务器的形式暴露出来,使得兼容 MCP 的 LLM 客户端可以直接调用这些功能,实现通过 AI 进行 Apps Script 项目的管理和操作。
主要功能点
- 项目文件同步: 允许将本地修改推送到 Google Apps Script 服务器,或从服务器拉取最新代码到本地。
- 项目创建与克隆: 支持创建新的 Apps Script 项目或克隆现有的项目到本地工作目录。
- 项目列表: 能够列出用户在 Google Drive 中拥有的 Apps Script 项目。
- MCP 工具接口: 通过标准的 MCP JSON-RPC 协议(使用 Stdio 传输)提供上述功能的接口,供 LLM 客户端调用。
- 无需额外授权 (依赖clasp授权): MCP 模式沿用 clasp CLI 已有的 Google 授权凭证,无需单独授权步骤。
安装步骤
- 确保您的系统中已安装 Node.js (版本 >= 22.0.0)。您可以通过运行 'node -v' 命令检查。
- 通过 npm 全局安装 clasp:
npm install -g @google/clasp - 首次使用需要启用 Google Apps Script API。访问 https://script.google.com/home/usersettings ,找到 "Apps Script API" 选项并启用它。
- 在命令行运行 'clasp login' 并按照提示完成 Google 账号授权,以便 clasp 访问您的 Apps Script 项目。如果您计划使用 MCP 模式的 Run Function 等需要 GCP 项目的功能,可能还需要关联 GCP 项目并配置凭证,请参考 clasp 的官方文档了解详细步骤。
服务器配置 (for MCP Client)
为了让支持 MCP 的 LLM 客户端能够连接和使用 clasp MCP 服务器,您需要在客户端中配置启动该服务器的信息。配置通常是一个 JSON 格式的对象,包含服务器的名称、启动命令及其参数等信息。
以下是 Clasp MCP 服务器的典型配置信息(供 LLM 客户端参考,请根据您的客户端要求填写):
- 'name': MCP 服务器的标识名称,例如 "Clasp Apps Script Server"。
- 'command': 用于启动 clasp MCP 服务器的命令,通常是 '"clasp"'。
- 'args': 传递给 'command' 的参数列表。启动 MCP 模式的参数是 '"start-mcp-server"' 或 '"mcp"'。例如:'["start-mcp-server"]'。
- 'description': 对该 MCP 服务器功能的简要描述。
- 'transport': 指定 MCP 通信协议,Clasp MCP 服务器目前支持 '"stdio"'。例如:'{"type": "stdio"}'。
一个完整的配置示例 (JSON 格式,请注意客户端可能需要特定的结构):
{ "name": "Clasp Apps Script Server", "command": "clasp", "args": ["start-mcp-server"], "description": "Provides tools for Google Apps Script project management (push, pull, create, clone, list) via MCP.", "transport": { "type": "stdio" } }
LLM 客户端将使用这些信息在需要时启动 clasp 进程,并通过标准输入/输出来与 MCP 服务器进行 JSON-RPC 通信。
基本使用方法
- 完成上述安装和授权步骤。
- 在支持 MCP 客户端功能的 LLM 应用中,根据上一节的配置信息添加 "Clasp Apps Script Server"。
- LLM 客户端通常会显示该服务器提供的工具列表(例如:push_files, pull_files, create_project, clone_project, list_projects)。
- 您可以通过 LLM 客户端的界面或交互方式来触发这些工具,例如让 AI 执行 "将当前项目推送到 Apps Script" 的操作,LLM 客户端会通过 MCP 调用 clasp 的 push_files 工具,从而完成任务。具体交互方式完全取决于您使用的 LLM 客户端。
请注意,'clasp start-mcp-server' 命令设计为由 MCP 客户端启动,用户通常无需直接手动运行此命令。
信息
分类
开发者工具