🛠️ Core Environment
Variable | Description | Default |
---|
LOG_LEVEL | 📝 Logging level | INFO |
APT_INSTALL | 📦 APT packages to install during container startup | git |
🛠️ Core Environment
Variable | Description | Default |
---|
LOG_LEVEL | 📝 Logging level | INFO |
APT_INSTALL | 📦 APT packages to install during container startup | git |
🔐 Authentication and Security
Variable | Description | Default |
---|
ADMIN_DEFAULT_PASSWORD | 🔑 SimpleServer admin password for first user | admin |
ADMIN_BEARER_HACK | 🪄 Static Bearer token for admin | (empty) |
SALT | 🧂 Used for password hashing | default_insecure_pepper |
JWT_SECRET_KEY | 🔒 JWT secret | default_insecure_secret_key |
JWT_ALGORITHM | 🔐 JWT algorithm | HS256 |
JWT_ACCESS_TOKEN_EXPIRE_MINUTES | ⏱️ JWT access token expiry (minutes) | 30 |
📂 Storage and Configuration
Variable | Description | Default |
---|
CONFIG_STORAGE_TYPE | 💾 Config storage type | files |
CONFIG_STORAGE_PATH | 📁 Path to config storage | $APP_FOLDER/data/config |
Variable | Description | Default |
---|
TOOLS_WHITELIST | ✅ Comma-separated list of tools to whitelist | (empty) |
TOOLS_BLACKLIST | ❌ Comma-separated list of tools to blacklist | (empty) |
SUBPROCESS_STREAM_LIMIT | 📊 Subprocess stream limit in bytes | 5242880 (5MB) |
PRIVATE_MCPSERVER_CLEANUP_INTERVAL | 🧹 Idle private mcpServer cleanup interval (seconds) | 300 |
🖥️ Container System Services
Variable | Description | Default |
---|
SSHD_ENABLED | 🔌 Enable SSH | true |
VNC_ENABLED | 🖼️ Enable VNC | true |
VNC_PW | 🔑 VNC password | vncpassword |
VNC_VIEW_ONLY | 👁️ VNC view only mode | false |
VNC_COL_DEPTH | 🎨 VNC color depth | 24 |
VNC_RESOLUTION | 📐 VNC resolution | 1280x1024 |
APPUSER_PASSWORD | 👤 Appuser password | (random if not set) |
TZ | 🕒 Timezone | CET |
💾 Volume Management
When running with Docker or Docker Compose, data is persisted using a volume:
volumes:
data:
name: simpletool-server-data
driver_opts:
type: none
o: bind
device: ${PWD}/data
This maps to /app/server/data
in the container and stores:
- 📋 User configurations
- 🔧 Tool configurations
- 🔐 Authentication data
🚀 Example Configurations
Basic Docker Compose Setup
services:
simpletoolserver:
image: ghcr.io/getsimpletool/simpletool-server:latest
environment:
- LOG_LEVEL=INFO
- SSHD_ENABLED=true
- VNC_ENABLED=true
- ADMIN_DEFAULT_PASSWORD=admin
- ADMIN_BEARER_HACK=abc123
- SALT=default_insecure_pepper
- JWT_SECRET_KEY=default_insecure_secret_key
- JWT_ALGORITHM=HS256
- JWT_ACCESS_TOKEN_EXPIRE_MINUTES=30
- TOOLS_WHITELIST=
- TOOLS_BLACKLIST=
- PRIVATE_MCPSERVER_CLEANUP_INTERVAL=300
volumes:
- data:/app/server/data
docker run -d \
--name simpletool-server \
-p 8000:8000 -p 2222:22 -p 5901:5901 -p 6901:6901 \
-e LOG_LEVEL=INFO \
-e SSHD_ENABLED=true \
-e VNC_ENABLED=true \
-e ADMIN_DEFAULT_PASSWORD=admin \
-e ADMIN_BEARER_HACK=abc123 \
-e JWT_ACCESS_TOKEN_EXPIRE_MINUTES=30 \
-e TOOLS_WHITELIST=tools-browser,tools-httpx \
-e TOOLS_BLACKLIST= \
-e PRIVATE_MCPSERVER_CLEANUP_INTERVAL=300 \
-v "$(pwd)/data:/app/server/data" \
ghcr.io/getsimpletool/simpletool-server:latest
Python Direct Mode
Create a .env
file in the src/server
directory:
LOG_LEVEL=INFO
ADMIN_DEFAULT_PASSWORD=admin
ADMIN_BEARER_HACK=abc123
CONFIG_STORAGE_TYPE=files
JWT_ACCESS_TOKEN_EXPIRE_MINUTES=30
PRIVATE_MCPSERVER_CLEANUP_INTERVAL=300