spinnaker-mcp
MCP Server for Spinnaker — manage applications, pipelines, and deployments via the Model Context Protocol
Documentation
Spinnaker-MCP
A bridge that exposes any Spinnaker instance as an MCP v1 server via the Gate API, written in Go.
What you get
| Category | Tool | Description |
|---|---|---|
| Applications | `list_applications` | List all Spinnaker applications |
| `get_application` | Get detailed application info (accounts, clusters, attributes) | |
| Pipelines | `list_pipelines` | List pipeline configurations for an application |
| `get_pipeline` | Get a specific pipeline's full configuration | |
| `trigger_pipeline` | Trigger a pipeline with optional parameters | |
| `save_pipeline` | Save/create a pipeline definition | |
| `update_pipeline` | Update an existing pipeline definition | |
| `delete_pipeline` | Delete a pipeline definition | |
| `get_pipeline_history` | Get revision history for a pipeline config | |
| Executions | `list_executions` | List recent executions, filterable by status |
| `get_execution` | Get full execution details (stages, outputs, timing) | |
| `search_executions` | Rich search by trigger type, time range, status | |
| `cancel_execution` | Cancel a running execution with optional reason | |
| `pause_execution` | Pause a running execution at the current stage | |
| `resume_execution` | Resume a paused execution | |
| `restart_stage` | Restart a failed stage within an execution | |
| `evaluate_expression` | Evaluate a SpEL expression against an execution | |
| Strategies | `list_strategies` | List deployment strategy configurations |
| `save_strategy` | Create or update a deployment strategy | |
| `delete_strategy` | Delete a deployment strategy | |
| Infrastructure | `list_server_groups` | List server groups (deployment targets) with instance counts |
| `list_load_balancers` | List load balancers across all accounts and regions | |
| `list_clusters` | List cluster names grouped by account | |
| `get_cluster` | Get cluster details including server groups | |
| `get_scaling_activities` | Get scaling activities for a cluster | |
| `get_target_server_group` | Target-based server group lookup (newest, oldest, etc.) | |
| `list_firewalls` | List all firewalls/security groups across accounts | |
| `get_firewall` | Get firewall details by account, region, and name | |
| `get_instance` | Get instance details (health, metadata, launch time) | |
| `get_console_output` | Get instance console output for debugging | |
| `find_images` | Search for machine images by tags, region, account | |
| `get_image_tags` | List image tags for a repository | |
| `list_networks` | List VPCs/networks by cloud provider | |
| `list_subnets` | List subnets by cloud provider | |
| `list_accounts` | List all configured cloud accounts/credentials | |
| `get_account` | Get account details and permissions | |
| Tasks | `get_task` | Get orchestration task status (deploy, resize, rollback) |
Everything is exposed over JSON-RPC. LLMs and agents can: `initialize` -> `listTools` -> `callTool` and interact with your Spinnaker deployments.
Quick-start
npm (stdio transport)
npx spinnaker-mcpOr install globally:
npm install -g spinnaker-mcp
spinnaker-mcpThis downloads the pre-built Go binary for your platform and runs it with stdio transport.
Docker
docker run --rm -e GATE_URL=http://spin-gate:8084 -e TRANSPORT=stdio drumsergio/spinnaker-mcp:0.3.1Local build
git clone https://github.com/GeiserX/spinnaker-mcp
cd spinnaker-mcp
cp .env.example .env && $EDITOR .env
go run ./cmd/serverConfiguration
| Variable | Default | Description |
|---|---|---|
| `GATE_URL` | `http://localhost:8084` | Spinnaker Gate API endpoint (without trailing /) |
| `GATE_TOKEN` | _(empty)_ | Bearer token for authentication |
| `GATE_USER` | _(empty)_ | Basic auth username (alternative to token) |
| `GATE_PASS` | _(empty)_ | Basic auth password |
| `GATE_CERT_FILE` | _(empty)_ | Path to x509 client certificate (PEM) |
| `GATE_KEY_FILE` | _(empty)_ | Path to x509 client key (PEM) |
| `GATE_INSECURE` | `false` | Skip TLS certificate verification |
| `TRANSPORT` | _(empty = HTTP)_ | Set to `stdio` for stdio transport |
| `MCP_PORT` | `8085` | HTTP transport port (ignored when TRANSPORT=stdio) |
| `MCP_BIND_ADDR` | `127.0.0.1` | HTTP transport bind address (set to `0.0.0.0` to listen on all interfaces) |
Authentication priority: Bearer token > Basic auth > x509 client cert > No auth.
Put them in a `.env` file (from `.env.example`) or set them in the environment.
Claude Code / Claude Desktop configuration
{
"mcpServers": {
"spinnaker": {
"command": "npx",
"args": ["-y", "spinnaker-mcp"],
"env": {
"GATE_URL": "https://spin-gate.example.com",
"GATE_TOKEN": "your-token-here"
}
}
}
}Testing
go test -v -race ./...Tested with Inspector. Before making a PR, make sure this MCP server behaves well via that tool.
Credits
Spinnaker -- open-source continuous delivery platform
MCP-GO -- Go MCP implementation
GoReleaser -- painless multi-arch releases
Maintainers
Contributing
Feel free to dive in! Open an issue or submit PRs.
Spinnaker-MCP follows the Contributor Covenant Code of Conduct.
Other MCP Servers by GeiserX
- genieacs-mcp -- TR-069 device management
- cashpilot-mcp -- Passive income monitoring
- duplicacy-mcp -- Backup health monitoring
- lynxprompt-mcp -- AI configuration blueprints
- pumperly-mcp -- Fuel and EV charging prices
- telegram-archive-mcp -- Telegram message archive
Frequently asked questions
What is spinnaker-mcp?
spinnaker-mcp is MCP Server for Spinnaker — manage applications, pipelines, and deployments via the Model Context Protocol
How do I install spinnaker-mcp?
Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.
Is spinnaker-mcp open source?
Yes — it is hosted on GitHub at https://github.com/GeiserX/spinnaker-mcp and has 5 stars.
Related MCP tools
eBPF-powered network observability for Kubernetes. Indexes L4/L7 traffic with full K8s context, decrypts TLS without keys. Queryable by AI agents via MCP and humans via dashboard.
The missing open-source Kubernetes UI with a built-in MCP server for AI agents. See what's broken, why, and what changed. Issues, Topology, event timeline, Helm, GitOps, live service traffic, and cluster audits - all in one Go binary.
One place to manage & connect to all your MCP servers
An AI Gateway, registry, and proxy that sits in front of any MCP, A2A, or REST/gRPC APIs, exposing a unified endpoint with centralized discovery, guardrails and management. Optimizes Agent & Tool calling, and supports plugins.
mcp-language-server gives MCP enabled clients access semantic tools like get definition, references, rename, and diagnostics.
ToolHive makes deploying MCP servers easy, secure and fun Go-based implementation. Trusted by 1300+ developers. Trusted by 1300+ developers.
Run your own MCP server? See who uses it and what to fix.
Measure it with TrackMCP