From 4ad44bbe9d35e560f495399df7fd42cfc8a79ac8 Mon Sep 17 00:00:00 2001 From: reachableceo Date: Thu, 30 Jul 2026 15:47:30 -0500 Subject: [PATCH] fix: update Dockerfiles for upstream changes and build fixes - gitea-mcp, mcp-grafana: bump Go from 1.24 to 1.26 (upstream go.mod now requires >= 1.26.x) - proxmox-mcp: constrain requires-python to >=3.10 for fastmcp compat - elasticsearch-mcp: add missing vendor repo to CloneVendorRepos.sh (elastic/mcp-server-elasticsearch) - context7-mcp: add .npmrc to disable pnpm v10 strict built-deps check - drawio-mcp: exclude dev-proxy package from build (upstream TS errors), build with pnpm v10 + .npmrc - discourse-mcp, ghidra-mcp: remain blocked (upstream issues) --- dockerfiles/context7-mcp/Dockerfile | 6 ++++-- dockerfiles/drawio-mcp/Dockerfile | 10 +++++++--- dockerfiles/gitea-mcp/Dockerfile | 2 +- dockerfiles/mcp-grafana/Dockerfile | 2 +- dockerfiles/proxmox-mcp/Dockerfile | 3 +++ scripts/CloneVendorRepos.sh | 1 + 6 files changed, 17 insertions(+), 7 deletions(-) diff --git a/dockerfiles/context7-mcp/Dockerfile b/dockerfiles/context7-mcp/Dockerfile index 356995a..ceafed7 100644 --- a/dockerfiles/context7-mcp/Dockerfile +++ b/dockerfiles/context7-mcp/Dockerfile @@ -1,13 +1,15 @@ FROM node:22-alpine -# Install pnpm for monorepo +# Install pnpm RUN npm install -g pnpm WORKDIR /app COPY package.json pnpm-lock.yaml ./ -RUN pnpm install --frozen-lockfile +# Disable strict built-dependencies check (pnpm v10 exits on ignored builds) +RUN echo "strict-built-dependencies=false" > .npmrc && \ + pnpm install --frozen-lockfile COPY . . diff --git a/dockerfiles/drawio-mcp/Dockerfile b/dockerfiles/drawio-mcp/Dockerfile index f46d737..9d0c1da 100644 --- a/dockerfiles/drawio-mcp/Dockerfile +++ b/dockerfiles/drawio-mcp/Dockerfile @@ -7,10 +7,14 @@ WORKDIR /app COPY package.json pnpm-lock.yaml ./ -RUN pnpm install --frozen-lockfile +# Disable strict built-dependencies check (pnpm v10 exits on ignored builds) +RUN echo "strict-built-dependencies=false" > .npmrc && \ + pnpm install --no-frozen-lockfile COPY . . -RUN pnpm run build +# Build all packages except dev-proxy (has upstream TS errors). +# Plugin must be built before server (server copies plugin output). +RUN pnpm -r --filter '!drawio-mcp-dev-proxy' build -CMD ["node", "build/index.js"] +CMD ["node", "packages/drawio-mcp-server/build/index.js"] diff --git a/dockerfiles/gitea-mcp/Dockerfile b/dockerfiles/gitea-mcp/Dockerfile index 042f474..b4f3647 100644 --- a/dockerfiles/gitea-mcp/Dockerfile +++ b/dockerfiles/gitea-mcp/Dockerfile @@ -1,4 +1,4 @@ -FROM golang:1.24-alpine AS builder +FROM golang:1.26-alpine AS builder WORKDIR /app diff --git a/dockerfiles/mcp-grafana/Dockerfile b/dockerfiles/mcp-grafana/Dockerfile index da1eb3a..ba79df5 100644 --- a/dockerfiles/mcp-grafana/Dockerfile +++ b/dockerfiles/mcp-grafana/Dockerfile @@ -1,4 +1,4 @@ -FROM golang:1.24-alpine AS builder +FROM golang:1.26-alpine AS builder WORKDIR /app diff --git a/dockerfiles/proxmox-mcp/Dockerfile b/dockerfiles/proxmox-mcp/Dockerfile index 59acab7..0c3001c 100644 --- a/dockerfiles/proxmox-mcp/Dockerfile +++ b/dockerfiles/proxmox-mcp/Dockerfile @@ -12,6 +12,9 @@ COPY . . # Replace mcp git dependency with fastmcp from PyPI RUN sed -i 's|"mcp @ git+https://github.com/modelcontextprotocol/python-sdk.git"|"fastmcp"|' pyproject.toml +# Fix requires-python for fastmcp compatibility (needs >=3.10) +RUN sed -i 's/requires-python = ">=3.9"/requires-python = ">=3.10"/' pyproject.toml + # Patch imports to use fastmcp instead of mcp.server.fastmcp RUN find . -name "*.py" -exec sed -i 's/from mcp\.server\.fastmcp/from fastmcp/g' {} \; diff --git a/scripts/CloneVendorRepos.sh b/scripts/CloneVendorRepos.sh index da5ef54..77d40b9 100755 --- a/scripts/CloneVendorRepos.sh +++ b/scripts/CloneVendorRepos.sh @@ -91,6 +91,7 @@ clone_repo "gitea-mcp" "https://gitea.com/gitea/gitea-mcp.git" clone_repo "limesurvey-mcp" "https://github.com/TonisOrmisson/limesurvey-mcp.git" clone_repo "linkwarden-mcp-server" "https://github.com/irfansofyana/linkwarden-mcp-server.git" clone_repo "firefly-iii-mcp" "https://github.com/etnperlong/firefly-iii-mcp.git" +clone_repo "mcp-server-elasticsearch" "https://github.com/elastic/mcp-server-elasticsearch.git" echo -e "${GREEN}=== All repositories cloned successfully! ===${NC}" echo ""