跳转至

MCP 服务器

BombVault 内置了 Model Context Protocol(MCP)服务器,Claude Code 和 Claude Desktop 等 AI 助手通过这个协议访问外部工具。借助它,助手可以读取你的备份状况,在你允许时还能启动备份或取消它自己启动的备份。在你创建密钥或开启通过 OAuth 登录之前,它处于关闭状态:在此之前,端点 /mcp 对所有请求都返回 404。

助手能做什么,不能做什么

工具 作用 类型
get_health 版本、实例名称、是否有备份正在运行,以及这个密钥被允许做什么 读取
get_status 各个域的保护状态:最近一次成功备份、预期间隔、校验和异地检查、接下来的计划运行、等待应用空闲的备份,容器域还附带最近一次启动测试 读取
get_coverage BombVault 保护了什么、没有保护什么,并给出各自的原因 读取
list_items 每个受保护的容器、虚拟机和文件夹集、闪存盘以及应用配置,附带计划、备份时会停止什么、最近一次备份及其耗时;数据库容器还会列出最近一次转储;ZFS 数据集也会列出,并附上次检查的结果;每个项目附带最近一次恢复检查,容器还附带最近一次启动测试或无法测试的原因;在上次备份后以其他设置重新创建的容器会列出更改内容 读取
list_runs 运行历史,最新的在前,可按域、项目、状态、类型和时间筛选;因某一样东西而变慢的备份会指出它 读取
list_restore_points 一个项目在其主仓库中的还原点;对于容器,还包括它的数据库转储;ZFS 数据集每次备份对应一个还原点,其中包含它下面每个数据集的快照 读取
get_activity 此刻正在运行的内容,带阶段和百分比 读取
get_storage_stats 某个域主仓库的大小历史及每周增长,以及其每个仓库所在磁盘或远程位置的已用、可用和总空间 读取
get_size_breakdown 容器、虚拟机或文件夹集的最新备份中哪些文件夹和文件占用空间,以及上次备份新增了多少 读取
list_anomalies BombVault 在备份中注意到的异常,可按状态、严重程度和域筛选,并附有未处理项的摘要 读取
get_anomaly 其中一条,附确认时留下的备注 读取
start_backup 立即备份一个项目 启动
start_domain_backup 备份一个域中所有受保护的项目 启动
start_backup_everything 运行一轮全部备份 启动
cancel_backup 取消由这个密钥启动、正在运行的备份 取消

以下操作只能在网页界面中进行:任何形式的还原(包括下载、保存或导入数据库转储)、删除备份、prune、unlock、检查和演练、异地复制、设置、凭据和 MCP 密钥,以及取消由计划、网页界面或其他密钥启动的备份。确认异常或将其标记为预期同样如此,这些在 异常 页面中完成。原因是:工具的回答中包含来自你服务器的名称和错误信息,其中任何一条都可能夹带专门用来操纵助手的文字。受这类文字蒙骗的助手,最坏也只能在下面的限制范围内启动一次备份,或取消它自己启动的备份。

如果某个项目的主仓库在别处(S3、REST、SFTP、rclone),list_restore_points 会去连接它,调用可能需要一些时间。异地副本无法通过 MCP 列出。 异常检查关注哪些内容,见 功能;ZFS 项目如何为每个数据集保留一个快照,见 ZFS 数据集。

启动的备份会做什么

助手启动的备份与网页界面启动的备份完全相同。正在运行的容器会在其备份完成前停止,设置为随它一起停止的容器也会停止。采用 "graceful" 方式的虚拟机会被关机,然后重新启动。ZFS 数据集在拍摄快照期间会停止为其设置的容器。文件夹集、闪存盘和配置会继续运行。之后 BombVault 会执行保留策略,并可能复制到异地仓库。list_items 会告诉助手某个项目会停止什么、最近一次备份用了多久,而工具说明要求它在启动任何操作之前先告诉你。

