mcpField
V
vercel-automation

vercel-automation

github.com/sickn33云与 DevOps48.8k93 次安装今天更新
代码仓库

关于 vercel-automation

vercel-automation 是通过 Rube MCP 和 Composio 的 Vercel 工具包自动执行 Vercel 操作的技能。它覆盖部署、项目、环境变量、域名、DNS 与团队管理,并要求先检查工具定义和连接状态。

主要功能

  1. 01检查与排查部署状态及日志
  2. 02创建和跟踪部署
  3. 03管理项目环境变量
  4. 04检查域名并管理 DNS 记录
  5. 05查询项目、团队及成员

适用场景

  1. 01排查构建或运行时部署问题
  2. 02为项目触发部署并监控进度
  3. 03配置环境变量或域名 DNS

MCP 相关

该技能通过 Rube MCP 调用 Composio 的 Vercel 工具包。需先连接 `https://rube.app/mcp`,确认 Rube MCP 可用并完成 Vercel 授权。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/sickn33/agentic-awesome-skills --skill vercel-automation

安装后在 Claude Code 中输入/vercel-automation确认已加载。

详细介绍

通过 Rube MCP 自动化 Vercel

通过 Rube MCP 使用 Composio 的 Vercel 工具包自动执行 Vercel 平台操作。

前提条件

  • 必须已连接 Rube MCP(RUBE_SEARCH_TOOLS 可用)
  • 通过 RUBE_MANAGE_CONNECTIONS 建立有效的 Vercel 连接,工具包为 vercel
  • 始终先调用 RUBE_SEARCH_TOOLS,以获取最新的工具架构

设置

获取 Rube MCP:在客户端配置中将 https://rube.app/mcp 添加为 MCP 服务。添加端点不会对 Vercel 进行身份验证;请使用主机支持的授权连接。

  1. 确认 RUBE_SEARCH_TOOLS 有响应,以验证 Rube MCP 可用
  2. 使用工具包 vercel 调用 RUBE_MANAGE_CONNECTIONS
  3. 如果连接状态不是 ACTIVE,请打开返回的授权链接,完成 Vercel OAuth
  4. 确认连接状态显示为 ACTIVE 后,再运行任何工作流

核心工作流

更改前,先确认准确的团队、项目、环境和不可变的源代码版本。创建部署会发布代码,并可能产生费用;将部署提升至生产环境、更改 DNS 和更新密钥都需要用户明确授权。检查现有 DNS 记录并保留邮件和验证记录。列出环境变量时,切勿打印密钥值;遵循当前的敏感/加密类型和分支范围。超时可能意味着部署已创建:重试前先核实状态。进行有界轮询,验证线上 URL/别名,并在报告日志时隐去凭据和个人数据。

1. 监控和检查部署

适用场景:用户想要列出、检查或调试部署

工具调用顺序:

  1. VERCEL_LIST_ALL_DEPLOYMENTS 或 VERCEL_GET_DEPLOYMENTS - 使用筛选条件列出部署 [必需]
  2. VERCEL_GET_DEPLOYMENT 或 VERCEL_GET_DEPLOYMENT_DETAILS - 获取特定部署的信息 [可选]
  3. VERCEL_GET_DEPLOYMENT_LOGS 或 VERCEL_GET_RUNTIME_LOGS - 查看构建/运行时日志 [可选]
  4. VERCEL_GET_DEPLOYMENT_EVENTS - 获取部署事件时间线 [可选]
  5. VERCEL_LIST_DEPLOYMENT_CHECKS - 查看部署检查结果 [可选]

关键参数:

  • projectId:按项目筛选部署
  • state:按部署状态筛选(例如,'READY'、'ERROR'、'BUILDING')
  • limit:要返回的部署数量
  • target:按环境筛选('production'、'preview')
  • deploymentId 或 idOrUrl:特定部署标识符

注意事项:

  • 大多数端点都接受部署 ID 和 URL 作为标识符
  • 构建日志和运行时日志彼此独立;请使用适当的工具
  • VERCEL_GET_DEPLOYMENT_LOGS 返回构建日志;VERCEL_GET_RUNTIME_LOGS 返回无服务器函数日志
  • 部署事件包含状态变更,有助于调试时序问题
