关于 Staticbot
Staticbot 是面向 Agent 的 MCP 服务,用于部署网站、迁移应用后端和管理持续同步。支持托管 OAuth 或本地 API 密钥连接,并以明确审批和持久状态管理长流程。
主要功能
- 01分析并部署网站
- 02将后端迁移至 Supabase
- 03带审查关卡的持续同步
- 04部署 DNS 与回滚控制
- 05托管 OAuth 和本地连接
适用场景
- 01将代码仓库部署为网站
- 02迁移后端前审查变更
- 03检查并重试同步运行
- 04查看部署 DNS 或回滚选项
MCP 相关
向 MCP 客户端提供 Staticbot 工具,用于网站部署、后端迁移、同步及相关操作。客户端可连接托管 OAuth 端点,也可使用 API 密钥在本地运行服务。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
69收录的工具列表 · 更新于 2 周前
此工具无需参数。
详细介绍
Staticbot MCP 服务
让 Codex、Claude、Cursor 和其他兼容 MCP 的 Agent 安全访问 Staticbot。该服务提供类型化工具,用于部署网站、迁移应用后端和运行持续同步,同时由 Staticbot 在模型上下文之外保管凭据和长时间运行的工作流状态。
两种连接方式
连接托管服务——无需安装,也无需 API 密钥。将支持通过 OAuth 连接远程服务的 MCP 客户端指向:
https://mcp.staticbot.dev/mcp
登录 Staticbot,选择要授予的权限,客户端便会保存连接。如果你还没有 Staticbot 账户,首次连接时系统会为你创建一个。
在本地运行——适用于将 MCP 服务作为本地进程启动的客户端。需要 Node.js 20 或更高版本,以及从 app.staticbot.dev/developer 获取的 Staticbot API 密钥。
两种方式提供相同的工具。托管服务以授权者的身份运行,且不会接触 API 密钥;本地服务使用你提供的 API 密钥。
安装为 Codex 插件
此仓库也是一个 Codex 插件。其清单将 Staticbot MCP 服务与四个专注于特定意图的技能打包在一起:
deploy-web-app-with-staticbot可在不让 Agent 选择云服务提供商的情况下部署仓库。Staticbot 会分析仓库、识别工作负载类型,并选择受支持的 AWS 或 Cloudflare 目标,以及相应的客户自有或 Staticbot 托管所有权模式。migrate-vibe-coded-app可将 Base44、Lovable、Bolt 或 Firebase 后端迁移到客户自有的 Supabase 基础设施,并设有发现和审批关卡。sync-vibe-coded-app可保持已迁移项目同步,同时保留对破坏性更改的审核。live-migrate-ai-built-app可在计划的维护窗口期间,将正在运行的 Lovable 或 Base44 应用切换到迁移后的技术栈:测试迁移、制定切换计划、显示维护页面、冻结源端写入、重新执行最终拷贝、验证并切换域名。针对具体构建器的冻结步骤位于live-migrate-lovable-app和live-migrate-base44-app中。
通用的 staticbot 技能仍可作为直接调用 REST API 的备用方案。
添加公开的 GitHub marketplace,然后安装 Staticbot:
codex plugin marketplace add bitfiction/staticbot-mcp
codex plugin add staticbot@staticbot
添加 marketplace 后,如果 Staticbot 未立即显示,请重启 ChatGPT 桌面应用或 Codex。此预览版插件使用本地 MCP 传输,因此请在启动应用的环境中设置 STATICBOT_API_KEY。如果你只需要 MCP 工具而不需要捆绑技能,那么托管 OAuth 连接 https://mcp.staticbot.dev/mcp 仍是最简单的选择。
安装为 Claude Code 插件
Claude Code 不要求 Staticbot 先被中央插件注册表接纳。直接从此 GitHub 仓库添加可自托管的 marketplace,然后安装插件:
/plugin marketplace add bitfiction/staticbot-mcp
/plugin install staticbot@staticbot
在启动 Claude Code 的环境中设置 STATICBOT_API_KEY。插件通过 npx 启动已发布的 @staticbot/mcp 包,并继承该环境;对于可自托管或本地运行的 Staticbot API,STATICBOT_API_URL 仍为可选项。
已安装的技能会使用插件命名空间。例如,使用 /staticbot:deploy-web-app-with-staticbot、/staticbot:migrate-vibe-coded-app、/staticbot:sync-vibe-coded-app 或 /staticbot:live-migrate-ai-built-app。如果安装后插件未立即可用,请重启 Claude Code 或运行 /reload-plugins。
直接配置 MCP 客户端
托管服务(OAuth)
对于支持远程 MCP 服务的客户端,添加 https://mcp.staticbot.dev/mcp,并在
系统提示时授权。客户端会从服务本身发现登录方式;无需复制或粘贴任何内容,机器上也不会存储凭据。
本地(API 密钥)
将已发布的软件包添加到项目或全局 MCP 配置中:
{
"mcpServers": {
"staticbot": {
"command": "npx",
"args": ["-y", "@staticbot/mcp"],
"env": {
"STATICBOT_API_KEY": "sk-your-api-key-here"
}
}
}
}
默认使用托管版 Staticbot,地址为 https://app.staticbot.dev。使用托管服务时不要设置 STATICBOT_API_URL;仅在使用可自托管或本地的 Staticbot API 时才覆盖该值。
请将 API 密钥保存在 MCP 客户端的机密信息或环境配置中。不要将其粘贴到聊天中,也不要提交到代码库。
Agent 能做什么
该服务围绕用户目标对工具进行分组:
- 分析公开网站 URL,了解其平台、后端以及支持的迁移/托管路径,无需连接集成
- 检查模板、技术栈、部署和集成连接
- 解析要处理的代码库,可使用已连接的 GitHub 或 GitLab 帐户,包括私有代码库
- 创建并监控静态网站和 SSR 部署
- 检查部署的 DNS,将部署专属记录安全推送到关联的 Cloudflare 区域,并重新检查自定义主机名验证
- 选择 Cloudflare Workers 应用的托管位置——Staticbot 帐户或用户自己已连接的 Cloudflare 帐户;并在创建任何内容之前检查主机名是否可用于部署
- 选择将 AWS 托管的静态网站部署到 Staticbot 管理的帐户,还是用户自己已连接的 AWS 帐户
- 创建客户自有的 Supabase 项目,等待其运行正常,并将其用作迁移目标
- 将 Lovable、Bolt、Firebase 和 Base44 项目迁移到 Supabase 目标
- 检查迁移发现结果,并引导用户完成审批和选择环节
- 设置迁移的线上应用 URL,读取其扫描结果,并检查保留的线上提交对比
- 创建预览并下载可移植的迁移包
- 创建已连接项目的预览,将线上部署切换到构建器分支,或将迁移预览同步到线上
- 检查共享代码库 Webhook 的作用范围,并明确设置、重置或禁用 GitHub 推送自动化
- 触发、审查、重试或跳过持续同步运行
- 使用 Staticbot 返回的有效固定版本回滚或重新部署网站
工具架构和说明构成 MCP 客户端在运行时看到的契约,其中包含 Agent 选择工具时所需的操作说明。
网站 URL 检查
scan_website 会通过 POST /api/v1/site-scans 启动或复用经过身份验证的工作区检查。
此操作需要 Staticbot 帐户,但不需要代码库、数据库或云集成。使用 get_website_scan(GET /api/v1/site-scans/{id})轮询返回的
scan.id;当扫描处于排队或运行状态时,请等待 pollAfterMs 指定的时间再发送请求。最终结果会包含检测、支持情况和托管/迁移估算,或明确的失败信息。检查不会启动部署或迁移。
此操作使用现有的工作区扫描器,并遵循其配额、缓存、目标节流、队列上限和公共地址保护。匿名营销页面 API 使用独立的 Turnstile 流程。 API/MCP 结果包含客户摘要,而非原始提取脚本或联系历史。
已连接项目的操作
进行预览/线上/Webhook 变更前,请先读取 get_connected_project_operations。它会返回当前构建器/线上分支、有效角色权限和代码库 Webhook 使用方。变更工具需要明确确认;线上操作需要提供确切的分支名称,Webhook 操作需要提供返回的代码库配置 ID。目标发生变化时会返回 409,需重新检查并审批。后端仍会强制执行功能标志、工作区角色、持久化链接验证和代理商客户限制。重置/删除 Webhook 时,会尽力移除上游配置,因此本地配置变更并不能证明 GitHub 已删除旧 Hook。
在托管 MCP 服务中启用这些工具之前,必须先部署后端路由。有关剩余的仪表板/API 差异,请参阅功能对照审计。
平台更新和待处理操作
list_pending_actions 和 list_platform_updates 会公开与项目 Sync 选项卡相同的迁移后修复项。check_platform_updates 会刷新证据,并可能将已批准的自动修复加入队列;这是一个会更改状态的操作。apply_platform_updates 只会在用户批准返回的影响后应用所选修复项。客户拥有的分支会创建拉取请求,不会直接推送。
dismiss_platform_update 会拒绝可选修复项;必需修复项无法忽略。请关注返回的同步运行和 PR 链接。在推出期间,服务端功能标志可能会将这些操作保持为禁用状态。
后端控制和源更新
get_backend_workflows 会检查共享后端,且只能针对一个已连接的项目或迁移进行检查。使用 operate_backend_workflows 前,请展示所有受影响阶段和观察到的标志。这些控制项用于管理 Staticbot 在 Supabase Cloud 上迁移后的 Base44 调度器;结果未知时会保持未知,绝不会自动重试。
对于受跟踪的功能分支,请检查 list_connected_project_previews 和
get_feature_branch_preview_settings。构建需要精确的提交和构建提示,包括计划限制移除的任何预览。自动设置会保留现有托管计划限制。
trigger_sync 可选择仅在明确确认后重新部署所有函数;常规同步请求仍保持兼容。
preview_migration_source_update 会将选定的模板版本解析为其精确提交,但不会应用该版本。update_migration_source 需要先批准这个精确的版本和提交组合,然后准备新的计划供单独审核;它不会批准对目标的写入。
如果前端托管在其他位置,请先检查 get_external_auth_domain,再通过 set_external_auth_domain 批准指定的后端和新的公开源站。这会更改身份验证配置,不会更改前端托管或 DNS。即使结果为 UPDATED,也需要实际测试登录、重置密码和 magic link。
示例请求
- “使用 Staticbot 部署此仓库,并告知我需要哪些 DNS 记录。”
- “将此部署所需的记录推送到我关联的 Cloudflare 区域,然后重新检查验证状态。”
- “将我的 Base44 应用迁移到我的 Supabase 项目。进行更改前请先暂停并征求批准。”
- “告诉我最新一次同步运行中有哪些更改,并解释其中任何破坏性 SQL。”
- “列出此部署的有效回滚版本,但暂时不要回滚。”
安全约定
Staticbot 工具的设计遵循明确的人为控制原则:
- 在确认迁移前展示发现结果。
- 向用户显示选择关卡,而不是静默采用默认选项。
- 破坏性的同步更改会暂停,以供审查。
- 在 Agent 重试或跳过失败的工作前,先说明失败原因。
- 回滚使用
list_rollback_versions返回的确切版本,并且需要确认。 - 只有在用户查看每项更新的
whatApplyingDoes并批准后,才会应用平台更新;必需更新不代表已获批准。客户分支只创建拉取请求,不会推送。 - 长时间运行的操作会返回可持久保存的状态,以便跨 Agent 会话恢复。
- 托管服务严格以授权者的身份运行,且仅限其授予的权限范围内;它无法访问所属组织之外的任何内容。
使用 get_migration_overview 轻量轮询状态。它会返回阶段/作业计数、已保存的报告元数据、需要关注的作业和预览状态,以及 version 和 pollAfterMs。它不会加载原始负载,也不会更改迁移。如需了解所有现有技术细节以及在路由操作前查看信息,请使用 get_migration、get_migration_jobs、发现报告和作业历史记录。
本地 API 密钥服务和托管 OAuth 服务共用迁移工具。在路由任何操作前,检查 executionCompatibility.locked:已锁定的运行无法恢复或重试,即使其旧状态为 IN_PROGRESS 也不例外。报告/历史记录仍可读取;在此前已有写入的情况下,使用全新的发现结果启动新迁移,并优先选择干净的目标。托管和持续同步有各自独立的生命周期。
对于客户自有的 Supabase 原生源,请独立指定 sourceIntegrationInstanceId 和目标 supabaseIntegrationInstanceId。同一个连接可以管理两个项目,也可以分别使用不同连接;源项目和目标项目必须不同。Lovable Cloud 没有源端 Management API 连接,也不会借用目标连接。
迁移响应包含 pendingAction 时,客户端应将其视为下一步操作的权威依据。客户端不应硬编码 Staticbot 的内部流水线阶段。
迁移发现结果还可能提供两个需要审查的操作。preFlightGate 包含确切的导出或重放选项;Agent 在使用选定的 gateChoice 调用 confirm_migration 前,必须向用户展示这些选项。targetConflictReport 会列出目标中已存在的对象,并提供数据库、Storage 或整个项目的清理选项。clean_migration_target 不可撤销,必须分别确认确切范围和返回的目标项目引用。
批准前,如果发现报告提供了更深入的检查选项,可以使用 inspect_migration_source 将其加入队列。在源账户中提交并部署辅助程序需要明确授权,即设置 authorizeHelperDeployment: true。批准目标写入前,请先审查已刷新的报告。list_migration_discovery_revisions 和 get_migration_discovery_revision 可查看保留的报告;执行版本和作业历史记录则会保留以往尝试的证据。
get_migration_handoff_report 会返回 Markdown 报告,其中包含差异、手动操作、修复提示词、仅列出名称的密钥清单、预览和当前执行证据。可选的发现版本不会选择历史执行。迁移后的计划任务会保持暂存且未激活;在切换时,客户应在可用时审查并运行报告中受保护的激活 SQL。它会保留在源端已停用的作业。激活前请先解决暂存错误;读取报告不会激活作业。
Staticbot 技能
此代码库包含专注于部署、迁移和持续同步的技能,以及适用于 Codex 或 Claude 环境的通用 Staticbot 技能,可直接操作 REST API,无需 MCP 服务。直接调用 API 的工作流会获取实时 OpenAPI 契约,并遵循相同的审批和凭据处理规则。
客户端支持 MCP 时,请使用 MCP 包。通过命令行 Agent 直接访问 API 更合适时,请使用该技能。
环境变量
这些变量适用于本地服务。托管服务无需设置这些变量。
| 变量 | 必需 | 默认值 | 用途 |
|---|---|---|---|
STATICBOT_API_KEY | 是 | — | 对发往 Staticbot 的请求进行身份验证 |
STATICBOT_API_URL | 否 | https://app.staticbot.dev | 仅用于自托管或本地 API 的覆盖设置 |
文档
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。