# leadtech-bmad-mcp — image du serveur MCP central (transport streamable-http)
#
# Le code Python est copié dans l'image. La base de connaissance Lead_tech
# (LEADTECH_ROOT) n'est PAS copiée : elle est bind-montée au runtime depuis
# /srv/helpers/_Assistant_Lead_Tech sur le NUC (source de vérité = clone Git).

FROM python:3.11-slim

ENV PYTHONUNBUFFERED=1 \
    PIP_NO_CACHE_DIR=1 \
    PIP_DISABLE_PIP_VERSION_CHECK=1

WORKDIR /app

# Dépendances d'abord (cache de build) puis le code.
COPY pyproject.toml README.md ./
COPY src ./src
COPY config ./config

RUN pip install -e .

# Transport HTTP par défaut dans l'image ; surchargé par compose si besoin.
ENV LEADTECH_MCP_TRANSPORT=streamable-http \
    LEADTECH_MCP_HOST=0.0.0.0 \
    LEADTECH_MCP_PORT=8080 \
    LEADTECH_ROOT=/leadtech

EXPOSE 8080

# L'index est (re)construit au démarrage car il dépend du contenu bind-monté,
# pas du code de l'image. Puis on lance le serveur MCP.
CMD ["sh", "-c", "leadtech-bmad-build-index && exec leadtech-bmad-mcp"]
