fix: configure stdio-based MCP servers (penpot, imap)
- Set penpot-mcp restart: "no" for on-demand execution - Create custom Dockerfile for imap-mcp with python module entrypoint - Fix IMAP_HOST environment variable naming (was IMAP_SERVER) - Update .env and docker-compose.yml for IMAP_HOST - Remove command overrides from imap-mcp and penpot-mcp - Verify penpot-mcp and imap-mcp work correctly
This commit is contained in:
2
.env
2
.env
@@ -43,7 +43,7 @@ DISCOURSE_API_KEY=dummy-api-key-replace-with-real
|
||||
DISCOURSE_API_USERNAME=admin
|
||||
|
||||
# IMAP
|
||||
IMAP_SERVER=imap.example.com
|
||||
IMAP_HOST=imap.example.com
|
||||
IMAP_PORT=993
|
||||
IMAP_USERNAME=user@example.com
|
||||
IMAP_PASSWORD=dummy-password-replace-with-real
|
||||
|
||||
@@ -248,20 +248,20 @@ services:
|
||||
- ops
|
||||
|
||||
# IMAP MCP - Email processing
|
||||
# NOTE: This is a stdio-based MCP server, run on-demand by Crush via docker run
|
||||
imap-mcp:
|
||||
image: kneldevstack-aimiddleware-imap-mcp
|
||||
build:
|
||||
context: ./vendor/imap-mcp
|
||||
dockerfile: Dockerfile
|
||||
dockerfile: ../../dockerfiles/imap-mcp/Dockerfile
|
||||
container_name: kneldevstack-aimiddleware-imap-mcp
|
||||
restart: unless-stopped
|
||||
restart: "no"
|
||||
environment:
|
||||
- PYTHONUNBUFFERED=1
|
||||
- IMAP_SERVER=${IMAP_SERVER}
|
||||
- IMAP_HOST=${IMAP_HOST}
|
||||
- IMAP_PORT=${IMAP_PORT:-993}
|
||||
- IMAP_USERNAME=${IMAP_USERNAME}
|
||||
- IMAP_PASSWORD=${IMAP_PASSWORD}
|
||||
command: ["uvx", "imap-mcp"]
|
||||
profiles:
|
||||
- ops
|
||||
|
||||
@@ -460,13 +460,14 @@ services:
|
||||
# ==========================================
|
||||
|
||||
# Penpot MCP - Design collaboration platform
|
||||
# NOTE: This is a stdio-based MCP server, run on-demand by Crush via docker run
|
||||
penpot-mcp:
|
||||
image: kneldevstack-aimiddleware-penpot-mcp
|
||||
build:
|
||||
context: ./vendor/penpot-mcp
|
||||
dockerfile: Dockerfile
|
||||
container_name: kneldevstack-aimiddleware-penpot-mcp
|
||||
restart: unless-stopped
|
||||
restart: "no"
|
||||
environment:
|
||||
- PENPOT_URL=${PENPOT_URL:-https://design.penpot.app}
|
||||
- PENPOT_TOKEN=${PENPOT_TOKEN}
|
||||
|
||||
24
dockerfiles/imap-mcp/Dockerfile
Normal file
24
dockerfiles/imap-mcp/Dockerfile
Normal file
@@ -0,0 +1,24 @@
|
||||
FROM python:3.12-slim
|
||||
|
||||
# Install uv for faster package management
|
||||
COPY --from=ghcr.io/astral-sh/uv:latest /uv /uvx /bin/
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
# Copy dependency files
|
||||
COPY pyproject.toml ./
|
||||
|
||||
# Install dependencies
|
||||
RUN uv sync --no-dev --no-install-project --no-cache
|
||||
|
||||
# Copy source code
|
||||
COPY . .
|
||||
|
||||
# Install the project
|
||||
RUN uv sync --no-dev --no-editable --no-cache
|
||||
|
||||
# Set up environment
|
||||
ENV PYTHONUNBUFFERED=1
|
||||
ENV PATH=/app/.venv/bin:$PATH
|
||||
|
||||
ENTRYPOINT ["python", "-m", "imap_mcp.server"]
|
||||
Reference in New Issue
Block a user