Radar MCP 服务端
使用说明
-
项目简介 Radar 在核心后端中集成了一个 MCP 服务器,用于向大语言模型(LLM)提供可标准化访问的上下文信息和功能。通过 MCP,LLM 客户端可以查询资源、调用工具、获取并渲染 Prompts,从而实现对 Kubernetes 集群的上下文感知与交互能力。
-
主要功能点
- 资源管理与数据访问:托管和管理集群中的资源信息,方便 LLM 以统一接口读取资源及其关系。
- 工具注册与执行:允许 LLM 通过 MCP 调用外部功能和服务。
- Prompt 模板定义与渲染:提供可自定义的提示模板,以便在对话中嵌入上下文信息和操作指令。
- JSON-RPC 通信:前后端通过 JSON-RPC 进行请求与响应,确保清晰的 API 语义。
- 传输模式与会话管理:具备会话管理、能力声明,以及可扩展的传输协议支持(如 STDIO/SSE/WebSocket 等,按实现实际情况暴露)。
-
安装与运行步骤
- 构建与启动
- 以 Radar 独立二进制形式运行,MCP 服务为其内置模块之一,默认开启;通过启动参数可以关闭(--no-mcp)。
- 运行后,MCP 服务通过 /mcp 路径对外提供 JSON-RPC 接口,LLM 客户端可连接该端点进行请求与响应交互。
- 客户端连接准备
- MCP 客户端需要具备 MCP 服务器的启动信息(服务器名称、启动命令与参数等)以建立连接。
- 具体配置见下方“服务器配置”描述(JSON 配置示例,包含 server name、command、args 等字段)。
- 使用 MCP 的最佳实践
- 在正式环境中启用安全认证、访问控制与日志审计,确保对上下文信息和工具执行能力的受控访问。
- 根据集群规模和使用场景,结合 Radar 的其它后端能力,合理配置资源访问与工具调用的权限。
- 构建与启动
-
服务器配置(MCP 客户端需要的配置信息示例,JSON;实际客户端不需要你在此处执行代码,只需在配置中提供以下信息) { "server_name": "radar-mcp", "command": ["/path/to/radar"], "args": [ "--mcp", "--mcp-endpoint", "http://localhost:9280/mcp" ] // 说明: // - server_name: MCP 服务的标识名称,应与服务器实际暴露的一致。 // - command: 启动 MCP 服务器或包含 MCP 模块的主程序的执行路径(此处以 Radar 二进制为例)。 // - args: 启动参数数组,至少包含启动 MCP 的标志和服务端地址等信息,确保客户端能够定位到 MCP 服务。 // 备注:Radar 的 MCP 服务器是 Radar 二进制内置的一部分,因此实际部署时,命令与参数应以你当前运行环境的可执行文件为准;客户端实现无需额外的服务器代码。 }
-
基本使用方法
- 启动 Radar 主应用(开启 MCP 服务),确保命令行参数中未禁用 MCP。
- 配置 MCP 客户端并连接至 Radar 提供的 /mcp JSON-RPC 接口。
- 通过 MCP 的资源、工具、Prompts 接口读取集群上下文、执行外部功能、渲染对话模板。
- 在 LLM 交互中通过 JSON-RPC 传输请求与获取响应,整合到你的对话流程中。