From e4348f712fce2bc853448b9d1dff584de229f970 Mon Sep 17 00:00:00 2001 From: aprozo Date: Fri, 17 Jul 2026 16:49:58 +0100 Subject: [PATCH] supergateway: new package Bridges MCP (Model Context Protocol) stdio servers to SSE or streamable HTTP and vice versa. The npm registry tarball ships a prebuilt dist/, so it installs with --ignore-scripts. --- .../builtin/packages/supergateway/package.py | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 repos/spack_repo/builtin/packages/supergateway/package.py diff --git a/repos/spack_repo/builtin/packages/supergateway/package.py b/repos/spack_repo/builtin/packages/supergateway/package.py new file mode 100644 index 00000000000..0ee679e1d29 --- /dev/null +++ b/repos/spack_repo/builtin/packages/supergateway/package.py @@ -0,0 +1,29 @@ +# Copyright Spack Project Developers. See COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack_repo.builtin.build_systems.generic import Package + +from spack.package import * + + +class Supergateway(Package): + """Run MCP stdio servers over SSE and Streamable HTTP, and vice versa.""" + + homepage = "https://github.com/supercorp-ai/supergateway" + url = "https://registry.npmjs.org/supergateway/-/supergateway-3.4.3.tgz" + + maintainers("aprozo") + + license("MIT", checked_by="aprozo") + + # The npm registry tarball ships a prebuilt dist/, so no TypeScript build + # is needed; install with --ignore-scripts to skip the (dev-only) prepare. + version("3.4.3", sha256="d26391996026bb5967a77e877474cdffa9431ed59c65186d557064de98f5ab84") + + depends_on("node-js@20:", type=("build", "run")) + depends_on("npm@10:", type="build") + + def install(self, spec, prefix): + npm = which("npm", required=True) + npm("install", "--global", "--ignore-scripts", f"--prefix={prefix}", ".")