v0.3.0 - Production hardening
Production hardening release. Bundles the Critical/Blocker findings from the May 2026 security + DevOps audits.
Highlights
- Stateless streamable HTTP —
stateless_http=True, json_response=Trueon FastMCP. Horizontal scaling on Koyeb / Fly / Cloud Run without sticky sessions. Aligns with the MCP draft spec direction (sessions removed). - Mandatory
MCP_AUTH_TOKENin HTTP mode (BREAKING) — process exits with code 2 if unset. Closes the gap where an operator could ship an open/mcpendpoint and silently burn the fallback Pexels quota. Local dev override:MCP_ALLOW_UNAUTHED=1. - Graceful shutdown —
timeout_graceful_shutdown=8so in-flight tool calls survive Koyeb's ~10s SIGTERM window during rolling deploys. - Dockerfile cache fix — split
COPY srcfrom the lockfile copy so the deps-onlyuv synclayer caches independently of source changes. - Visual-pick tool (
pexels_preview_media) and per-request Pexels key viaX-Pexels-Api-Keyconsolidated fromUnreleased.
Breaking changes
Set MCP_AUTH_TOKEN on the Koyeb env before deploying this version, or boot fails immediately.
Full changelog
https://github.com/VictorNain26/pexels-mcp-server/blob/v0.3.0/CHANGELOG.md