Skip to main content
Glama

MCP Manager

by MCP-Manager
Dockerfile2.2 kB
# Multi-stage build for ZenMCP with mcp-proxy integration FROM python:3.11-slim AS builder # Build stage: Install dependencies and build ZenMCP WORKDIR /build # Install build dependencies RUN apt-get update && \ apt-get install -y --no-install-recommends \ build-essential \ git \ ca-certificates && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* # Clone ZenMCP repository RUN git clone https://github.com/BeehiveInnovations/zen-mcp-server.git /build/zen-mcp-server WORKDIR /build/zen-mcp-server # Create virtual environment and install dependencies RUN python -m venv /opt/venv ENV PATH="/opt/venv/bin:$PATH" RUN pip install --no-cache-dir --upgrade pip && \ pip install --no-cache-dir -r requirements.txt # Runtime stage: Combine ZenMCP with mcp-proxy infrastructure FROM node:lts-alpine AS runtime # Install system dependencies RUN apk add --no-cache \ python3 \ py3-pip \ nginx \ supervisor \ ca-certificates # Install Node-based mcp-proxy globally RUN npm install -g mcp-proxy # Install dependencies RUN apk add --no-cache dumb-init gettext curl bash # Copy ZenMCP application COPY --from=builder /build/zen-mcp-server /app/zen-mcp-server # Install Python dependencies in Alpine RUN pip install --no-cache-dir --break-system-packages mcp google-genai openai pydantic uvicorn # Copy infrastructure files COPY infrastructure/dokku/nginx.conf /etc/nginx/nginx.conf COPY infrastructure/dokku/python/zenmcp_on_dokku/startup.sh /usr/local/bin/startup.sh # Set up directories and permissions RUN mkdir -p /var/log/supervisor /var/run/nginx /tmp && \ chmod +x /usr/local/bin/startup.sh # Environment variables ENV PYTHONPATH="/app/zen-mcp-server" ENV PYTHONUNBUFFERED=1 ENV PYTHONDONTWRITEBYTECODE=1 ENV MCP_PROXY_PORT=8000 ENV NGINX_PORT=5000 ENV ACCESS_TOKEN="" ENV MCP_PROXY_EXTRA_ARGS="" # Health check HEALTHCHECK --interval=30s --timeout=10s --start-period=5s --retries=3 \ CMD curl -f -H "Authorization: Bearer ${ACCESS_TOKEN}" http://localhost:5000/mcp || exit 1 # Only expose Nginx port - mcp-proxy port 8000 remains internal EXPOSE 5000 # Use bash startup script CMD ["/bin/bash", "/usr/local/bin/startup.sh"]

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/MCP-Manager/MCP-Checklists'

If you have feedback or need assistance with the MCP directory API, please join our Discord server