Block a user
metamcp-patched (seed-20260722)
Installation
docker pull git.jpaul.io/justin/metamcp-patched:seed-20260722sha256:14be71755f6cbbbc3b1f51afc1123efd38e0096823f77e159fc068c9f7446173
About this package
MCP Aggregator, Orchestrator, Middleware, Gateway in one docker
Image Layers
| # debian.sh --arch 'amd64' out/ 'trixie' '@1765152000' |
| RUN /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends ca-certificates curl gnupg netbase sq wget ; apt-get dist-clean # buildkit |
| RUN /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends git mercurial openssh-client subversion procps ; apt-get dist-clean # buildkit |
| RUN /bin/sh -c set -ex; apt-get update; apt-get install -y --no-install-recommends autoconf automake bzip2 default-libmysqlclient-dev dpkg-dev file g++ gcc imagemagick libbz2-dev libc6-dev libcurl4-openssl-dev libdb-dev libevent-dev libffi-dev libgdbm-dev libglib2.0-dev libgmp-dev libjpeg-dev libkrb5-dev liblzma-dev libmagickcore-dev libmagickwand-dev libmaxminddb-dev libncurses5-dev libncursesw5-dev libpng-dev libpq-dev libreadline-dev libsqlite3-dev libssl-dev libtool libwebp-dev libxml2-dev libxslt-dev libyaml-dev make patch unzip xz-utils zlib1g-dev ; apt-get dist-clean # buildkit |
| COPY /uv /uvx /usr/local/bin/ # buildkit |
| ENV UV_TOOL_BIN_DIR=/usr/local/bin |
| ENTRYPOINT [] |
| CMD ["/usr/local/bin/uv"] |
| RUN /bin/sh -c apt-get update && apt-get install -y curl gnupg && curl -fsSL https://deb.nodesource.com/setup_20.x | bash - && apt-get install -y nodejs && npm install -g [email protected] && apt-get clean && rm -rf /var/lib/apt/lists/* # buildkit |
| WORKDIR /app |
| LABEL org.opencontainers.image.source=https://github.com/metatool-ai/metamcp |
| LABEL org.opencontainers.image.description=MetaMCP - aggregates MCP servers into a unified MetaMCP |
| LABEL org.opencontainers.image.licenses=MIT |
| LABEL org.opencontainers.image.title=MetaMCP |
| LABEL org.opencontainers.image.vendor=metatool-ai |
| RUN /bin/sh -c apt-get update && apt-get install -y curl postgresql-client && apt-get clean && rm -rf /var/lib/apt/lists/* # buildkit |
| RUN /bin/sh -c addgroup --system --gid 1001 nodejs # buildkit |
| RUN /bin/sh -c adduser --system --uid 1001 --home /home/nextjs nextjs && mkdir -p /home/nextjs/.cache/node/corepack && chown -R nextjs:nodejs /home/nextjs # buildkit |
| COPY --chown=nextjs:nodejs /app/apps/frontend/.next ./apps/frontend/.next # buildkit |
| COPY --chown=nextjs:nodejs /app/apps/frontend/package.json ./apps/frontend/ # buildkit |
| COPY --chown=nextjs:nodejs /app/apps/backend/dist ./apps/backend/dist # buildkit |
| COPY --chown=nextjs:nodejs /app/apps/backend/package.json ./apps/backend/ # buildkit |
| COPY --chown=nextjs:nodejs /app/apps/backend/drizzle ./apps/backend/drizzle # buildkit |
| COPY --chown=nextjs:nodejs /app/apps/backend/drizzle.config.ts ./apps/backend/ # buildkit |
| COPY --chown=nextjs:nodejs /app/packages ./packages # buildkit |
| COPY --chown=nextjs:nodejs /app/node_modules ./node_modules # buildkit |
| COPY --chown=nextjs:nodejs /app/package.json ./ # buildkit |
| COPY --chown=nextjs:nodejs /app/pnpm-workspace.yaml ./ # buildkit |
| RUN /bin/sh -c pnpm install --prod # buildkit |
| RUN /bin/sh -c cd apps/backend && pnpm add [email protected] # buildkit |
| COPY --chown=nextjs:nodejs docker-entrypoint.sh ./ # buildkit |
| RUN /bin/sh -c chmod +x docker-entrypoint.sh # buildkit |
| USER nextjs |
| EXPOSE [12008/tcp] |
| HEALTHCHECK &{["CMD-SHELL" "curl -f http://localhost:12008/health || exit 1"] "30s" "30s" "5s" "0s" '\x03'} |
| CMD ["./docker-entrypoint.sh"] |
| USER root |
| RUN /bin/sh -c set -eux; F=/app/apps/backend/dist/index.js; test -f "$F"; grep -Fq "\"/.well-known/oauth-protected-resource\"" "$F"; grep -Fq "\"/.well-known/oauth-authorization-server\"" "$F"; if grep -Fq "/__jpaul_disabled_oauth" "$F"; then echo "already patched — aborting"; exit 1; fi; B1=$(grep -Fc "\"/.well-known/oauth-protected-resource\"" "$F"); B2=$(grep -Fc "\"/.well-known/oauth-authorization-server\"" "$F"); [ "$B1" = "1" ] || { echo "unexpected count $B1 for oauth-protected-resource; upstream changed"; exit 2; }; [ "$B2" = "1" ] || { echo "unexpected count $B2 for oauth-authorization-server; upstream changed"; exit 2; }; sed -i -e "s#\"/\\.well-known/oauth-protected-resource\"#\"/__jpaul_disabled_oauth_pr\"#g" -e "s#\"/\\.well-known/oauth-authorization-server\"#\"/__jpaul_disabled_oauth_as\"#g" "$F"; if grep -Fq "\"/.well-known/oauth-protected-resource\"" "$F"; then echo "patch failed: oauth-protected-resource still present"; exit 3; fi; if grep -Fq "\"/.well-known/oauth-authorization-server\"" "$F"; then echo "patch failed: oauth-authorization-server still present"; exit 3; fi; grep -Fq "/__jpaul_disabled_oauth_pr" "$F"; grep -Fq "/__jpaul_disabled_oauth_as" "$F"; echo "OAuth discovery routes disabled — patch verified" # buildkit |
Labels
| Key | Value |
|---|---|
| com.docker.compose.project | mcp-servers |
| com.docker.compose.service | metamcp |
| com.docker.compose.version | 5.1.4 |
| org.opencontainers.image.created | 2025-12-11T04:10:51.447Z |
| org.opencontainers.image.description | MCP Aggregator, Orchestrator, Middleware, Gateway in one docker |
| org.opencontainers.image.licenses | MIT |
| org.opencontainers.image.revision | 32b6e9813acfc13d1013eb2452be1899d6654bb9 |
| org.opencontainers.image.source | https://github.com/metatool-ai/metamcp |
| org.opencontainers.image.title | metamcp |
| org.opencontainers.image.url | https://github.com/metatool-ai/metamcp |
| org.opencontainers.image.vendor | metatool-ai |
| org.opencontainers.image.version | 2.4.22 |
Details
2026-07-22 12:06:10 -04:00
Versions (4)
View all
Container
0
OCI / Docker
linux/amd64
MIT
964 MiB