.env.exampleโข4.11 kB
# Enhanced pfSense MCP Server Configuration
# Supports advanced API features: Object IDs, Queries/Filters, HATEOAS, Control Parameters
# pfSense Connection Configuration
PFSENSE_URL=https://your-pfsense.local
PFSENSE_VERSION=CE_2_8_0 # Options: CE_2_8_0, PLUS_24_11
# Authentication Method
AUTH_METHOD=api_key # Options: api_key, basic, jwt
# API Key Authentication (Recommended)
PFSENSE_API_KEY=your-api-key-here
# Basic Authentication (Alternative)
PFSENSE_USERNAME=admin
PFSENSE_PASSWORD=your-password
# JWT Authentication Settings (if using JWT)
JWT_EXPIRY_HOURS=1
# SSL Configuration
VERIFY_SSL=true
SSL_CERT_PATH=/path/to/custom/cert.pem # Optional custom certificate
# Enhanced API Features
ENABLE_HATEOAS=false # Set to true to enable HATEOAS links in responses
DEFAULT_PAGE_SIZE=20 # Default pagination size
MAX_PAGE_SIZE=100 # Maximum allowed page size
ENABLE_CACHING=true # Enable response caching
CACHE_TTL=300 # Cache TTL in seconds
# MCP Server Configuration
MCP_HOST=0.0.0.0
MCP_PORT=8000
MCP_MODE=http # Options: http, stdio
# Security Configuration
ENABLE_RATE_LIMITING=true
RATE_LIMIT_REQUESTS=100 # Requests per minute
RATE_LIMIT_BURST=20 # Burst requests allowed
# Logging Configuration
LOG_LEVEL=INFO # Options: DEBUG, INFO, WARNING, ERROR
LOG_FORMAT=json # Options: text, json
LOG_FILE=/var/log/pfsense-mcp/enhanced.log
ENABLE_ACCESS_LOG=true
ENABLE_ERROR_LOG=true
# Performance Configuration
CONNECTION_TIMEOUT=30
MAX_RETRIES=3
RETRY_DELAY=1
CONCURRENT_REQUESTS=10
POOL_CONNECTIONS=20
# Query and Filter Defaults
DEFAULT_SORT_ORDER=asc # Options: asc, desc
DEFAULT_SORT_FIELD=id # Default field to sort by
ENABLE_REGEX_FILTERS=true # Allow regex pattern matching
MAX_FILTER_DEPTH=5 # Maximum nested filter depth
# Control Parameter Defaults
DEFAULT_APPLY_IMMEDIATELY=false # Apply changes immediately by default
DEFAULT_ASYNC_MODE=true # Use async mode by default
ENABLE_BULK_OPERATIONS=true # Allow bulk operations
# Advanced Features
ENABLE_OBJECT_ID_TRACKING=true # Track object ID changes
ENABLE_LINK_FOLLOWING=true # Allow following HATEOAS links
ENABLE_FIELD_VALIDATION=true # Validate field values
ENABLE_TYPE_COERCION=true # Automatically convert types
# Monitoring and Metrics
ENABLE_METRICS=false # Enable Prometheus metrics
METRICS_PORT=9090 # Metrics endpoint port
ENABLE_HEALTH_CHECKS=true # Enable health check endpoints
HEALTH_CHECK_INTERVAL=30 # Health check interval in seconds
# Development and Debugging
DEBUG=false # Enable debug mode
ENABLE_SWAGGER_UI=false # Enable Swagger UI for API docs
ENABLE_CORS=false # Enable CORS for web interfaces
ALLOWED_ORIGINS=* # CORS allowed origins
# Integration Settings
CLAUDE_DESKTOP_CONFIG=true # Optimize for Claude Desktop
ENABLE_NATURAL_LANGUAGE=true # Enable natural language processing
NLP_CONFIDENCE_THRESHOLD=0.7 # Minimum confidence for NLP processing
# Backup and Recovery
AUTO_BACKUP_BEFORE_CHANGES=true # Auto backup before major changes
BACKUP_RETENTION_DAYS=30 # Number of days to keep backups
ENABLE_CHANGE_TRACKING=true # Track all configuration changes
# Notification Settings (Optional)
ENABLE_NOTIFICATIONS=false # Enable notifications for events
NOTIFICATION_WEBHOOK_URL= # Webhook URL for notifications
NOTIFICATION_EVENTS=critical,error # Events to notify about
# API Quotas and Limits
MAX_RESULTS_PER_REQUEST=1000 # Maximum results in single request
MAX_CONCURRENT_USERS=50 # Maximum concurrent API users
API_QUOTA_PER_HOUR=10000 # API calls per hour per user
# Custom Headers (Optional)
CUSTOM_USER_AGENT=pfSense-Enhanced-MCP/4.0.0
CUSTOM_HEADERS={} # JSON object of custom headers
# Environment Specific Settings
ENVIRONMENT=production # Options: development, staging, production
DEPLOYMENT_ID=pfsense-mcp-01 # Unique deployment identifier
INSTANCE_NAME=main # Instance name for multi-instance deployments