.env.example•5.79 kB
# ============================================================================
# Enhanced MCP Server - Environment Configuration (PRIVATE)
# ============================================================================
# DO NOT COMMIT THIS FILE - Keep your secrets safe!
# ============================================================================
# ============================================================================
# SERVER CONFIGURATION
# ============================================================================
HOST=0.0.0.0
PORT=8000
LOG_LEVEL=INFO
DEBUG_MODE=false
ENVIRONMENT=production
# ============================================================================
# AI/LLM PROVIDERS (Priority: Euron → DeepSeek → Gemini → Claude)
# ============================================================================
# Euron AI Configuration (Primary - Cost-effective reasoning model)
EURON_API_KEY=your_euron_api_key_here
EURON_API_BASE=https://api.euron.one/api/v1/euri
EURON_MODEL=gpt-4.1-nano
# DeepSeek Configuration (Fallback 1 - Affordable)
DEEPSEEK_API_KEY=your_deepseek_api_key_here
DEEPSEEK_API_BASE=https://api.deepseek.com/v1
DEEPSEEK_MODEL=deepseek-chat
# Google Gemini Configuration (Fallback 2)
GOOGLE_API_KEY=your_google_gemini_api_key_here
GEMINI_MODEL=gemini-pro
# Anthropic Claude Configuration (Fallback 3)
ANTHROPIC_API_KEY=your_anthropic_api_key_here
ANTHROPIC_MODEL=claude-3-5-sonnet-20241022
# OpenAI Configuration (Optional - for compatibility)
OPENAI_API_KEY=your_openai_api_key_here
# ============================================================================
# GOOGLE API CREDENTIALS (Gmail, Calendar, Drive, Sheets)
# ============================================================================
# Google OAuth Client Credentials
GOOGLE_CLIENT_ID=your-client-id.apps.googleusercontent.com
GOOGLE_CLIENT_SECRET=GOCSPX-your-client-secret
GOOGLE_REDIRECT_URI=http://localhost:8080
# Gmail Configuration
GMAIL_CLIENT_ID=your-gmail-client-id.apps.googleusercontent.com
GMAIL_CLIENT_SECRET=GOCSPX-your-gmail-client-secret
GMAIL_REFRESH_TOKEN=your_gmail_refresh_token_here
# Calendar Configuration
CALENDAR_CLIENT_ID=your-calendar-client-id.apps.googleusercontent.com
CALENDAR_CLIENT_SECRET=GOCSPX-your-calendar-client-secret
CALENDAR_REFRESH_TOKEN=your_calendar_refresh_token_here
# Gmail API Credentials (OAuth 2.0)
GMAIL_CREDENTIALS_PATH=./config/gmail_credentials.json
GMAIL_TOKEN_PATH=./config/gmail_token.json
# Calendar API Credentials (OAuth 2.0)
CALENDAR_CREDENTIALS_PATH=./config/calendar_credentials.json
CALENDAR_TOKEN_PATH=./config/calendar_token.json
# Mock Mode (for testing without real services)
EMAIL_MOCK_MODE=false
CALENDAR_MOCK_MODE=false
# ============================================================================
# VOICE PROVIDER CONFIGURATION (Optional)
# ============================================================================
# ElevenLabs (Text-to-Speech)
ELEVENLABS_API_KEY=your_elevenlabs_api_key_here
ELEVENLABS_VOICE_ID=your_voice_id_here
# Voice Service Settings
TTS_PROVIDER=elevenlabs
STT_PROVIDER=whisper
# Voice Agent Settings
VOICE_AGENT_EMAIL_PROVIDER=gmail
VOICE_AGENT_NAME=Vinegar
AGENT_NAME=Communications Assistant
# ============================================================================
# APPLICATION SETTINGS
# ============================================================================
# Email Configuration
EMAIL_SUMMARY_RECIPIENT=your-email@gmail.com
EMAIL_SUMMARY_SCHEDULE=0 6,10,14,18,22 * * * # 6 AM, 10 AM, 2 PM, 6 PM, 10 PM
EMAIL_SUMMARY_TIMEZONE=America/New_York
# Calendar Configuration
CALENDAR_ID=primary
CALENDAR_TIMEZONE=America/New_York
# Job Application Tracking
JOB_APP_KEYWORDS=application,applied,interview,recruiter,hiring,position,role,opportunity
JOB_APP_TRACK_DAYS=90 # Track applications from last 90 days
# Notification Settings
NOTIFICATION_ENABLED=true
MEETING_REMINDER_TIMES=15,60,1440 # Minutes before: 15min, 1hr, 1day
# User Configuration
DEFAULT_USER_ID=default_user
# ============================================================================
# LLM FALLBACK CONFIGURATION
# ============================================================================
# Timeout settings (seconds)
LLM_TIMEOUT_EURON=30
LLM_TIMEOUT_DEEPSEEK=30
LLM_TIMEOUT_GEMINI=30
LLM_TIMEOUT_CLAUDE=30
# Retry settings
LLM_MAX_RETRIES=2
LLM_RETRY_DELAY=1 # Initial delay in seconds
LLM_RETRY_BACKOFF=2 # Exponential backoff multiplier
# Circuit breaker settings
LLM_CIRCUIT_BREAKER_THRESHOLD=5 # Failures before opening circuit
LLM_CIRCUIT_BREAKER_TIMEOUT=60 # Seconds before trying again
LLM_CIRCUIT_BREAKER_RECOVERY=3 # Successes needed to close circuit
# Rate limiting
LLM_RATE_LIMIT_ENABLED=true
LLM_RATE_LIMIT_CALLS=100
LLM_RATE_LIMIT_PERIOD=60 # Per 60 seconds
# ============================================================================
# DATABASE (for tracking and persistence)
# ============================================================================
DATABASE_URL=sqlite+aiosqlite:///./data/enhanced_mcp.db
DATABASE_POOL_SIZE=5
DATABASE_MAX_OVERFLOW=10
# ============================================================================
# LOGGING & MONITORING
# ============================================================================
LOG_FORMAT=json # json or text
LOG_FILE=logs/enhanced_mcp.log
# Monitoring
MONITORING_ENABLED=true
METRICS_PORT=9090
# ============================================================================
# SECURITY REMINDER
# ============================================================================
# This file contains your real API keys and secrets.
# NEVER commit this file to git!
# NEVER share this file with anyone!
# ============================================================================