Initial commit
All checks were successful
Build And Test / publish (push) Successful in 1m30s

This commit is contained in:
2025-12-30 15:16:45 -08:00
parent 4df9a7229e
commit 4f6098e8c2
28 changed files with 3080 additions and 0 deletions

66
docker-compose.yml Normal file
View File

@@ -0,0 +1,66 @@
services:
pim-mcp-server:
build:
context: .
dockerfile: Dockerfile
container_name: pim-mcp-server
restart: unless-stopped
ports:
- "${PORT:-8000}:8000"
volumes:
- pim-data:/data
environment:
# Server Configuration
- SERVER_NAME=${SERVER_NAME:-PIM MCP Server}
- PORT=${PORT:-8000}
- HOST=0.0.0.0
- ENVIRONMENT=${ENVIRONMENT:-production}
# API Authentication
- MCP_API_KEY=${MCP_API_KEY}
# IMAP Configuration (Email Reading)
- IMAP_HOST=${IMAP_HOST}
- IMAP_PORT=${IMAP_PORT:-993}
- IMAP_USERNAME=${IMAP_USERNAME}
- IMAP_PASSWORD=${IMAP_PASSWORD}
- IMAP_USE_SSL=${IMAP_USE_SSL:-true}
# SMTP Configuration (Email Sending)
- SMTP_HOST=${SMTP_HOST}
- SMTP_PORT=${SMTP_PORT:-587}
- SMTP_USERNAME=${SMTP_USERNAME}
- SMTP_PASSWORD=${SMTP_PASSWORD}
- SMTP_USE_TLS=${SMTP_USE_TLS:-true}
- SMTP_FROM_EMAIL=${SMTP_FROM_EMAIL}
- SMTP_FROM_NAME=${SMTP_FROM_NAME}
# CalDAV Configuration (Calendar)
- CALDAV_URL=${CALDAV_URL}
- CALDAV_USERNAME=${CALDAV_USERNAME}
- CALDAV_PASSWORD=${CALDAV_PASSWORD}
# CardDAV Configuration (Contacts)
- CARDDAV_URL=${CARDDAV_URL}
- CARDDAV_USERNAME=${CARDDAV_USERNAME}
- CARDDAV_PASSWORD=${CARDDAV_PASSWORD}
# Cache Configuration
- SQLITE_PATH=/data/cache.db
- CACHE_TTL_SECONDS=${CACHE_TTL_SECONDS:-300}
# Feature Flags
- ENABLE_EMAIL=${ENABLE_EMAIL:-true}
- ENABLE_CALENDAR=${ENABLE_CALENDAR:-true}
- ENABLE_CONTACTS=${ENABLE_CONTACTS:-true}
healthcheck:
test: ["CMD", "python", "-c", "import urllib.request; urllib.request.urlopen('http://localhost:8000/mcp')"]
interval: 30s
timeout: 10s
retries: 3
start_period: 10s
volumes:
pim-data:
driver: local