Most installations fall into one of these buckets:
No matter which shape you choose, these are the core runtime inputs:
| Flag / Env | Purpose |
|---|---|
--bind / PROXY_BIND |
listen address |
--port / PROXY_PORT |
listen port |
--db-path / PROXY_DB_PATH |
SQLite database path |
--static-dir / WEB_STATIC_DIR |
frontend static assets directory |
--upstream / TAVILY_UPSTREAM |
Tavily MCP upstream |
TAVILY_USAGE_BASE |
Tavily HTTP / usage upstream base URL |
You also need one admin access strategy:
DEV_OPEN_ADMIN=true for local or disposable validation onlyThe repository root ships a stock
docker-compose.yml:
That file already:
0.0.0.0:8787tavily-hikari-data volume/srv/app/data/tavily_proxy.dbghcr.io/ivanli-cn/tavily-hikari:latestIt does not provide an admin gateway on its own, so add one of these before real admin work:
DEV_OPEN_ADMIN=trueexamples/forwardauth-caddyFor production-style gateway wiring, the repository already includes:
Start it directly:
That example launches:
auth-mock as a ForwardAuth simulatorupstream-mock as a Tavily upstream simulatorDefault behavior:
GET /health is publicRemote-Email and Remote-Name to HikariRemote-Email=admin@example.com as adminUse it when you want to validate the gateway, identity-header, and Hikari chain before replacing the mocks with your real auth system and real Tavily upstream.
If you do not have a separate ForwardAuth gateway, enable the built-in admin login instead.
Recommended setup:
Key points:
ADMIN_AUTH_BUILTIN_PASSWORD_HASH over plaintext passwordsSecure/health returns 200/admin or /api/keys/api/tavily/search or /mcp call succeedsThe key long-lived data is the SQLite file:
/srv/app/data/tavily_proxy.dbTavily Hikari can strip or rewrite sensitive headers before proxying upstream traffic.
The important behaviors are:
Forwarded, X-Forwarded-*, Via, CF-*, and similar chain-revealing headersOrigin and Referer when neededforwarded_headers and dropped_headers in SQLite for debuggingFor the deeper design notes, see:
Typical exposed surfaces are:
/admin for operators/api/tavily/* for downstream HTTP clients/mcp for proxied MCP trafficThe main release artifact is a container image published to:
ghcr.io/ivanli-cn/tavily-hikari:<tag>
That image includes the compiled frontend bundle. The public docs-site and Storybook are published separately through GitHub Pages.
If the deployment gets stuck on admin access, SQLite persistence, or upstream 502 problems,
continue with FAQ & Troubleshooting.