2. 创建和管理部署

适用场景:用户想要触发新部署

工具调用顺序:

  1. VERCEL_LIST_PROJECTS - 查找目标项目 [前置条件]
  2. VERCEL_CREATE_NEW_DEPLOYMENT - 触发新部署 [必需]
  3. VERCEL_GET_DEPLOYMENT - 监控部署进度 [可选]

关键参数:

  • name:部署对应的项目名称
  • target:部署目标('production' 或 'preview')
  • gitSource:包含 ref/分支信息的 Git 仓库来源
  • files:基于文件部署时使用的文件对象数组

注意事项:

  • 必须提供 gitSource 或 files 其中之一,不能同时提供
  • 基于 Git 的部署需要正确配置仓库集成
  • 生产环境部署会自动更新生产域名别名
  • 部署创建是异步的;请使用 GET_DEPLOYMENT 轮询状态
3. 管理环境变量

使用场景:用户想要为项目添加、列出或删除环境变量

工具调用顺序:

  1. VERCEL_LIST_PROJECTS - 查找项目 ID [前置条件]
  2. VERCEL_LIST_ENV_VARIABLES - 列出现有环境变量 [必需]
  3. VERCEL_ADD_ENVIRONMENT_VARIABLE - 添加新的环境变量 [可选]
  4. VERCEL_DELETE_ENVIRONMENT_VARIABLE - 删除环境变量 [可选]

关键参数:

  • projectId:目标项目标识符
  • key:环境变量名称
  • value:环境变量值
  • target:环境数组('production'、'preview'、'development')
  • type:变量类型('plain'、'secret'、'encrypted'、'sensitive')

注意事项:

  • 每个目标环境中的环境变量名称必须唯一
  • 创建后无法读取 type: 'secret' 的变量;只会返回 ID
  • 删除环境变量需要同时提供 projectId 和环境变量 id(而非键名)
  • 更改需通过新部署才能生效
4. 管理域名和 DNS

使用场景:用户想要配置自定义域名或管理 DNS 记录

工具调用顺序:

  1. VERCEL_GET_DOMAIN - 检查域名状态和配置 [必需]
  2. VERCEL_GET_DOMAIN_CONFIG - 获取 DNS/SSL 配置详情 [可选]
  3. VERCEL_LIST_PROJECT_DOMAINS - 列出关联到项目的域名 [可选]
  4. VERCEL_GET_DNS_RECORDS - 列出域名的 DNS 记录 [可选]
  5. VERCEL_CREATE_DNS_RECORD - 添加新的 DNS 记录 [可选]
  6. VERCEL_UPDATE_DNS_RECORD - 修改现有 DNS 记录 [可选]

关键参数:

  • domain:域名(例如,'example.com')
  • name:DNS 记录名称/子域名
  • type:DNS 记录类型('A'、'AAAA'、'CNAME'、'MX'、'TXT'、'SRV')
  • value:DNS 记录值
  • ttl:生存时间(秒)

注意事项:

  • 管理 DNS 之前,必须先将域名添加到 Vercel 账户
  • SSL 证书会自动配置,但新域名可能需要等待一段时间
  • 使用为该域名/提供商返回的确切 DNS 建议;是否支持顶点别名/扁平化取决于提供商
  • MX 记录需要优先级值
5. 管理项目

使用场景:用户想要列出、检查或更新项目设置

工具调用顺序:

  1. VERCEL_LIST_PROJECTS - 列出所有项目 [必需]
  2. VERCEL_GET_PROJECT - 获取项目详细信息 [可选]
  3. VERCEL_UPDATE_PROJECT - 修改项目设置 [可选]

关键参数:

  • idOrName:用于查找的项目 ID 或名称
  • name:更新时使用的项目名称
  • framework:框架预设(例如,'nextjs'、'vite'、'remix')
  • buildCommand:自定义构建命令覆盖项
  • rootDirectory:如果不是仓库根目录,则指定根目录

