MCP Server for Spinnaker

MCP Server for Spinnaker

镜像

简介

此包提供 MCP(模型上下文协议)服务器实现,使 Claude 等 AI 模型能与 Spinnaker 部署、流水线和应用程序交互。

安装

npm install @airjesus17/mcp-server-spinnaker
# 或
yarn add @airjesus17/mcp-server-spinnaker

基本使用

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

// 初始化服务器
const server = new SpinnakerMCPServer(
  'https://your-gate-url',
  ['app1', 'app2'],  // 监控的应用
  ['prod', 'staging']  // 监控的环境
);

// 启动服务器
const port = 3000;
server.listen(port, () => {
  console.log(`Spinnaker MCP 服务器运行在端口 ${port}`);
});

AI 可用工具

1. get-applications

检索监控的 Spinnaker 应用及其状态

2. get-pipelines

// 参数
{
  "application": "myapp"
}

3. trigger-pipeline

// 参数
{
  "application": "myapp",
  "pipelineId": "pipeline-1",
  "parameters": {
    "version": "1.2.3",
    "environment": "production"
  }
}

配置

通过环境变量配置:

  • GATE_URL: Spinnaker Gate 服务 URL
  • MCP_PORT: MCP 服务器端口 (默认: 3000)
  • REFRESH_INTERVAL: 上下文刷新间隔(秒) (默认: 30)

上下文更新

服务器自动维护上下文信息,包括:

  • 应用列表及状态
  • 每个应用的流水线状态
  • 当前部署
  • 近期流水线执行

每 30 秒自动刷新一次上下文。

类型支持

import type {
  SpinnakerApplication,
  SpinnakerPipeline,
  SpinnakerDeployment,
  SpinnakerExecution
} from '@airjesus17/mcp-server-spinnaker';

许可证

MIT 许可证