What's new
Run SSE and streamable-http transports together (#44)
--transport now accepts multiple HTTP transports at once, so a single server process can serve both SSE and streamable-http clients:
uvx duckduckgo-mcp-server --transport sse streamable-httpWhen both are active, the SSE app and streamable-http app are mounted on a shared Starlette instance with deduplicated routes and a combined lifespan, so neither transport's setup/teardown is skipped. Permissive CORS is enabled for browser-based MCP clients.
--transport stdio (the default) is unchanged, and mixing stdio with HTTP transports is rejected up front.
Thanks to @cwt for the PR.
Multi-arch Docker images on GHCR
The Docker workflow now publishes linux/amd64 and linux/arm64 images to ghcr.io/nickclyde/duckduckgo-mcp-server on every push to main and on release tags, with a modernized Dockerfile.
Compatibility
No breaking changes. Default behavior (--transport stdio) is unchanged for existing users.