mcpField
A
Assisted Service MCP Server

Assisted Service MCP Server

本地服务
github.com/carbonin云与基础设施070 周前更新

关于 Assisted Service MCP Server

Assisted Service MCP Server 将 OpenShift Assisted Installer API 接入 MCP,面向需要诊断集群问题并管理安装流程的用户。它支持 STDIO 和 SSE 传输,可查询集群与事件并执行集群配置和安装操作。

主要功能

  1. 01列出集群并查询详情
  2. 02创建集群和 infraenv
  3. 03启动集群安装
  4. 04查询集群与主机事件
  5. 05配置 VIP 和主机角色
  6. 06查询版本及添加 Operator bundle

适用场景

  1. 01排查集群安装失败原因
  2. 02检查集群或主机事件
  3. 03创建并启动 Assisted Installer 集群

MCP 相关

作为 MCP 服务,向客户端提供 OpenShift Assisted Installer 的集群、主机、事件、版本及 Operator bundle 管理工具;支持 STDIO 和 SSE 传输。

配置

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

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Assisted Service MCP Server

用于与 OpenShift assisted installer API 交互的 MCP 服务。

诊断集群故障并了解如何修复。

试用:

  1. 克隆仓库:
git clone [email protected]:carbonin/assisted-service-mcp.git
  1. 从 https://cloud.redhat.com/openshift/token 获取 OpenShift API 令牌

  2. 根据要使用的传输方式,以不同方式启动和配置服务

对于 STDIO:

例如,在 VSCode 中:

   "mcp": {
        "servers": {
            "AssistedService": {
                "command": "uv",
                "args": [
                    "--directory",
                    "/path/to/assisted-service-mcp",
                    "run",
                    "mcp",
                    "run",
                    "/path/to/assisted-service-mcp/server.py"
                ],
                "env": {
                    "OFFLINE_TOKEN": <your token>
                }
            }
        }
    }

对于 SSE(推荐):

在终端中启动服务:

OFFLINE_TOKEN=<your token> uv run server.py

在客户端中配置服务:

    "assisted-sse": {
      "transport": "sse",
      "url": "http://localhost:8000/sse"
    }
通过请求标头提供 Offline Token

如果未设置 OFFLINE_TOKEN 环境变量,可以通过请求标头提供令牌。 配置 MCP 客户端时,添加 OCM-Offline-Token 标头:

    "assisted-sse": {
      "transport": "sse",
      "url": "http://localhost:8000/sse",
      "headers": {
        "OCM-Offline-Token": "<your token>"
      }
    }
  1. 询问有关集群的问题: 询问集群的示例提示词

可用工具

此 MCP 服务提供以下工具,用于与 OpenShift Assisted Installer 交互:

集群管理
  • list_clusters - 列出当前用户的所有 assisted installer 集群。返回最少的集群信息。

  • cluster_info - 获取指定 ID 的 assisted installer 集群的详细信息

    • cluster_id:集群 ID(字符串,必填)
  • create_cluster - 创建新的 assisted installer 集群和 infraenv。仅当要创建单节点集群或不需要高可用性时,才将 single_node 设为 true。以 JSON 格式返回集群 ID 和 infraenv ID。

    • name:集群名称(字符串,必填)
    • version:OpenShift 版本(字符串,必填)
    • base_domain:集群的基础域名(字符串,必填)
    • single_node:是否创建单节点集群(布尔值,必填)
  • install_cluster - 为指定 ID 的 assisted installer 集群触发安装

    • cluster_id:集群 ID(字符串,必填)
  • set_cluster_vips - 设置集群的 API 和 ingress 虚拟 IP 地址(VIP)

    • cluster_id:集群 ID(字符串,必填)
    • api_vip:API 虚拟 IP 地址(字符串,必填)
    • ingress_vip:Ingress 虚拟 IP 地址(字符串,必填)
事件和监控
  • cluster_events - 获取与指定 ID 的集群相关的事件

    • cluster_id:集群 ID(字符串,必填)
  • host_events - 获取集群中特定主机的相关事件

    • cluster_id:集群 ID(字符串,必填)
    • host_id:主机 ID(字符串,必填)
基础设施环境
  • infraenv_info - 获取指定 ID 的 assisted installer infra env 的详细信息。包含 ISO 下载 URL 和 infra env 元数据等信息。
    • infraenv_id:基础设施环境 ID(字符串,必填)
主机管理
  • set_host_role - 将主机更新为指定角色。角色选项包括:“auto-assign”、“master”、“arbiter”、“worker”
    • host_id:主机 ID(字符串,必填)
    • infraenv_id:基础设施环境 ID(字符串,必填)
    • role:主机角色(字符串,必填)
OpenShift 版本和 Operator
  • list_versions - 列出可通过 assisted installer 安装的 OpenShift 版本

  • list_operator_bundles - 列出安装期间可选添加到集群的 Operator bundle

  • add_operator_bundle_to_cluster - 请求在指定集群中安装 Operator bundle

    • cluster_id:集群 ID(字符串,必填)
    • bundle_name:Operator bundle 名称(字符串,必填)
使用示例
  • 列出所有集群:“显示我的所有集群”
  • 获取集群详细信息:“提供集群 abc123 的详细信息”
  • 创建集群:“创建一个名为 'my-cluster'、使用 OpenShift 4.14 且基础域名为 'example.com' 的新集群”
  • 检查集群事件:“集群 abc123 上发生了哪些事件?”
  • 安装集群:“开始安装集群 abc123”

评论

支持 Markdown

第一次接触 MCP?

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

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