mcp -spinnaker
MCP Server for Spinnaker integrations.
claude mcp add --transport stdio dion-hagan-mcp-server-spinnaker node path/to/server.js \ --env GATE_URL="URL of your Spinnaker Gate service" \ --env MCP_PORT="Port to run the MCP server on (default: 3000)" \ --env REFRESH_INTERVAL="Context refresh interval in seconds (default: 30)"
How to use
This MCP server implements an integration with Spinnaker, exposing a set of tools that allow an AI model (via the MCP protocol) to query Spinnaker applications, pipelines, and deployments and to trigger pipeline executions. The server is designed to be used as a drop-in MCP service that your agent (for example Claude in this context) can communicate with using the MCP protocol. It maintains context about the monitored Spinnaker applications and their pipelines and exposes functions to fetch application state, list pipelines for an application, and trigger pipeline runs with parameters. The included tools are get-applications, get-pipelines, and trigger-pipeline. You can run the server locally, point it at your Spinnaker Gate URL, and configure which applications and environments you want to monitor. The server will periodically refresh its context (every 30 seconds by default) so that the AI model has up-to-date information when making recommendations or decisions.
How to install
Prerequisites:
- Node.js (LTS) and npm or yarn installed on your machine
- Access to a Spinnaker Gate endpoint (for example, https://your-gate-url)
Installation steps:
-
Install the MCP server package from npm: npm install @airjesus17/mcp-server-spinnaker
or using yarn
yarn add @airjesus17/mcp-server-spinnaker
-
Create a simple startup script (example Node.js) that initializes and starts the MCP server, configuring it with your Spinnaker Gate URL and desired apps/environments. Example:
// server.js const { SpinnakerMCPServer } = require('@airjesus17/mcp-server-spinnaker'); const server = new SpinnakerMCPServer( 'https://your-gate-url', ['app1', 'app2'], ['prod', 'staging'] ); const port = process.env.MCP_PORT || 3000; server.listen(port, () => { console.log(
Spinnaker MCP Server is running on port ${port}); }); -
Run the server locally via Node.js: node path/to/server.js
-
If you prefer to run via a package manager script, add a script to package.json, e.g.: { "scripts": { "start:mcp-spinnaker": "node path/to/server.js" } }
-
Ensure environment variables are set, such as GATE_URL, MCP_PORT, and REFRESH_INTERVAL, either in your shell, a .env file, or your deployment environment.
Additional notes
Notes and tips:
- The MCP server relies on Spinnaker Gate APIs; ensure your Gate URL is accessible from where you run the server.
- The environment variables GATE_URL, MCP_PORT, and REFRESH_INTERVAL can be tuned to fit your deployment needs. REFRESH_INTERVAL defaults to 30 seconds if not set.
- The available tools (get-applications, get-pipelines, trigger-pipeline) are designed to be used by the MCP client to fetch state and trigger actions in Spinnaker; ensure the client supplies correct parameters (e.g., application names and pipeline IDs) when invoking trigger-pipeline.
- If you encounter authentication issues with Spinnaker Gate, you may need to configure API tokens or credentials according to your Gate setup.
- For development, you can contribute by adding more tools or extending existing ones to cover additional Spinnaker capabilities (e.g., deployment status dashboards, rollback commands).
- This MCP server is intended as a reference integration for AI-assisted CI/CD workflows and is written to be easily adaptable to other deployment targets beyond Spinnaker.
Related MCP Servers
iterm
A Model Context Protocol server that executes commands in the current iTerm session - useful for REPL and CLI assistance
mcp
Octopus Deploy Official MCP Server
furi
CLI & API for MCP management
editor
MCP Server for Phaser Editor
DoorDash
MCP server from JordanDalton/DoorDash-MCP-Server
mcp
MCP сервер для автоматического создания и развертывания приложений в Timeweb Cloud