# Generated by https://smithery.ai. See: https://smithery.ai/docs/config#dockerfile
# Use an official Node.js runtime as a parent image
FROM node:18-buster-slim AS builder
# Set the working directory to /app
WORKDIR /app
# Copy the current directory contents into the container at /app
COPY . .
# Install any needed packages specified in package.json
RUN npm install --ignore-scripts
# Run the TypeScript build to create the dist folder
RUN npm run build
# Use a lightweight Node.js runtime for the production environment
FROM node:18-buster-slim AS runtime
# Set the working directory to /app
WORKDIR /app
# Copy the dist folder from the builder stage
COPY --from=builder /app/dist /app/dist
# Copy the package.json file to include any runtime dependencies
COPY --from=builder /app/package.json /app/package.json
# Install only the production dependencies
RUN npm ci --omit=dev
# Set environment variables if needed
# ENV NODE_ENV=production
# The command to run the MCP server
ENTRYPOINT ["node", "dist/index.js"]