关于 Rubrik Security Cloud
Rubrik Security Cloud MCP 服务面向 Rubrik 管理员及自动化团队,连接 RSC GraphQL API。它内置完整 API 索引用于离线发现操作,并可在配置服务账户后执行查询及受控写入。
主要功能
- 01离线搜索 GraphQL 操作和类型
- 02查看操作参数及类型定义
- 03查询工作负载、事件、集群和 SLA
- 04生成未内置写操作的可运行代码
- 05按策略启用快照、主机注册和 SLA 写入
- 06将对话流程保存为可复用工具
适用场景
- 01在无凭据时探索 RSC API 模式
- 02查看工作负载保护状态和备份历史
- 03查询事件、集群及 SLA 配置
- 04保存重复的查询步骤以供后续复用
MCP 相关
作为 MCP 服务,它向 AI 助手提供 RSC API 发现、GraphQL 查询、工作流管理及若干内置写入工具。执行操作需要服务账户;内置写入工具默认关闭。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
uvx rubrik-mcpRSC_SERVICE_ACCOUNT_FILEPath to an RSC service account JSON file. Optional: discovery tools work without credentials.RSC_URLRSC URL, e.g. https://example.my.rubrik.com. Alternative to a service account file.RSC_CLIENT_IDService account client ID. Use with RSC_URL and RSC_CLIENT_SECRET.RSC_CLIENT_SECRET密钥Service account client secret. Use with RSC_URL and RSC_CLIENT_ID.RUBRIK_MCP_CONFIG_DIRDirectory for the gating policy and saved workflows. Defaults to ~/.config/rubrik-mcp.本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
13收录的工具列表 · 更新于 6 天前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| search | string | 是 | |
| operation_type | string | 否 |
详细介绍
Rubrik MCP
一个将 AI 助手连接到 Rubrik Security Cloud GraphQL API 的 MCP 服务。它面向 Rubrik 管理员和使用 Rubrik 进行自动化的团队,可在调用它的 AI 助手旁边本地运行(在你自己的工作站或 Agent 的服务器上)。
你可以做什么
发现
MCP 内置了整个 RSC GraphQL API 的预构建索引。发现工具可让 AI Agent 浏览该索引——搜索操作、查看完整参数签名、追踪输入和返回类型——从而为任何请求准确找到合适的操作和字段结构。这样一来,第一次就能生成精确、格式正确的 GraphQL。
发现工具无需 RSC 凭据,完全离线运行。因此,它们本身就很实用:如果你正在评估 API、为集成制作原型,或在获得生产凭据前构建自动化,可以立即开始。
> "What operations are available for SLA management?"
> "Show me the full argument shape for the assignSla mutation."
> "Generate Python code to assign an SLA domain to a list of workload IDs."
由于 Agent 能理解架构索引中的查询和变更,因此无需连接到 RSC,就能为任何写入操作生成可运行的 Python 代码。
执行
使用 RSC 服务帐户后,Agent 可以针对你的环境运行实时 GraphQL 查询:
- 列出工作负载及其保护状态、合规状态和备份历史记录
- 检索近期事件和故障
- 触发按需快照并轮询,直到快照完成
- 注册主机并分配 SLA 域
原始 GraphQL 执行是只读的。如果你请求的写入操作不在内置工具范围内,服务会返回尝试执行的变更,并由 Agent 生成可运行的代码示例。少数写入操作提供了专用内置工具:按需快照(rsc_take_on_demand_snapshot)、主机接入(rsc_onboard_host)和 SLA 分配(rsc_assign_sla)。默认情况下,这些工具处于禁用状态——在门控策略中设置 "writes_enabled": true 即可启用。对于其他操作,代码生成方式会提供可运行的脚本,让你拥有完全的控制权。
警告
写入工具会操作你的 Rubrik 环境,而驱动 MCP 的大模型会决定何时调用这些工具。 任何模型都可能误读指令,或受其读取的不可信数据影响(提示词注入),进而调用你无意启用的写入工具——例如通过
rsc_assign_sla更改 SLA,导致数据失去保护。随着更多写入工具的加入,这类风险面也会扩大。正因如此,这些工具默认处于禁用状态;启用它们是一项明确的选择。可靠的防护边界是采用遵循最小权限原则的只读服务帐户,无论你使用哪种模型,也无论 Agent 如何操作,它都无法执行任何写入操作。请参阅服务帐户角色建议,并为破坏性操作启用法定人数授权。
内置工具
发现 — 无需凭据
| 工具 | 功能 |
|---|---|
rsc_search_schema | 通过关键词、字段含义或类型词汇,一次调用即可查找合适的查询或变更 |
rsc_describe_operation_full | 展开所有输入/枚举类型的参数签名 |
rsc_describe_type | 查看 GraphQL 类型的字段和值 |
执行 — 需要服务账户
| 工具 | 功能 |
|---|---|
rsc_execute_operation | 运行任意原始 GraphQL 查询(变更则会生成代码) |
rsc_get_workloads | 查看工作负载的保护状态、合规性和备份历史 |
rsc_get_events | 查看近期事件和活动,始终限定时间范围 |
rsc_get_clusters | 查看已在 RSC 中注册的 Rubrik 集群,包括状态、版本、容量和剩余可用时间 |
rsc_get_sla_domains | 查看 SLA Domain,包括基本频率、保留锁定、归档和复制设置 |
rsc_search_help | 按关键词搜索 KB 文章、产品文档和已知问题 |
rsc_take_on_demand_snapshot | 为工作负载触发备份并返回作业 ID |
rsc_wait_for_job | 轮询作业直至完成 |
rsc_onboard_host | 注册物理或虚拟主机 |
rsc_assign_sla | 为工作负载分配、取消分配 SLA,或设置为不保护 |
工作流管理 — 需要服务账户
| 工具 | 功能 |
|---|---|
rsc_save_workflow | 将对话流程保存为具名的可复用工具 |
rsc_list_workflows | 列出所有已保存的工作流 |
rsc_delete_workflow | 移除已保存的工作流 |
创建工具
Agent 完成查找信息以回答问题后,你可以将整个流程保存为具名的 MCP 工具:
“将其保存为工作流,方便我重复使用。”
下次重启时,该工具会与内置工具一同显示——一次调用即可替代多步架构发现。重复执行操作时消耗的令牌更少,响应也更快。工作流文件是纯 JSON,可供你编辑、进行版本控制并与团队分享。
安装
前提条件
- uv(推荐),或 Python 3.10 或更高版本及 pip
- Rubrik Security Cloud 账户和服务账户(仅执行工具需要)
通过 Agent 提示词安装
如果你使用 Claude Code,将以下内容粘贴到聊天中,Agent 会处理后续操作:
“将 Rubrik MCP 服务(PyPI 软件包
rubrik-mcp,使用uvx rubrik-mcp运行)添加到我的 Claude Code MCP 配置中。我的 RSC 服务账户 JSON 文件位于~/.rsc/service_account.json。”
对于 Claude Desktop:
“将 Rubrik MCP 服务(PyPI 软件包
rubrik-mcp,使用uvx rubrik-mcp运行)添加到我的 Claude Desktop 配置中。我的 RSC 服务账户 JSON 文件位于~/.rsc/service_account.json。”
手动安装
使用 uvx(推荐): 无需单独安装。uvx rubrik-mcp 会从 PyPI 下载软件包到缓存的隔离环境中并运行。请在下方的客户端配置中直接将其用作命令。若要固定到特定版本,请使用 rubrik-mcp@<version>,例如 uvx [email protected]。
使用 pip:
pip install rubrik-mcp
请记下已安装命令的完整路径。在客户端配置中,请用该路径替代 uvx rubrik-mcp:
which rubrik-mcp
# example: /Users/you/.venv/bin/rubrik-mcp
加固安装(可选)
对于要求在安装时验证哈希(在安装前将每个软件包与已知的可信加密哈希进行核对)的环境,本仓库会为每个版本发布经过哈希校验的 requirements.txt。先安装经过验证的依赖集,再安装软件包本身:
pip install --require-hashes -r requirements.txt
pip install --no-deps rubrik-mcp
requirements.txt 根据已锁定并固定哈希的依赖集(uv export)生成;--require-hashes 会使 pip 拒绝任何哈希不匹配的软件包,而第二步中的 --no-deps 则确保经过验证的依赖集保持不变。然后按照上面的 pip 说明,将 rubrik-mcp 的完整路径配置到客户端中。此路径为可选项;标准安装已足以满足大多数用户的需求。
配置 MCP 客户端
Claude Code:
claude mcp add rubrik -e RSC_SERVICE_ACCOUNT_FILE=/path/to/service_account.json -- uvx rubrik-mcp
-e 等选项应放在 -- 之前;-- 之后的所有内容都是启动服务的命令。若仅用于发现,请省略 -e 选项。
验证其是否已注册:
claude mcp list
**Claude Desktop:**编辑 ~/Library/Application Support/Claude/claude_desktop_config.json(macOS)或 %APPDATA%\Claude\claude_desktop_config.json(Windows):
{
"mcpServers": {
"rubrik": {
"command": "uvx",
"args": ["rubrik-mcp"],
"env": {
"RSC_SERVICE_ACCOUNT_FILE": "/path/to/service_account.json"
}
}
}
}
桌面应用不一定会继承 Shell 的 PATH。如果 Claude Desktop 提示找不到 uvx,请将 "uvx" 替换为通过 which uvx 获取的完整路径(例如 /Users/you/.local/bin/uvx)。
其他 MCP 客户端(通用 stdio):
{
"name": "rubrik",
"transport": "stdio",
"command": "uvx",
"args": ["rubrik-mcp"],
"env": {
"RSC_SERVICE_ACCOUNT_FILE": "/path/to/service_account.json"
}
}
如果通过 pip 安装,请将 "command" 设置为 rubrik-mcp 的完整路径,并删除 "args"。
服务账号设置
在 RSC 的 Settings > Users and Roles > Service Accounts 中创建服务账号。系统提示时下载 JSON 凭据文件——RSC 不会再次显示密钥。
凭据文件如下所示:
{
"client_id": "client|...",
"client_secret": "...",
"access_token_uri": "https://<your-rsc-domain>/api/client_token"
}
通过以下三种方式之一向 MCP 服务提供该文件(按以下顺序检查):
选项 A — 服务账号 JSON 文件(推荐)
export RSC_SERVICE_ACCOUNT_FILE=/path/to/service_account.json
选项 B — 单独的环境变量
export RSC_URL=https://<your-rsc-domain>
export RSC_CLIENT_ID=client|...
export RSC_CLIENT_SECRET=...
选项 C — ~/.rsc/config.json 配置文件
{
"client_id": "client|...",
"client_secret": "...",
"access_token_uri": "https://<your-rsc-domain>/api/client_token"
}
服务账号角色建议
为服务账号分配的角色决定了 MCP 服务可以访问哪些内容。仅分配工作流实际需要的权限。
用于监控、报告和审计——分配只读角色。此角色涵盖工作负载列表、合规状态、事件历史记录和备份报告。只读角色无法修改 SLA 分配、触发快照或更改任何配置。对于大多数用户,这是合适的起点。
用于 DevOps 自动化——分配包含自动化所需特定权限的角色。常见的附加权限包括:SLA 管理权限(用于分配或修改 SLA 域)以及按需备份权限(用于触发快照)。除非工作流明确需要,否则不要授予集群管理员或全局管理员权限。
一般建议:
- 为 MCP 服务账号创建专用角色,而不要重复使用现有的管理员角色。使用清晰的名称(例如“MCP 只读”或“MCP DevOps”)。
- 在 Settings > Users and Roles > Roles 中配置角色。Rubrik 的权限模型采用分层结构——尽可能将角色限定到特定集群或工作负载类型,而不是授予全局访问权限。
- 对于破坏性操作(删除快照、移除 SLA 策略、配置集群),请在 Settings > Security > Quorum Authorization 中启用 Quorum Authorization。即使服务账号具备所需权限,此功能也要求另一位获授权用户在操作执行前进行批准。
- 使用 RSC 的 IP 允许列表限制可进行身份验证的 IP,位置为 Settings > Security > IP Allowlist。仅添加运行 MCP 服务的计算机的 IP 或 CIDR 范围。
- 按计划轮换客户端密钥(至少每月一次)。密钥默认不会过期。对任何包含
client_secret的文件使用chmod 600。 - 所有 API 活动都会记录在 RSC 审计日志中,位置为 Reports > Audit Logs。请定期查看。
保存自己的工具
当你发现自己反复提出同一个问题时,可以将其保存下来:
“将此保存为工作流,以便我重复使用。”
AI 会调用 rsc_save_workflow,将 JSON 文件写入 MCP 配置目录的 workflows/ 文件夹。默认路径为 ~/.config/rubrik-mcp/workflows/;如果设置了 $RUBRIK_MCP_CONFIG_DIR,则写入该目录下(容器化场景请参阅 docs/docker.md)。下次重启时,该工作流会注册为一个具名 MCP 工具,只需调用一次,无需分多步发现架构。重复操作消耗的 token 更少,响应也更快。
工作流文件是纯 JSON。你可以用任意编辑器打开它们,调整查询、更改默认值,或与团队共享。
社区贡献的工作流(威胁情报源管理、SLA 操作等)可在 rubrik-community 仓库中获取。将任意 JSON 文件复制到配置目录的 workflows/ 文件夹中(默认路径为 ~/.config/rubrik-mcp/workflows/,也可以位于 $RUBRIK_MCP_CONFIG_DIR 下),然后重启 MCP 客户端即可安装。
延伸阅读
如需查看完整的内置工具参考、架构图、本地门控策略(~/.config/rubrik-mcp/mcp-policy.json,可通过 $RUBRIK_MCP_CONFIG_DIR 更改位置)、审计日志(mcp-audit.log,位于同一配置目录)、此前保存在 ~/.rubrik 中的配置升级说明,以及开发环境设置,请参阅 docs/advanced.md。如需在容器中运行服务,请参阅 docs/docker.md。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。