- Explore MCP Servers
- mcp-collection
Mcp Collection
What is Mcp Collection
mcp-collection is a Docker image that contains multiple Model-Context-Protocol (MCP) servers, allowing users to access them through a unified entry-point.
Use cases
Use cases include deploying various MCP servers in a Kubernetes cluster, bridging server interfaces to HTTP/SSE or WebSocket, and providing a simplified deployment process for developers.
How to use
To use mcp-collection, pull the Docker image using ‘docker pull ghcr.io/erhardtconsulting/mcp-collection:1.0.0’, list available MCP servers with ‘docker run --rm ghcr.io/erhardtconsulting/mcp-collection’, and run a specific server with the desired flags.
Key features
Key features include a single image for multiple servers, remote-ready functionality with a supergateway, Kubernetes-first design with health endpoints, and deterministic builds with locked Python dependencies.
Where to use
mcp-collection can be used in cloud-native applications, microservices architectures, and environments that require multiple MCP servers to be accessed efficiently.
Clients Supporting MCP
The following are the main client software that supports the Model Context Protocol. Click the link to visit the official website for more information.
Overview
What is Mcp Collection
mcp-collection is a Docker image that contains multiple Model-Context-Protocol (MCP) servers, allowing users to access them through a unified entry-point.
Use cases
Use cases include deploying various MCP servers in a Kubernetes cluster, bridging server interfaces to HTTP/SSE or WebSocket, and providing a simplified deployment process for developers.
How to use
To use mcp-collection, pull the Docker image using ‘docker pull ghcr.io/erhardtconsulting/mcp-collection:1.0.0’, list available MCP servers with ‘docker run --rm ghcr.io/erhardtconsulting/mcp-collection’, and run a specific server with the desired flags.
Key features
Key features include a single image for multiple servers, remote-ready functionality with a supergateway, Kubernetes-first design with health endpoints, and deterministic builds with locked Python dependencies.
Where to use
mcp-collection can be used in cloud-native applications, microservices architectures, and environments that require multiple MCP servers to be accessed efficiently.
Clients Supporting MCP
The following are the main client software that supports the Model Context Protocol. Click the link to visit the official website for more information.
Content
MCP‑Collection
A single Docker image that ships multiple Model‑Context‑Protocol (MCP) servers and exposes them through a unified entry‑point.
✨ Highlights
- One image – many servers: choose the desired MCP server at runtime via a single argument.
- Remote‑ready out of the box: the bundled supergateway bridges the server’s
stdiointerface to HTTP/SSE or WebSocket. - Kubernetes‑first: baked‐in health endpoints, non‑root user, and tiny distroless runtime layer (≤80MB).
- Deterministic builds: Python dependencies locked with
uv.lock; no run‑time installation required or allowed.
🚀 Getting started
# pull the multi‑arch image
docker pull ghcr.io/erhardtconsulting/mcp‑collection:1.0.0
# list available MCP servers (shows help)
docker run --rm ghcr.io/erhardtconsulting/mcp‑collection
# run the Git server with extra flags for the underlying CLI
docker run --rm -p 8080:8080 \
ghcr.io/erhardtconsulting/mcp‑collection mcp-server-fetch --test
Included MCP servers
| Package |
|---|
mcp-maven-deps |
mcp-searxng |
mcp-server-calculator |
mcp-server-fetch |
mcp-server-puppeteer |
mcp-server-qdrant |
mcp-server-time |
mcp-yahoo-finance |
npm-search-mcp-server |
🐳 Image layout
/mcp-collection ├── root ├──docker-entrypoint.sh # selects & validates the server, launches supergateway ├── .venv/ # isolated Python environment for all MCP servers ├── node_modules/ # isolated Node environment for all MCP servers ├── pyproject.toml # dependency list for Python MCP servers └── package.json # dependency list for Node MCP servers
The entry‑point performs the following steps:
- Activates the virtual environment (
.venv). - Reads a fixed whitelist (
ALLOWED_SERVERS). - Validates the user‑supplied server name.
- Execs
supergateway --stdio "<server> [extra‑args]".
☸️ Example Kubernetes deployment
apiVersion: apps/v1
kind: Deployment
metadata:
name: mcp-collection
spec:
selector:
matchLabels: {app: mcp-collection}
template:
metadata:
labels: {app: mcp-collection}
spec:
containers:
- name: mcp
image: ghcr.io/erhardtconsulting/mcp-collection:1.0.0
args: ["mcp-server-kubernetes"]
ports:
- containerPort: 8080
---
apiVersion: v1
kind: Service
metadata:
name: mcp-collection
spec:
selector: {app: mcp-collection}
ports:
- port: 80
targetPort: 8080
Pair the Service with an Ingress or Gateway API resource to expose it externally.
🛡 Security notes
- Container runs as a non‑root UID (
1000:1000). - No shell is kept after
exec, reducing the attack surface. - Use a reverse proxy or API‑gateway to enforce TLS & authentication.
🤝 Contributing
- Fork the repo
- Add or update an MCP server in
root/app/package.json/root/app/pyproject.tomlandentrypoint.sh. - Run
make testlocally. - Open a PR; GitHub Actions will lint, build, and scan the image.
📜 License
Released under the MIT License – see LICENSE for details.
Important: The MIT License is only valid for this container as execution environment. For the packaged MCP servers check their licenses.
MCP‑Collection is maintained by erhardt consulting GmbH – happy hacking!
Dev Tools Supporting MCP
The following are the main code editors that support the Model Context Protocol. Click the link to visit the official website for more information.










