openportfolio

Configuration

Values marked deployment also have to be set on Convex itself with npx convex env set; the deployment does not read .env.local.

Required

Variable Meaning
CONVEX_DEPLOYMENT Written by npx convex dev on first run.
OPENPORTFOLIO_SERVICE_KEY Shared secret the workers and MCP server present instead of a browser session. Generate with openssl rand -hex 32 and register only its hash.
VITE_CONVEX_URL In browser/.env.local. The deployment URL the UI talks to.

Tenancy

Variable Meaning
OPENPORTFOLIO_TENANT Which book a worker acts on. Only needed when one identity belongs to several tenants; a service key is never ambiguous.
OPENPORTFOLIO_DEV_TENANT (deployment) Localhost escape hatch. While set, any unauthenticated caller is scoped to that tenant. Unset before the deployment is reachable.
CLERK_ISSUER_URL (deployment) Clerk JWT issuer. Required once more than one person uses the deployment.

Venues

Variable Meaning
OPENPORTFOLIO_MANUAL_HOLDINGS Path to a JSON array of manually maintained holdings.
OPENPORTFOLIO_QUOTE_VENUE Which registered venue prices symbols the holding venue cannot. Defaults to coingecko, which needs no key.

There is no model provider key. Not omitted from this table: there is no variable to set. See MCP and agents.