由于备份会停止服务并把旧的还原点挤出去,通过 MCP 的启动是有限制的:

  • 每个密钥每小时最多启动 12 次备份。
  • 同一项目、同一个域或全部备份的两次 MCP 启动之间间隔 15 分钟。
  • 同一项目在 24 小时内最多 4 次 MCP 启动。
  • 保留保护。 当某个域只保留固定数量的还原点(只有"保留最近 N 个",没有按日、按周或按月的规则,无论本地还是异地目标)时,每次新备份都会把最旧的那个挤出去。这时,如果某个项目最近 N-1 次成功备份全部是通过 MCP 启动的,BombVault 会拒绝对它的 MCP 启动。因此,保留下来的集合中始终至少有一个由计划或由你创建的还原点。设置为"保留最近 1 个"时,助手完全无法备份该项目。下一次计划备份会重新腾出空间。只有年度规则时,按"保留最近 1 个"处理,因为它只为当年保留一个还原点。

启动一个域或全部备份时,被某项限制挡下的项目会被跳过,并在回答中列出名称。这些限制都不影响网页界面和计划。每小时的额度保存在内存中,所以重启 BombVault 会将其清零。

通过 API 和从 Home Assistant 的启动与通过 MCP 的启动一起计入每个项目的相同限制,也计入保留保护。

开启

  1. 打开 设置、集成、MCP 服务器,点击你所用客户端的按钮。不在列表中的客户端通过 其他客户端 连接。
  2. 在 密钥 下保留 新密钥 和建议的名称(即客户端名称),或者输入一个能说明密钥用在哪里的名称,例如“笔记本上的 Claude Code”。每个客户端一个密钥,就能只吊销其中一个而不影响其他。现有密钥 会把你之前创建的密钥交给这个客户端。
  3. 对需要能启动备份的密钥,打开 允许启动备份;不打开时,密钥只能读取。之后可以在密钥的卡片上修改,改动从助手的下一个请求起生效,无需重新连接。
  4. 点击 创建密钥。密钥只显示一次。BombVault 只保留它的指纹,无法再次显示,所以请现在复制。如果在客户端使用密钥之前关闭对话框,卡片会一直显示它,直到你确认已经复制。

没有登录密码时,网页界面本身对你网络中的所有人开放,能打开它的人也能创建密钥。卡片上会提示这一点。如果你用一个看起来像公网的名字打开 BombVault(例如反向代理后面的 bombvault.example.com),并且没有设置登录密码,那么从该地址无法创建或更换密钥,这样互联网上的任何网页都无法让你的浏览器去创建密钥。请设置登录密码,或者通过 IP 地址或 tower、tower.local 这样的本地名称打开 BombVault。

你的密钥及其日志

每个密钥在卡片上都有自己的磁贴。磁贴显示密钥名称、它能启动备份还是只读、密钥的最后四个字符、创建或最近一次替换的时间、客户端最近一次使用它的时间,以及它今天的调用次数。在磁贴上可以重命名密钥、修改权限、替换或吊销它。吊销的密钥会移到已吊销密钥列表,一旦历史中不再有运行引用它,就可以在那里永久删除。

在名称旁边,卡片会显示创建该密钥时所对应客户端的标志。通过 其他客户端 创建的密钥,或在卡片列出客户端之前创建的密钥,会改为显示一把钥匙。

磁贴上的 日志 会打开该密钥做过的事。最上面是它启动的备份,每条都带有状态和指向仪表盘活动日志中该次运行的链接。下面是它的调用,最新的在前,附带工具和调用结果。被拒绝的调用会说明原因:密钥只能读取、保留保护拦下了备份、已有另一个备份在运行、该项目的备份几分钟前刚从网页界面之外启动过,或者密钥发送的请求过多。取消操作会链接到它涉及的那次运行。

