FROM python:3.13-slim

# Prevent Python from writing .pyc files and enable unbuffered output
ENV PYTHONDONTWRITEBYTECODE=1
ENV PYTHONUNBUFFERED=1

WORKDIR /app

# Install uv
COPY --from=ghcr.io/astral-sh/uv:latest /uv /uvx /bin/

# Copy application files
COPY pyproject.toml README.md .env-example ./
COPY src/ ./src/

# Install application using uv
RUN uv pip install --system .

# Create cache directory
RUN mkdir -p /app/.meraki_cache

# Default configuration for Docker (STDIO mode for MCP client integration)
ENV MCP_TRANSPORT=stdio
ENV MCP_SERVER=dynamic
ENV RESPONSE_CACHE_DIR=/app/.meraki_cache

ENTRYPOINT ["meraki-magic-mcp"]
