What's new
- Optional Bearer authentication for inbound HTTP transports, configured through
MCP_PROXY_AUTH_TOKEN. - New container flavors: Debian for glibc-dependent Python servers, and Debian with Node.js/npm/npx for Node-based servers. Existing Alpine images and startup commands remain supported.
- Better named-server isolation: a backend that fails during startup no longer prevents healthy backends from serving.
- Structured-only tool responses now include readable JSON text while preserving the original structured data.
- Clearer endpoint logs: SSE and Streamable HTTP URLs, correct IPv6 formatting, and useful paths when using an automatically assigned port.
- Regression coverage for preserving upstream server instructions and updated container/setup documentation.
Container tags
Available through the publication workflow on Docker Hub (sparfenyuk/mcp-proxy) and GHCR (ghcr.io/sparfenyuk/mcp-proxy), for Linux amd64 and arm64:
v0.15.0andv0.15.0-alpine: Alpine, preserving the default.v0.15.0-debian: Debian/glibc with Python.v0.15.0-debian-node: Debian/glibc with Python and Node.js/npm/npx.
The default image remains Alpine. Choose Debian for native dependencies requiring glibc, or Debian Node when your MCP server requires npx.
Full Qdrant service compatibility was not tested; Debian validation included dependency resolution and a native onnxruntime import. Package and image availability follows completion of the release workflows.
Full changelog: v0.14.0...v0.15.0