BombVault 为每个密钥保留最长 30 天的记录:最新的 500 次成功的启动和取消,另外还有最新的 200 次其他调用(读取、拒绝和错误)。因此,助手反复查询正在运行的备份,或反复重试被拒绝的调用时,不会把该备份的启动挤出日志。每次调用只保存工具、结果以及取消操作指明的运行。它从不保存助手发送的内容,也不保存密钥或其指纹。诊断包只统计条数,设置导出不包含这些记录。

连接客户端

卡片上每个客户端都有一个按钮,位于 在这台电脑上 或 在云端 下面。按钮会打开一个分三步的对话框:密钥;该客户端的配置,包括你打开卡片时所用的地址、复制按钮、配置所在的位置,以及在使用 BombVault 自己的证书时客户端信任它所需的步骤;最后是等待客户端的第一次调用。对话框会观察密钥的最后使用时间,调用到达时变成绿色。

对话框不会让密钥出现在任何命令行上。如果客户端能从环境变量(BOMBVAULT_MCP_KEY)、隐藏输入提示或自己的文件读取密钥,配置里只引用它。如果客户端没有这样的方式,密钥会放在它的配置文件或设置里,对话框也会说明这一点。如果客户端的文档没有说明它如何处理不认识的证书,对话框会把这一步写成“客户端拒绝 BombVault 的证书时”该怎么做。

客户端 设置方式 密钥来源
AnythingLLM 配置文件 配置文件
Antigravity 配置文件 环境变量
Claude Code 命令 密钥文件
Claude Desktop 配置文件 密钥文件
Cline 配置文件 配置文件
Codex CLI 配置文件 环境变量
Continue 配置文件 ~/.continue/.env
Copilot CLI 配置文件 配置文件
Cursor 配置文件 环境变量
Gemini CLI 配置文件 环境变量
GitHub Copilot (VS Code) 配置文件 隐藏输入提示
Goose 配置文件 环境变量
Jan 应用内表单 应用设置
JetBrains (AI Assistant, Junie) 配置文件 配置文件
Kimi Code 配置文件 配置文件
LM Studio 配置文件 配置文件
Mistral Vibe 配置文件 环境变量
Msty 应用内表单 应用设置
n8n 应用内表单 n8n 的凭据
Open WebUI 应用内表单 应用设置
opencode 配置文件 环境变量
Perplexity (Mac) 应用内表单 密钥文件
Qwen Code 配置文件 环境变量
Roo Code 配置文件 环境变量
Visual Studio 配置文件 配置文件
Warp 配置文件 配置文件
Windsurf 配置文件 环境变量
Zed 配置文件 配置文件
Grok 表单,云端 提供商的服务器
Le Chat 表单,云端 提供商的服务器
ChatGPT 通过 OAuth 登录,在云端 访问令牌,见下文
Claude (claude.ai) 通过 OAuth 登录,在云端 访问令牌,见下文

下面几节更详细地说明 Claude Code 和 Claude Desktop 的设置,并列出其他任何客户端需要的内容。

Claude Code

Claude Code 通过 mcp-remote 连接 BombVault,这需要该电脑上装有 Node.js。先把密钥单独存进一个文本文件,写成一行:

X-API-Key: <your key>

然后在卡片的命令里填入这个文件的路径,在终端中运行一次。使用你的电脑信任的证书时,它是这样的:

claude mcp add bombvault --scope user -- npx -y mcp-remote@latest https://bombvault.example.com/mcp --header-file "<path of the file with your key>"

使用 BombVault 自己的证书时(见 TLS 与证书),命令还会让 Node.js 使用下载的证书:

claude mcp add bombvault --scope user -e "NODE_EXTRA_CA_CERTS=<path of the downloaded bombvault-cert.pem>" -- npx -y mcp-remote@latest https://192.168.1.10:3443/mcp --header-file "<path of the file with your key>"