注意事项:

  • 项目名称在团队/账户范围内必须全局唯一
  • 更改框架设置会影响后续部署
  • rootDirectory 相对于仓库根目录
6. 团队管理

使用场景:用户想要查看团队信息或列出团队成员

工具调用顺序:

  1. VERCEL_LIST_TEAMS - 列出用户所属的所有团队 [必需]
  2. VERCEL_GET_TEAM - 获取团队详细信息 [可选]
  3. VERCEL_GET_TEAM_MEMBERS - 列出特定团队的成员 [可选]

关键参数:

  • teamId:团队标识符
  • limit:每页结果数量
  • role:按角色筛选成员

注意事项:

  • 团队操作需要相应的团队级权限
  • 个人账户没有团队;团队端点会返回空结果
  • 成员角色包括 'OWNER'、'MEMBER'、'DEVELOPER'、'VIEWER'

常见模式

ID 解析

项目名称 -> 项目 ID:

1. Call VERCEL_LIST_PROJECTS
2. Find project by name in response
3. Extract id field for subsequent operations

域名 -> DNS 记录:

1. Call VERCEL_GET_DNS_RECORDS with domain name
2. Extract record IDs for update/delete operations
分页
  • 使用 limit 参数控制每页大小
  • 检查响应中的分页令牌或 next 字段
  • 持续获取数据,直到没有更多页面的提示

已知陷阱

部署状态:

  • 状态包括:INITIALIZING、ANALYZING、BUILDING、DEPLOYING、READY、ERROR、CANCELED、QUEUED
  • READY 表示构建/部署已就绪,不代表路由正确或应用运行正常;请确认确切的 URL 和生产别名
  • 对于 ERROR 部署,应通过日志检查失败详情

环境变量:

  • Secret 类型的变量只能写入;创建后无法检索其值
  • 环境变量按环境范围划分(production、preview、development)
  • 环境变量变更生效需要重新部署

速率限制:

  • Vercel API 对各个端点设有速率限制
  • 收到 429 响应时实施退避
  • 尽可能批量执行操作,以减少 API 调用

快速参考

任务工具标识关键参数
列出项目VERCEL_LIST_PROJECTSlimit
获取项目详情VERCEL_GET_PROJECTidOrName
更新项目VERCEL_UPDATE_PROJECTidOrName, name, framework
列出部署VERCEL_LIST_ALL_DEPLOYMENTSprojectId, state, limit
获取部署VERCEL_GET_DEPLOYMENTidOrUrl
创建部署VERCEL_CREATE_NEW_DEPLOYMENTname, target, gitSource
部署日志VERCEL_GET_DEPLOYMENT_LOGSdeploymentId
运行时日志VERCEL_GET_RUNTIME_LOGSdeploymentId
列出环境变量VERCEL_LIST_ENV_VARIABLESprojectId
添加环境变量VERCEL_ADD_ENVIRONMENT_VARIABLEprojectId, key, value, target
删除环境变量VERCEL_DELETE_ENVIRONMENT_VARIABLEprojectId, id
获取域名VERCEL_GET_DOMAINdomain
获取域名配置VERCEL_GET_DOMAIN_CONFIGdomain
列出 DNS 记录VERCEL_GET_DNS_RECORDSdomain
创建 DNS 记录VERCEL_CREATE_DNS_RECORDdomain, name, type, value
更新 DNS 记录VERCEL_UPDATE_DNS_RECORDdomain, recordId
列出项目域名VERCEL_LIST_PROJECT_DOMAINSprojectId
列出团队VERCEL_LIST_TEAMS(none)
获取团队VERCEL_GET_TEAMteamId
获取团队成员VERCEL_GET_TEAM_MEMBERSteamId, limit

适用场景

当需要执行概述中所述的工作流或操作时,可使用此技能。

限制

  • 仅当任务明确符合上述范围时,才使用此技能。
  • 不要将输出视为针对特定环境进行验证、测试或专家审查的替代品。
  • 如果缺少必需的输入、权限、安全边界或成功标准,请暂停并请求澄清。

评论

支持 Markdown