Skip to main content
Enterprise mode is designed for teams and organizations hosting MCPJungle on a shared server. It enforces authentication and access control, enables OpenTelemetry metrics by default, and requires an explicit initialization step to create the admin user.

Start in enterprise mode

You can enable enterprise mode in three ways:
mcpjungle start --enterprise
The SERVER_MODE=enterprise environment variable accepts development and enterprise as valid values. The former value production is deprecated — if you use it, MCPJungle will warn you and treat it as enterprise.

Initialize the server

After the first boot in enterprise mode, you must initialize the server before any clients can connect. Run the following command from your client machine:
mcpjungle init-server
This creates an admin user and writes its API access token to ~/.mcpjungle.conf on your local machine. All subsequent CLI commands that require authentication will read from this file automatically.
The admin token is only displayed once. Store it securely. If you lose it, you will need to reset the server.

Run with Docker

For production, use the standard (minimal) MCPJungle image. It is based on distroless/base and contains only the mcpjungle binary — no shell, no extra tooling. Supply your database connection string with the DATABASE_URL environment variable:
docker run -d \
  --name mcpjungle-server \
  -e SERVER_MODE=enterprise \
  -e DATABASE_URL=postgres://user:password@your-db-host:5432/mcpjungle \
  -p 8080:8080 \
  ghcr.io/mcpjungle/mcpjungle:latest
For production, deploy a separate managed Postgres cluster and point DATABASE_URL at it rather than running Postgres in the same container. See Configure MCPJungle’s database for all database options.

Graceful shutdown

MCPJungle handles SIGTERM for graceful shutdown. It closes all active stateful sessions, flushes telemetry, and stops accepting new connections before exiting. Send SIGTERM to stop the server cleanly:
# For a process running directly
kill -SIGTERM <pid>

# For a Docker container
docker stop mcpjungle-server
docker stop sends SIGTERM by default, so no extra flags are needed.

What enterprise mode enables

FeatureDevelopment modeEnterprise mode
AuthenticationDisabledRequired for MCP clients
Access control (ACLs)DisabledEnabled
OpenTelemetry metricsDisabled (opt-in)Enabled by default
Server initializationAutomaticManual (init-server)
Even in enterprise mode, telemetry can be overridden with OTEL_ENABLED=false if you want to disable it.