在 Claude Code 中用 /mcp 检查连接。--scope user 让 BombVault 在你的所有项目中都可用。Claude Code 只保存密钥文件的路径,所以密钥既不会出现在命令和 shell 历史记录中,也不会出现在进程列表中。把这个文件放在只有你能读取的位置,并且不要放在任何会提交的文件夹里。@latest 让 npx 获取最新的 mcp-remote;否则会改用全局安装的旧版本,而旧版本不支持 --header-file。

不要把 ${BOMBVAULT_MCP_KEY} 写进 Claude Code 的 mcp-remote 参数里。Claude Code 在启动 mcp-remote 之前,会用自己环境中的值替换这类引用,于是密钥会出现在该进程的命令行上,电脑上的其他程序和用户都能读到它。

没有 Node.js 时,Claude Code 也能自己连接,但仅限于使用你的电脑信任的证书。在项目文件夹中放一个 .mcp.json:

{
  "mcpServers": {
    "bombvault": {
      "type": "http",
      "url": "https://bombvault.example.com/mcp",
      "headers": {
        "Authorization": "Bearer ${BOMBVAULT_MCP_KEY}"
      }
    }
  }
}

在 Claude Code 启动的环境中设置 BOMBVAULT_MCP_KEY,例如写在 ~/.claude/settings.json 的 "env" 下,或写在 shell 的配置文件里,用文本编辑器写,而不是在命令行中输入。这里使用引用是安全的,因为 Claude Code 不会另外启动一个会拿到密钥的进程。BombVault 自己的证书不能这样用:即使设置了 NODE_EXTRA_CA_CERTS,Claude Code 自己建立的连接也会拒绝它。绝不要提交写有密钥的 .mcp.json。

Claude Desktop

Claude Desktop 通过 mcp-remote 连接 BombVault,这需要该电脑上装有 Node.js。先按 Claude Code 一节的说明,把密钥单独保存到一个文本文件中,只占一行。在 Claude Desktop 中通过 Settings, Developer, Edit Config 打开配置文件。它在 Windows 上位于 %APPDATA%\Claude\claude_desktop_config.json,在 macOS 上位于 ~/Library/Application Support/Claude/claude_desktop_config.json。把卡片中的条目加到 "mcpServers" 里,放在已有服务器旁边,然后重启 Claude Desktop:

{
  "mcpServers": {
    "bombvault": {
      "command": "npx",
      "args": ["-y", "mcp-remote@latest", "https://192.168.1.10:3443/mcp", "--header-file", "<path of the file with your key>"],
      "env": {
        "NODE_EXTRA_CA_CERTS": "<path of the downloaded bombvault-cert.pem>"
      }
    }
  }
}
  • NODE_EXTRA_CA_CERTS 只为 BombVault 自己的证书而设。如果证书已被你的电脑信任,请去掉它。
  • 只有纯 http:// 地址才会加上 --allow-http。
  • 在 Windows 上,路径请用正斜杠书写,例如 C:/Users/sam/bombvault-key.txt,因为单个反斜杠不是有效的 JSON。密钥文件的路径不要包含空格:Windows 上的 Claude Desktop 会把带空格的路径拆成两段传给 npx。
  • 配置里只写了密钥文件,所以密钥既不会出现在配置中,也不会出现在进程列表中。把这个文件放在只有你能读取的位置。

云端客户端

ChatGPT、claude.ai 上的 Claude、Grok 和 Le Chat 从各自厂商的服务器调用 BombVault,因此 BombVault 必须能从互联网访问,并使用公开受信任的证书,例如放在反向代理后面;Le Chat 拒绝自签名证书。代理上的登录可以保护网页界面,但 /mcp 必须不经过它直达 BombVault:这些服务无法登录代理,BombVault 会自行检查它们的密钥或令牌。Grok 和 Le Chat 发送固定密钥,它们的按钮会像其他客户端一样完成设置。ChatGPT,以及大多数组织中 claude.ai 上的 Claude,只能通过下文介绍的 OAuth 登录连接。

