npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

spinnaker-mcp

v0.3.3

Published

MCP server that bridges any Spinnaker instance via its Gate API, exposing application management, pipeline operations, and deployment infrastructure over JSON-RPC

Readme


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-mcp

Or install globally:

npm install -g spinnaker-mcp
spinnaker-mcp

This 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.1

Local build

git clone https://github.com/GeiserX/spinnaker-mcp
cd spinnaker-mcp

cp .env.example .env && $EDITOR .env

go run ./cmd/server

Configuration

| 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

@GeiserX.

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