mcpField
R
Rubrik Security Cloud

Rubrik Security Cloud

本地服务
developer.rubrik.com安全21 周前更新

关于 Rubrik Security Cloud

Rubrik Security Cloud MCP 服务面向 Rubrik 管理员及自动化团队,连接 RSC GraphQL API。它内置完整 API 索引用于离线发现操作,并可在配置服务账户后执行查询及受控写入。

主要功能

  1. 01离线搜索 GraphQL 操作和类型
  2. 02查看操作参数及类型定义
  3. 03查询工作负载、事件、集群和 SLA
  4. 04生成未内置写操作的可运行代码
  5. 05按策略启用快照、主机注册和 SLA 写入
  6. 06将对话流程保存为可复用工具

适用场景

  1. 01在无凭据时探索 RSC API 模式
  2. 02查看工作负载保护状态和备份历史
  3. 03查询事件、集群及 SLA 配置
  4. 04保存重复的查询步骤以供后续复用

MCP 相关

作为 MCP 服务,它向 AI 助手提供 RSC API 发现、GraphQL 查询、工作流管理及若干内置写入工具。执行操作需要服务账户;内置写入工具默认关闭。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"rubrikinc-rubrik": {
"command": "uvx",
"args": [
"rubrik-mcp"
],
"env": {
"RSC_SERVICE_ACCOUNT_FILE": "<RSC_SERVICE_ACCOUNT_FILE>",
"RSC_URL": "<RSC_URL>",
"RSC_CLIENT_ID": "<RSC_CLIENT_ID>",
"RSC_CLIENT_SECRET": "<RSC_CLIENT_SECRET>",
"RUBRIK_MCP_CONFIG_DIR": "<RUBRIK_MCP_CONFIG_DIR>"
}
}
}
}
启动命令uvx rubrik-mcp
需要配置的环境变量
RSC_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+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypirubrik-mcp0.10.20261012

工具

13

收录的工具列表 · 更新于 6 天前

参数类型必填说明
searchstring是
operation_typestring否

详细介绍

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。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。