867180f4bf
Configura il gateway Caddy per il deploy su cerbero-mcp.tielogic.xyz: - Build custom Caddy con plugin mholt/caddy-ratelimit (Dockerfile + build via xcaddy). - TLS automatico via Let's Encrypt (richiede DNS A record + porte 80/443 raggiungibili), HSTS preload, header di sicurezza. - Rate limit per IP (60 req/min sui read, 10 req/min sui write, sliding window). - Allowlist IP sui write endpoint (place_*, cancel_*, set_*, close_*, transfer_*, amend_*, switch_*): IP non in WRITE_ALLOWLIST → 403. - Default WRITE_ALLOWLIST copre loopback + Docker bridge: bot sulla stessa macchina (host o container) funziona senza configurazione, IP pubblici esterni vanno aggiunti esplicitamente. - Smoke test e README aggiornati per il nuovo URL gateway. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Smoke locale Cerbero_mcp
# da repo root Cerbero_mcp/
docker compose up -d
bash tests/smoke/run.sh
docker compose down
Il file run.sh verifica:
/healthdi tutti i 6 MCP (atteso200)environment_infodei 4 exchange (atteso shape{environment, source, env_value, base_url, max_leverage})- live tool check read-only contro upstream testnet:
- deribit
get_ticker BTC-PERPETUAL - bybit
get_ticker BTCUSDT(linear) - hyperliquid
get_ticker BTC - alpaca
get_clock(richiede credenziali paper valide) - macro
get_treasury_yields - sentiment
get_funding_rates BTC
- deribit
Variabili di ambiente:
GATEWAY— URL base gateway (defaulthttp://localhost; in produzionehttps://cerbero-mcp.tielogic.xyz)TOKEN_FILE— path al token bearer di lettura (defaultsecrets/observer.token)
Exit code 0 = tutto OK, 1 = uno o più check falliti.