Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.mcpjungle.com/llms.txt

Use this file to discover all available pages before exploring further.

This guide covers the production operating model for mcpjungle. When teams want shared access to MCPs in an enterprise environment, Mcpjungle should run in enterprise mode with a dedicated PostgreSQL database That is the mode intended for teams, internal platforms and organizations running Mcpjungle for shared MCP access. If your goal is simply to use MCPs locally for yourself, development mode is usually a better fit.

Start in enterprise mode

You can enable enterprise mode in three ways:
mcpjungle start --enterprise

Initialize the server once

After the first boot in enterprise mode, run mcpjungle init-server once from your client machine to create the initial admin identity and authenticate your CLI. For the exact bootstrap flow and command details, see: For a shared deployment, the recommended pattern is:
  1. Run the standard ghcr.io/mcpjungle/mcpjungle:latest image.
  2. Keep the CLI installed separately on operator machines.
  3. Point Mcpjungle at a separate PostgreSQL instance or cluster.

Run with Docker

For production, use the standard (minimal) Mcpjungle image. It is based on distroless/base and contains only the mcpjungle binary. 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 Users & MCP clients
Access control (ACLs)DisabledEnabled
OpenTelemetry metricsDisabled (opt-in)Enabled by default
Server initializationAutomaticManual (init-server)
Even in enterprise mode, you can override metrics with OTEL_ENABLED=false if needed, though that is not the recommended default for shared deployments.

Database

Configure PostgreSQL correctly for production use.

Observability

Scrape Prometheus-compatible metrics from the /metrics endpoint.

Governance overview

Understand enterprise mode, tokens, clients, and users.

Access control

Give each MCP client access only to the servers it should reach.