Secrets — Piping Patterns
TL;DR
# Local dev with 1Password (recommended)
op run --env-file=.env -- mcp-trino
# Inline one-shot
TRINO_PASSWORD=$(op read 'op://Engineering/Trino/password') mcp-trino --help
# Vault
TRINO_PASSWORD=$(vault kv get -field=password secret/mcp-trino) mcp-trino
# Kubernetes: use Secret + envFrom (no app-side vault client)1Password via op run
op runStep 1 — Store secrets in 1Password
Step 2 — Write a .env file with references
.env file with referencesStep 3 — Launch through op run
op runVerify without leaking
Inline op read (no env file)
op read (no env file)HashiCorp Vault
Kubernetes
Security Nuances
1. Avoid shell history
2. Avoid process-list leakage
3. Env is inherited — scope it
4. Don't log secrets
5. .env files are references, not values
.env files are references, not valuesTesting Your Setup
Migrating from TRINO_SECRET_SOURCE
TRINO_SECRET_SOURCEOld
New
Last updated
Was this helpful?