- The Observal CLI installed
- An Observal server running locally
- The CLI logged in as an admin
- At least one MCP server instrumented
- A live trace visible in the web UI
1. Install the CLI
[!NOTE] You need Docker Engine ≥ 24.0 with Compose v2 (docker compose, notdocker-compose). Homebrew’s Docker formula is outdated. Install Docker Desktop or use your distro’s upstream packages. Verify withdocker versionanddocker compose version.
2. Start the server
.env.example ships with working defaults. The core services come up:
Optional monitoring can be enabled with
make up-prometheus or make up-observability. Prometheus listens on http://localhost:9090; Grafana listens on http://localhost:3001 when the Grafana profile is enabled.
The API waits for Postgres, ClickHouse, and Redis to pass health checks before starting. Expect 15–30 seconds. Confirm it is up:
3. Log in
- Server URL: press Enter for
http://localhost - Login method: pick
[E]mail - Email / password: use one of the seeded demo accounts:
Log in as super admin for the fewest restrictions while exploring. Credentials land in
~/.observal/config.json (mode 0600).
Check it worked:
4. Discover and instrument your harness
If you already have MCP servers configured in Claude Code, Kiro, Cursor, VS Code, or Copilot, first see what’s there:scan is read-only: it shows what you have without modifying anything. Install session telemetry hooks:
doctor patch installs supported session hooks and extensions. It does not rewrite MCP configuration. Restart your harness so the hook changes take effect, then begin a coding session.
5. See your first trace
Openhttp://localhost/traces in your browser. Start a prompt in your harness and let the session complete. Refresh to see the indexed session and its parsed events.
Or use the CLI:

