关于 Veeam AIops
面向管理员和 AI Agent 的 Veeam Backup & Replication 运维工具,提供 27 个 MCP 工具,可管理作业、还原、存储库并执行诊断。治理机制记录调用、加密保护凭据并跟踪可逆操作;目前尚未报告经实时服务器验证。
主要功能
- 0127 个 Veeam 运维 MCP 工具并记录审计
- 02作业、还原、存储库和会话管理
- 03只读作业与存储库诊断
- 04加密存储密码
- 05为可逆操作记录撤销信息
- 06破坏性 CLI 操作支持试运行和双重确认
适用场景
- 01排查失败或警告状态的备份作业会话
- 02查找可用空间低于阈值的存储库
- 03跟踪异步作业和还原进度
- 04管理作业、存储库和还原点
MCP 相关
向 MCP 客户端提供 27 个受治理的 Veeam Backup & Replication 读写工具。调用会写入审计记录,可逆操作会记录撤销描述符,并通过调用限制控制轮询开销。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
27收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| target | any | 否 |
详细介绍
Veeam AIops
免责声明:由社区维护的开源项目。与 Veeam Software 无关联、未获其认可或赞助。“Veeam”是其所有者的商标。采用 MIT 许可证。
由 AI 驱动的 Veeam Backup & Replication 运维,内置治理机制——统一审计日志、策略引擎、令牌/失控预算保护、撤销令牌记录,以及描述性风险等级。独立运行:除 httpx 和 MCP SDK 外,无其他外部依赖。目前尚未覆盖所有 Veeam 操作。
验证状态:测试套件基于模拟;此软件包尚未在实际的 Veeam B&R 服务上验证。请参阅 docs/VERIFICATION.md。
可用功能
- 命令行界面(
veeam-aiops ...):init、overview、job list/get/start/stop/retry/enable/disable、restore list-points/start、repository list/get/state、session list/get/log/stop、backup list/objects/usage/ranking、diagnose job-failures/repo-capacity、infra servers/proxies、secret set/list/rm/migrate/rotate-password、doctor、mcp。 - MCP 服务(
veeam-aiops mcp或veeam-aiops-mcp):27 个工具(19 个读取、8 个写入),每个工具都由内置的@governed_tool机制封装。 - 诊断/根因分析(只读):
diagnose job-failures对近期作业会话进行分诊——标记每次失败/警告运行,并对可能原因进行分类(存储库已满、源端/来宾系统无法访问、凭据/VSS 故障、重试耗尽),并引用会话结果和匹配的错误子串;diagnose repo-capacity标记可用空间低于阈值的存储库(<15% 警告,<10% 严重)。两者都会按严重程度从高到低列出,并引用触发每项发现的实测数值。 - 加密凭据:密码存储在加密存储中
~/.veeam-aiops/secrets.enc(Fernet + scrypt)——绝不会以明文形式存储在磁盘上。通过VEEAM_AIOPS_MASTER_PASSWORD中的主密码解锁(MCP/CI),或在命令行界面中交互式输入。 - 可逆性:具有明确反向操作的写入操作(作业启动/停止/重试、启用/禁用)会记录反向撤销描述符;不可逆的虚拟机还原不声明反向操作,并标记为
high风险。 - 异步会话:Veeam 作业和还原以会话形式运行——使用
session list/session get/session log轮询进度(失控预算保护可防止轮询循环失控)。
此工具会做什么,不会决定什么
它能准确、高效地执行 Veeam Backup & Replication 操作——读取和写入——并记录每一项操作。它不会决定是否允许执行写入操作。这个判断由 Agent 作出,或由你连接时使用的 Veeam 账户权限决定:为该账户配置 VBR 服务上的只读或受限角色,写入操作就会在服务端失败——权限真正受控之处就在服务端。
因此,无需配置只读开关、策略文件或审批关卡。此工具唯一保证的是不会有操作悄无声息:通过 MCP 或命令行界面的每次调用,都会在 ~/.veeam-aiops/audit.db 中写入一条审计记录;可逆写入操作仍会捕获操作前状态并记录反向操作。
每个工具都会声明一个
risk_level,测试会确保它与工具文档中的[READ]/[WRITE]标签一致,并将其作为描述性等级写入审计记录——方便审核人员一眼看出某条记录对应的是高风险还原操作。这只是一个标签,而非关卡。
如果运行的是较小型/本地模型,请参阅 agent-guardrails.md——其中列出了此工具目前会替你执行的防护措施(因此你无需在提示词预算中重复说明),并提供了可直接使用的系统提示词,说明其余需要处理的事项。
快速开始
作为 Claude Code 插件
安装一次即可让 Agent 同时获得技能和 MCP 服务:
/plugin marketplace add AIops-tools/marketplace
/plugin install veeam-aiops@aiops-tools
MCP 服务通过 uv 获取,并固定到此插件声明的软件包版本,因此可以将审计记录追溯到写入该记录的代码。凭据仍通过 veeam-aiops init 配置——详见下文。
作为 OpenClaw 插件
同一捆绑包发布在 ClawHub,安装一次即可同时获得技能和 MCP 服务:
openclaw plugins install clawhub:@zw008/veeam-aiops
openclaw skills info veeam-aiops # expect: Visible to model: yes
之后重启 OpenClaw 网关,以便加载插件。MCP 服务通过 uv 获取,并固定到此精确版本,因此 uvx 必须位于 PATH 中——如果没有,技能仍会安装,但会报告 Visible to model: no。凭据按下文所述的方式配置。
作为 CLI 或独立 MCP 服务
uv tool install veeam-aiops
veeam-aiops init # interactive wizard: connection details + encrypted password
veeam-aiops doctor # verify config, encrypted store, connectivity
init 会写入 ~/.veeam-aiops/config.yaml(非机密连接详情),并将登录密码加密后存储在 ~/.veeam-aiops/secrets.enc 中。生成的配置示例:
targets:
- name: vbr-lab
host: 10.0.0.20
username: "DOMAIN\\backup-admin"
port: 9419
verify_ssl: false # self-signed lab certs only
timeout: 30 # seconds per request; raise for large estates
在大型 VBR 安装环境中,
/jobs和/sessions端点的耗时可能远超其他 API 端点——在一个运行中的 13.1 环境里,查询单条记录的/jobs请求在 120 s 内没有响应,而仓库端点在不到 3 s 内就有响应。timeout可让这些端点有更长的响应时间。它不能让缓慢的端点变快:如果增加的时间预算仍然耗尽,瓶颈就在端点,而不在此客户端。/backups/{id}/backupFiles也是如此,backup ranking会对每个备份读取一次该端点:一个包含 123 个备份的 13.1 环境需要设置timeout: 300才能完成排名;超时的备份会标记为timedOut,并附上此建议,而不会被悄悄排除。需要快速查看部分环境时,请限定排名范围(--backup、--repository)。
对于非交互式使用(MCP 服务、CI、cron),请导出主密码,以便无需提示即可解锁存储:
export VEEAM_AIOPS_MASTER_PASSWORD='your-master-password'
密码随后会存放在哪里:导出的变量可被此 shell 启动的每个进程读取,也会记录在 shell 历史记录中。在共享或长期运行的主机上,建议使用交互式提示,或在需要该密码的单条命令运行期间从密钥管理器注入密码。
管理密钥
veeam-aiops secret set vbr-lab # prompts hidden for the password
veeam-aiops secret list # names only, values never shown
veeam-aiops secret rm vbr-lab
veeam-aiops secret rotate-password # re-encrypt under a new master password
veeam-aiops secret migrate # import a legacy plaintext .env, then deletes it
从旧版 ~/.veeam-aiops/.env(旧版 VEEAM_<TARGET>_PASSWORD 变量)迁移?运行 veeam-aiops secret migrate;旧的 .env 会重命名为 .env.migrated。为平稳过渡,明文环境变量仍会作为后备选项受到支持(并显示弃用警告)。
审计与安全
所有操作都会记录到 ~/.veeam-aiops/ 下的本地 SQLite 审计数据库(可通过 VEEAM_AIOPS_HOME 更改位置)——该框架只记录,不负责授权。每次调用,无论通过 MCP 还是 CLI,都会生成一条审计记录;令牌/失控预算保护机制是一道安全后备措施(而非授权关卡),用于阻止卡住的 Agent 无限调用;每条记录都带有描述性风险等级,但该等级不控制任何操作。具有破坏性的 CLI 命令(job stop、restore start)需要双重确认,并支持 --dry-run。API 返回的文本会经过提示词注入清理器处理。
贡献与功能请求
本项目有意专注于特定范围。需要的设备、操作或功能尚未支持? 请在 github.com/AIops-tools/Veeam-AIops 提交问题或拉取请求——欢迎功能请求、贡献和评论。
许可证:MIT。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。