Skip to content

Getting Started

Recto is a self-hosted journal backend that runs with Docker Compose. This guide will have you journaling through your AI assistant in minutes.

  • Docker and Docker Compose
  • An AI assistant that supports MCP (Claude Desktop, Claude Code, Cursor, etc.)
Terminal window
git clone https://github.com/KristijanS99/recto.git
cd recto
cp .env.example .env

Edit .env and set these required values:

VariableDescription
RECTO_API_KEYSecret key for API auth (min 32 characters)
RECTO_WEB_PASSWORD_HASHBcrypt hash for web UI login (see below)

Generate the password hash:

Terminal window
docker run --rm caddy:2-alpine caddy hash-password --plaintext 'your-password'
Terminal window
docker compose up -d

This starts four services:

ContainerPurposePort
recto-dbPostgreSQL + pgvector5432
recto-apiREST API3000
recto-mcpMCP server (AI assistant interface)3001
recto-proxyCaddy reverse proxy (TLS, auth, routing)80 / 443

A temporary recto-web container builds the dashboard files and exits — Caddy serves them directly.

Terminal window
curl http://localhost:3000/health
curl http://localhost:3001/health

Both should return {"status":"ok"}.

Open https://localhost to access the web dashboard. Your browser will warn about the self-signed certificate on localhost — accept it and log in with your username and password.

  1. Configure — Set up AI providers, API keys, and embedding models
  2. Connect your AI assistant — Add Recto as an MCP server
  3. Deploy — Set up for production or remote access
  4. Start journaling — Talk to your AI assistant naturally. It handles the rest.