mcp-servers/puppeteer-mcp/Dockerfile
Zac Gaetano 39fff1e44a Add Memory Bank, Puppeteer, Sequential Thinking, and Docker MCP servers
New MCP servers added to the gateway stack:
- memory-bank-mcp (port 8700): Persistent key-value memory storage with tags, categories, and search
- puppeteer-mcp (port 8800): Headless browser automation via Pyppeteer (navigate, screenshot, click, JS eval, PDF gen)
- sequential-thinking-mcp (port 8900): Structured step-by-step reasoning with branching hypotheses and synthesis
- docker-mcp (port 9000): Docker container/image/network/volume management via Docker socket

All servers follow the existing Python/FastMCP pattern with streamable-http transport.
docker-compose.yml updated with service definitions and gateway backend routes.
2026-03-31 23:02:47 -04:00

37 lines
878 B
Docker
Executable file

FROM python:3.12-slim-bookworm
# Install Chromium and dependencies for headless browser
RUN apt-get update && apt-get install -y --no-install-recommends \
chromium \
chromium-sandbox \
fonts-liberation \
libnss3 \
libatk-bridge2.0-0 \
libdrm2 \
libxkbcommon0 \
libgbm1 \
libasound2 \
libatspi2.0-0 \
libgtk-3-0 \
&& rm -rf /var/lib/apt/lists/*
# Point pyppeteer to system Chromium
ENV PYPPETEER_CHROMIUM_REVISION=0
ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY puppeteer_mcp.py .
COPY entrypoint.py .
ENV PORT=8800
EXPOSE 8800
HEALTHCHECK --interval=30s --timeout=5s --start-period=20s \
CMD python3 -c "import urllib.request; urllib.request.urlopen('http://localhost:8800/mcp', timeout=5)"
CMD ["python3", "entrypoint.py"]