通过 OAuth 登录

对于无法使用密钥的客户端,BombVault 充当它自己的 OAuth 授权服务器。客户端自行注册,把你带到 BombVault 的页面,你在那里用登录密码(如果设置了第二因素,也要用它)登录并允许它。随后客户端获得一个只对这个 BombVault 的 MCP 端点有效的令牌,并自行续期。

  1. 在设置、安全中设置登录密码。没有密码时,BombVault 完全不提供登录,因为没有人可以给出同意。
  2. 让 BombVault 能通过 https 从互联网访问,并使用浏览器信任的证书,通常借助反向代理。客户端从自己的服务器调用 /mcp、/oauth/ 和 /.well-known/,所以带有自身登录的代理必须让这三个路径通到 BombVault。位于 /oauth/authorize 的同意页面在你自己的浏览器中打开,可以留在代理登录之后。同时在 TRUSTED_PROXY 中填写代理(见 配置)。BombVault 按地址限制客户端注册,不填写的话,每个客户端看起来都来自代理。
  3. 在 MCP 卡片上开启通过 OAuth 登录,并填写公开地址:不带路径的 https 地址,例如 https://backup.example.com。每个令牌都绑定到这个地址,因此更改后每个客户端都必须重新登录。
  4. 点击 ChatGPT 或 Claude 的按钮。对话框会显示连接器 URL,即公开地址后加 /mcp,以及它在该客户端中的填写位置。在 ChatGPT 中,于设置、应用与连接器、高级设置里开启开发者模式,选择创建,把连接器 URL 粘贴为 MCP 服务器 URL,并选择 OAuth 作为身份验证。在 claude.ai 上,打开设置、连接器、添加自定义连接器,粘贴连接器 URL,OAuth 客户端 ID 和密钥留空,然后选择连接。
  5. 客户端打开同意页面。页面显示谁在请求、你的回答会把你带回哪里,以及默认关闭的允许启动备份开关。选择允许或拒绝。

每个已登录的客户端都会在密钥旁边得到一张卡片,带有它的标志、日志、吊销和允许启动备份,限制与密钥相同。吊销立即生效。同一客户端再次登录时,新的授权会替换旧的授权;30 天无人使用的授权会过期。除 10 个密钥外,最多可同时有 10 个客户端登录。

同意页面只接受已注册客户端发来、且准确指定其某个已注册返回地址的请求:https,或者对于你自己电脑上的客户端,任意端口的回环地址。只接受带 PKCE(S256)的授权码流程,你的回答与你的会话绑定,因此其他网站无法替你发送。访问令牌有效期为一小时。刷新令牌每次使用都会被替换,如果某个已用过的刷新令牌再次出现,BombVault 会吊销授权,因为别人持有它的副本。如果客户端因为没收到响应而在 30 秒内重发上一次刷新,则会改为得到新的令牌。BombVault 不会从互联网获取客户端元数据,因此客户端通过动态客户端注册进行注册。

其他客户端

任何支持 Streamable HTTP 的客户端都可以:

  • URL:网页界面的地址加上 /mcp,例如 https://192.168.1.10:3443/mcp。
  • 密钥放在 Authorization: Bearer <key> 或 X-API-Key: <key> 中。如果两者都发送,必须是同一个密钥。
  • 使用 POST,并带上 Content-Type: application/json 和 Accept: application/json, text/event-stream。
  • 每个请求一条 JSON-RPC 消息;批量请求(batch)会被拒绝。
  • 协议版本:2026-07-28、2025-11-25、2025-06-18 和 2025-03-26。

TLS 与证书

