Skip to main content

Server

VariableRequiredDescription
TOOLSHED_API_SECRETYesBearer token for API authentication
BETTER_AUTH_SECRETYesSecret key for Better Auth (min 32 chars). Also used as the encryption key for stored secrets.
DATABASE_URLYesNeon Postgres connection string
AUTH_BASE_URLNoBetter Auth base URL (default: http://localhost:3000)
TRUSTED_ORIGINSNoComma-separated list of additional trusted origins for CORS

OAuth providers

Only providers with both CLIENT_ID and CLIENT_SECRET set will be registered. All are optional. The connector availability endpoint reports which ones are currently wired up. github, google, slack, and linear register as Better Auth social providers. quickbooks, gcp, docusign, and carta register via the genericOAuth plugin. The frontend uses different sign-in APIs for each — see Auth Routes.
VariableDescription
GITHUB_CLIENT_IDGitHub OAuth app client ID
GITHUB_CLIENT_SECRETGitHub OAuth app client secret
GOOGLE_CLIENT_IDGoogle OAuth client ID
GOOGLE_CLIENT_SECRETGoogle OAuth client secret
SLACK_CLIENT_IDSlack app client ID
SLACK_CLIENT_SECRETSlack app client secret
LINEAR_CLIENT_IDLinear OAuth app client ID
LINEAR_CLIENT_SECRETLinear OAuth app client secret
QUICKBOOKS_CLIENT_IDQuickBooks OAuth app client ID
QUICKBOOKS_CLIENT_SECRETQuickBooks OAuth app client secret
GCP_CLIENT_IDGoogle Cloud Platform OAuth client ID. May mirror GOOGLE_CLIENT_ID to reuse the same OAuth client for both Google Workspace and GCP scopes — see OAuth Setup.
GCP_CLIENT_SECRETGCP OAuth client secret
DOCUSIGN_CLIENT_IDDocuSign OAuth app client ID
DOCUSIGN_CLIENT_SECRETDocuSign OAuth app client secret
CARTA_CLIENT_IDCarta OAuth app client ID
CARTA_CLIENT_SECRETCarta OAuth app client secret

Built-in tool API keys

Built-in tools resolve their credentials via a fall-through to environment variables (see Token Vending). The variable name is ${UPPER(provider).replace(/-/g, "_")}_API_KEY.
VariableDescription
ATTIO_API_KEYAttio workspace access token. Create in Attio → Settings → Developers; OAuth is only needed for distributing apps via build.attio.com.
BROWSERBASE_API_KEYBrowserbase API key (required for the Browserbase plugin)
FIRECRAWL_API_KEYFirecrawl API key
PERPLEXITY_API_KEYPerplexity API key
GRANOLA_API_KEYGranola API key. Currently unused by the runtime (Granola tokens are user-supplied via the dashboard’s Granola tiles), but reserved as a fallback. Earlier versions of .env.example had this misnamed GRANOLIA_API_KEY — fix it if you encounter the typo.

Web app

VariableDefaultDescription
VITE_API_URLhttp://localhost:3000Toolshed server URL

CLI

VariableDefaultDescription
TOOLSHED_RUNTIMElocalRuntime backend: local or vercel

Vercel runtime

Required when TOOLSHED_RUNTIME=vercel:
VariableDescription
VERCEL_TEAM_IDVercel team ID
VERCEL_PROJECT_IDVercel project ID
VERCEL_TOKENVercel API token
TOOLSHED_SNAPSHOT_IDOptional Vercel sandbox snapshot ID