Installation Guide
Audience: Reseller deployment leads provisioning VCONIC for a single customer environment.
Reseller lens
A customer install is one VCONIC instance per Supabase project (or per-tenant if running multi-tenant — see RLS Multi-Tenant). Plan one Docker host per environment (staging, production). Don't share Supabase projects across customers unless RLS is explicitly enabled and verified.
Prerequisites
Docker Engine
24.0+
PostgreSQL (via Supabase)
14+
Node.js (only for source/dev installs)
20+
Outbound HTTPS
to Supabase project URL, ECR Public, and (optional) OpenAI
Optional but commonly needed:
Reverse proxy with TLS termination (nginx, Caddy, Traefik) for HTTP transport
Redis for response caching
OpenAI or LiteLLM credentials for semantic search embeddings
Install methods
A. Docker (recommended for customer environments)
Pin to a semver tag (1.2.0) in customer environments — don't use latest in production. Tag policy:
main-<sha>— every push to mainlatest— main HEAD (dev / demo only)1.2.0,1.2,1— published on git tag releases
See Docker deployment for image internals (non-root user, dumb-init entrypoint, Supabase CLI bundled).
B. npm package (for embedded use inside a Node service)
The package exposes the server module and types. Suitable when wrapping the server inside another Node application. See Installation for the full developer path.
C. Source build (for customer-managed forks)
Step-by-step
Create the Supabase project. Cloud or self-hosted.
Apply migrations. From the Docker image:
Choose a transport. See the table below.
Set required env vars. Minimum:
SUPABASE_URL,SUPABASE_ANON_KEY. See Configuration Guide for the full list.Start the container. Example for HTTP transport:
Verify.
curl http://localhost:3000/api/v1/healthreturns{"status":"ok"}withX-VersionandX-Git-Commitresponse headers.
API_KEYS grants full read/write/delete. Hand external consumers a key from API_KEYS_READONLY instead: those keys get 403 on every non-GET REST request and cannot call write MCP tools. See Configuration Guide → Authentication.
Transport choice
stdio
AI client (Claude Desktop) spawns the server per-session
Default; MCP_TRANSPORT=stdio (or unset)
http
Shared deployment, multiple clients, REST API needed
MCP_TRANSPORT=http + MCP_HTTP_HOST=0.0.0.0
TLS / reverse proxy
VCONIC does not terminate TLS itself. Front it with a reverse proxy. Minimal nginx for HTTP transport:
Verification checklist
See also
Last updated