BombVault 使用自己签发的证书提供 HTTPS,起初这张证书只包含 localhost、127.0.0.1 和 ::1。Claude Code 和 mcp-remote 在局域网地址上会拒绝它。解决办法按适合大多数 Unraid 安装的顺序如下:

  1. 在 MCP 卡片中添加地址。 如果通过 HTTPS 在证书未包含的地址上打开卡片,卡片会指出这一点,并提供 把这个地址加进证书。BombVault 随后会重新签发包含该地址的证书(浏览器会像第一次那样再警告一次)。然后点击 下载证书;片段会把 NODE_EXTRA_CA_CERTS 设为下载的文件,客户端就会信任这张证书。这也意味着,用之前下载的文件配置的客户端,在证书重新签发的那一刻起就无法再连接,无论是在这台电脑还是其他电脑上,直到它拿到新文件为止。
  2. 带受信任证书的反向代理(Nginx Proxy Manager、SWAG、Caddy、Traefik)。客户端看到的是代理的证书,无需其他操作,卡片也不会就 BombVault 自己的证书发出警告。
  3. Tailscale。 在容器前使用 tailscale serve,或使用 Unraid 的 Tailscale 集成,可以得到一个带受信任证书的 ts.net 名称。
  4. HTTP_ONLY=true,只能在终止 TLS 的代理之后或你完全信任的网络中使用。它会把整个网页界面切换为纯 HTTP,需要修改容器设置,并且以未加密的方式发送密钥。

绝不要设置 NODE_TLS_REJECT_UNAUTHORIZED=0。这会让该 Node.js 进程对所有通信对象都跳过证书校验。

反向代理必须转发 Authorization(或 X-API-Key)请求头(除非另有配置,代理都会这样做),并且不能缓冲或改写 /mcp。下面是一个同时校验 BombVault 证书的 Nginx 或 Nginx Proxy Manager 的 location 块:

location /mcp {
    proxy_pass https://192.168.1.10:3443;
    proxy_ssl_verify on;
    proxy_ssl_trusted_certificate /data/bombvault-cert.pem;
    proxy_ssl_name localhost;
    proxy_http_version 1.1;
    proxy_buffering off;
    proxy_set_header Host $host;
}

在代理之后,每个请求都带着代理的地址。于是一个配置错误的客户端发送 5 次错误密钥,就会让该代理后面的所有 MCP 客户端被锁定一分钟。在 TRUSTED_PROXY 中填写代理(见 配置),即可按客户端分别计数。

安全模型

  • 没有有效密钥且通过 OAuth 登录处于关闭状态时,/mcp 返回 404。
  • 只有设置了登录密码时才提供通过 OAuth 登录。令牌、授权码和客户端密钥只以指纹形式保存,令牌只对签发它的地址有效。
  • 同一地址每小时最多注册 10 次客户端,BombVault 最多保留 100 个无人登录过的已注册客户端,每个保留一天。错误的授权码和刷新令牌与错误的密钥计入同一个锁定。
  • 恢复配置备份或 APP_KEY 变化时,授权与密钥的处理方式相同:恢复之后每个客户端都必须重新登录。
  • 没有任何地址被豁免。来自 localhost、Unraid 主机、反向代理或 tailscale serve 的请求都和其他请求一样需要密钥,即使网页界面没有登录密码也是如此。
  • 密钥只以指纹形式保存,只显示一次,可以重命名、更换和撤销。最多 10 个有效密钥,每个都有自己的 允许启动备份 开关。
  • 每次创建、更换、修改权限和撤销,只要通知没有关闭,都会通过你的通知渠道发送通知,并附上请求来源地址。
  • 每个地址每分钟 5 次错误密钥后返回 429。每个密钥每分钟 120 个请求、每小时启动 12 次备份,另外还有上文所述的等待时间和保留保护。
  • 来自其他来源(origin)的浏览器页面的请求会被拒绝。
  • 在没有设置登录密码时,无法从看起来像公网的主机名创建密钥。
  • 助手启动的每一次备份,以及由此引发的 prune 和异地运行,都会在活动日志、错误面板和备份通知中标注"通过 MCP"以及密钥名称。
  • 每次工具调用都会连同密钥的 ID 和最后四个字符(从不包含名称)写入容器日志,并在 /metrics 中计数(bombvault_mcp_requests_total、bombvault_mcp_tool_calls_total、bombvault_mcp_active_keys)。
  • 还原配置备份会撤销所有密钥,因为还原的数据库中可能含有你在它保存之后才撤销的密钥。之后请创建新的密钥。
  • 当 APP_KEY 改变时(重新安装,或还原到另一个容器),密钥会失效。卡片会检测到并标记该密钥,更换密钥 会重新给它一个有效的密钥值。
  • 把密钥当作密码对待。无法从环境变量、输入提示或密钥文件读取密钥的客户端,会把它以明文保存在配置或设置中,它的对话框也会说明这一点。在不太信任的电脑上,最好使用只读密钥。

