Migrate to Docker SDK to fix Smithery MCP server-card discovery
Andrew Gibbs
58b1492
Gradio SDK Spaces run a Node.js proxy in front of Python that only
forwards a fixed whitelist of paths - confirmed via Gradio's own source
and by observing identical SPA-shell responses for nonexistent paths.
No custom Python route (including /.well-known/mcp/server-card.json)
could ever reach the backend that way. Docker SDK removes the proxy
entirely: our own FastAPI app registers the server-card route before
mounting Gradio, verified locally to work correctly.