Wraps the remaining audit backlog and prepares the repo for Anthropic Claude Connector Directory submission. No breaking changes.
Audit backlog closed
- DevOps #4 — Structured JSON logging in HTTP mode (stdlib only, no new runtime dep). New
LOG_FORMATenv override; defaults tojsonfor streamable-http,textfor stdio. - Security M2 — Module-level
asyncio.Semaphore(12)on the preview thumbnail fetcher. Caps concurrent CDN fan-out across all MCP sessions on the process. - DevOps #8 —
docker-buildjob in CI builds the Dockerfile end-to-end and smoke-tests both boot-refusal (noMCP_AUTH_TOKEN) and boot-success (withMCP_ALLOW_UNAUTHED=1).
Connector Directory readiness
PRIVACY.md— what the server processes per request, what it never stores, what it logs (and doesn't), third parties called.- README Three usage examples section — hero image with color, B-roll video bounded by duration, visual-pick shortlist via
pexels_preview_media.
Tests
- 65 tests (was 59), green on Python 3.10 / 3.11 / 3.12.
- New
tests/test_logging.py(6 tests) covering_JsonFormatterandLOG_FORMATresolution.
Remaining for Directory submission
- A dedicated Pexels API key to hand Anthropic reviewers (lives outside the repo).
- Fill out the Directory submission Google Form with the deployed Koyeb URL, PRIVACY.md link, README link, the 3 examples, the test key.
Full changelog
https://github.com/VictorNain26/pexels-mcp-server/blob/v0.6.0/CHANGELOG.md