Spinnaker MCP Server 使用说明

项目简介

Spinnaker MCP Server 是一个基于 Model Context Protocol (MCP) 的服务器实现,旨在将 Anthropic 的 Claude 等 AI 模型与 Spinnaker 持续交付平台集成。通过标准化的 MCP 接口,AI 模型可以访问 Spinnaker 的应用、流水线和部署状态等上下文信息,并利用预定义的工具与 Spinnaker 进行交互,例如触发流水线。这为 AI 驱动的 CI/CD 流程自动化和智能化决策提供了基础。

主要功能点

  • 资源管理: 托管和管理 Spinnaker 应用、流水线、部署和快照等资源,为 AI 模型提供结构化的数据访问。
  • 工具注册与执行: 提供 'get-applications'(获取应用列表), 'get-pipelines'(获取流水线列表), 'trigger-pipeline'(触发流水线)等工具,允许 AI 模型调用 Spinnaker 功能。
  • 上下文更新: 自动维护 Spinnaker 部署上下文,包括应用状态、流水线状态、部署信息和最近的流水线执行记录,并定期刷新。
  • 实时监控: 通过 WebSocket 实时监控流水线执行状态,及时更新上下文信息。

安装步骤

  1. 确保已安装 Node.js 和 npm 或 yarn。
  2. 使用 npm 或 yarn 安装 '@airjesus17/mcp-server-spinnaker' 包:
    npm install @airjesus17/mcp-server-spinnaker
    yarn add @airjesus17/mcp-server-spinnaker

服务器配置

MCP 客户端需要配置以下信息以连接到 Spinnaker MCP Server:

{
  "serverName": "spinnaker-mcp-server",
  "command": "node",
  "args": [
    "path/to/your/server.js"
  ],
  "serverUrl": "http://localhost:3000"
}

参数注释:

  • 'serverName': 服务器名称,可以自定义。
  • 'command': 启动服务器的命令,这里使用 'node' 运行 JavaScript 文件。
  • 'args': 命令参数,指向 Spinnaker MCP Server 的入口文件路径 ('path/to/your/server.js')。你需要根据实际情况修改文件路径。
  • 'serverUrl': MCP 服务器的 URL 地址,默认为 'http://localhost:3000'。

server.js 示例 (请根据实际项目结构调整路径):

import { SpinnakerMCPServer } from '@airjesus17/mcp-server-spinnaker';
import { GateClient } from '@airjesus17/mcp-server-spinnaker';

// Spinnaker Gate URL,请替换为你的 Spinnaker Gate 地址
const gateUrl = process.env.GATE_URL || 'http://spin-gate.example.com';
// 需要监控的 Spinnaker 应用列表,请替换为你的应用名称
const applications = (process.env.MCP_APPLICATIONS || 'app1,app2').split(',');
// 需要监控的环境列表,请替换为你的环境名称
const environments = (process.env.MCP_ENVIRONMENTS || 'prod,staging').split(',');

const gateClient = new GateClient(gateUrl);
const server = new SpinnakerMCPServer(gateClient, applications, environments);

const port = parseInt(process.env.MCP_PORT || '3000', 10);
server.listen(port, () => {
  console.log('Spinnaker MCP Server is running on port ${port}');
});

环境变量配置 (可选):

  • 'GATE_URL': Spinnaker Gate 服务的基础 URL。
  • 'MCP_APPLICATIONS': 逗号分隔的 Spinnaker 应用名称列表。
  • 'MCP_ENVIRONMENTS': 逗号分隔的环境名称列表。
  • 'MCP_PORT': MCP 服务器监听的端口号,默认为 3000。

基本使用方法

  1. 启动 Spinnaker MCP Server:

    • 配置 'GATE_URL', 'MCP_APPLICATIONS', 'MCP_ENVIRONMENTS' 等环境变量 (可选)。
    • 运行 'node path/to/your/server.js' 启动服务器。
  2. 配置 MCP 客户端:

    • 在 MCP 客户端中,配置 Server Configuration 中提供的 JSON 信息,指向正在运行的 Spinnaker MCP Server 地址。
    • 客户端可以通过 MCP 协议与服务器交互,例如调用 'get-applications' 工具获取 Spinnaker 应用列表,或调用 'trigger-pipeline' 工具触发 Spinnaker 流水线。

请参考仓库 README 和示例代码了解更详细的使用方法和 API 调用。

信息

分类

开发者工具