哪些信息会离开本机

助手读取的所有内容都会发送给它背后的 AI 提供商:项目名称、计划、含错误信息的运行历史、还原点的 ID 和时间、数据库引擎名称和转储大小、当前活动、存储数据、覆盖范围和状态。在任何内容离开之前,BombVault 会去除主机路径、仓库位置、主机名、凭据、钩子命令和密钥。

故障排除

你看到的 含义
404 没有有效密钥且通过 OAuth 登录处于关闭状态,或路径错误,例如 /api/mcp。端点是 /mcp。
401 密钥缺失、输错、已撤销或已更换。可能是代理丢掉了 Authorization 请求头(试试 X-API-Key)。如果卡片把密钥标记为已失效,说明 APP_KEY 已改变:请更换密钥。
403 请求来自其他来源的浏览器页面。请使用桌面或命令行客户端。
GET 时返回 405 正常。连接地址只接受 POST。
400 "Accept must contain both 'application/json' and 'text/event-stream'" 客户端太旧,不支持 Streamable HTTP。请更新它。
400 "batch requests are not accepted" 客户端在发送 JSON-RPC 批量请求。每个请求只发一条消息。
429 该地址的错误密钥过多,或一个密钥每分钟的请求超过 120 个。等一分钟,并检查助手是否陷入了循环。
含有 "certificate"、"self-signed" 或 "unable to verify" 的错误 客户端不信任 BombVault 的证书。见 TLS 与证书。
busy 另一个备份或维护任务正在占用该域。等它结束后再试。
cooldown 这个项目、这个域或全部备份在 15 分钟内已从网页界面之外启动过。
retention_guard 再做一次 MCP 备份,"保留最近 N 个"的窗口里就只剩来自 MCP 的还原点了;或者该项目在过去 24 小时内已经通过 MCP 备份了 4 次,失败和取消的也算在内。第一种情况下,下一次计划备份会腾出空间;第二种情况下,项目在其中最早那次备份的 24 小时后才能再次启动。在网页界面中随时都可以启动它。
rate_limited 该密钥本小时的 12 次启动已用完。
启动时出现 not_permitted 该密钥为只读。在卡片中打开 允许启动备份;无需重新连接。如果出现在取消时,表示该运行不是由这个密钥启动的。
domain_off 这种备份类型在设置中已关闭。
not_found BombVault 没有保护这个项目。请先在网页界面中添加;MCP 从不创建配置。
客户端找不到授权服务器 通过 OAuth 登录处于关闭状态、没有设置登录密码,或者代理没有让 /.well-known/ 通到 BombVault。
同意页面提示返回地址未注册 客户端发送了它没有注册过的返回地址。在客户端中移除该连接器后重新添加。
已登录的客户端收到 401 它的授权已被吊销、因 30 天未使用而过期,或者公开地址已更改。客户端会重新登录。

不要在容器上设置环境变量 MCPGODEBUG。它会改变 MCP 库的行为,而错误的值会让 BombVault 在启动时、甚至还没写下一行日志时就停止。