About Spinnaker
Spinnaker is a Go MCP server for teams managing applications and deployments through Spinnaker. It connects to a Spinnaker instance through Gate and defaults to a read-only toolset, with write operations enabled separately.
Key features
- 01Inspect applications and pipelines
- 02Search and manage pipeline executions
- 03Read deployment and infrastructure details
- 04Enable write tools with TOOLSETS=all
- 05Connect through stdio or Streamable HTTP
Use cases
- 01Review pipeline execution status
- 02Inspect clusters and server groups
- 03Trigger or update pipelines when write tools are enabled
- 04Check infrastructure details during deployment operations
MCP support
Spinnaker exposes tools, resources, and prompts for interacting with a Spinnaker instance through its Gate API. It supports stdio and stateless Streamable HTTP transports.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
npx -y spinnaker-mcpGATE_URLSpinnaker Gate API URL (e.g. https://spin-gate.example.com)GATE_TOKENSecretBearer token for GateGATE_USERBasic auth username (alternative to a token)GATE_PASSSecretBasic auth passwordGATE_COOKIESecretSESSION cookie of a Gate behind SSO (OAuth2, SAML); or run 'spinnaker-mcp login' onceGATE_COOKIE_FILEFile holding that SESSION cookie (default: the file 'spinnaker-mcp login' writes)GATE_CERT_FILEx509 client certificate (PEM); needs GATE_KEY_FILEGATE_KEY_FILESecretx509 client key (PEM); needs GATE_CERT_FILEGATE_INSECURESkip TLS certificate verification of Gate (testing only)TOOLSETSTool groups to register. Default readonly; 'all' also registers the tools that trigger, cancel, edit, delete and judge pipelinesLocal servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project README
spinnaker-mcp
A bridge that exposes any Spinnaker instance as an MCP server via the Gate API, written in Go.
It gives an LLM 38 tools to read and operate Spinnaker: applications, pipelines, executions, strategies and infrastructure. By default only the 27 read tools are registered; TOOLSETS=all adds the 11 that change things.

Features
- Applications and pipelines: list, read, trigger, save, update and delete pipelines, with revision history.
- Executions: list, search by pipeline, trigger type, time range and status, read a compact summary, approve or reject a Manual Judgment, cancel, pause, resume, restart a stage, evaluate SpEL.
- Deployment strategies: list, save and delete.
- Infrastructure: server groups, load balancers, clusters, firewalls, instances and console output, images, networks, subnets, accounts.
- Orchestration task status (deploy, resize, rollback).
- Bearer token, basic auth, x509 client certificate, or the session cookie of a Gate behind SSO (
spinnaker-mcp login). - MCP 2026-07-28 and every earlier version down to 2024-11-05, on both transports, so current clients and older ones connect.
- Every tool has a title and all four annotation hints; read tools return structured output with a schema.
- stdio or stateless Streamable HTTP. HTTP binds to
127.0.0.1, needs a bearer token (MCP_AUTH_TOKEN) anywhere else, and rejects cross-site browser requests. - Ships as an npm package (
npx spinnaker-mcp), a Docker image and multi-arch Go binaries.
Quick start
Claude Code:
claude mcp add spinnaker -e GATE_URL=https://spin-gate.example.com -e GATE_TOKEN=your-token-here -- npx -y spinnaker-mcp
Claude Desktop (claude_desktop_config.json) and Cursor (.cursor/mcp.json):
{
"mcpServers": {
"spinnaker": {
"command": "npx",
"args": ["-y", "spinnaker-mcp"],
"env": { "GATE_URL": "https://spin-gate.example.com", "GATE_TOKEN": "your-token-here" }
}
}
}
VS Code (.vscode/mcp.json):
{
"servers": {
"spinnaker": {
"command": "npx",
"args": ["-y", "spinnaker-mcp"],
"env": { "GATE_URL": "https://spin-gate.example.com", "GATE_TOKEN": "your-token-here" }
}
}
}
Codex (~/.codex/config.toml):
[mcp_servers.spinnaker]
command = "npx"
args = ["-y", "spinnaker-mcp"]
env = { GATE_URL = "https://spin-gate.example.com", GATE_TOKEN = "your-token-here" }
Add "TOOLSETS": "all" to env to let the assistant trigger, judge, cancel or edit. Needs Node 18 or newer; the npm package fetches the Go binary for your platform on first run, checks it against the release checksums, and runs it over stdio. Docker, local builds and the other credentials are in Getting started.
A variable whose value is only an unexpanded placeholder, such as ${GATE_TOKEN}, counts as unset.
Documentation
The full documentation is at geiserx.github.io/spinnaker-mcp.
- Getting started: npm, Docker, Helm, local build, and the client configuration
- Configuration: every environment variable, the read-only toolset, the HTTP endpoints
- Usage: the 38 tools and which ones change Spinnaker, the 10 resources, the 5 prompts
- Development: testing, contributing, credits
- Related projects: the other MCP servers and the registry listings
License
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.