FROM node:22-alpine

LABEL org.opencontainers.image.source="https://github.com/sher1096/klinepic-agent-api-examples"
LABEL org.opencontainers.image.description="KLinePic MCP server for annotated post-trade candlestick review charts"
LABEL org.opencontainers.image.licenses="MIT"
LABEL io.modelcontextprotocol.server.name="io.github.sher1096/klinepic"

WORKDIR /app

COPY --chown=node:node package.json package-lock.json ./
RUN npm ci --omit=dev

COPY --chown=node:node src ./src

USER node

ENTRYPOINT ["node", "src/server.mjs"]
