You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Closing this via #1881, which removes the mount_path parameter entirely.
The mount_path parameter was redundant because the SSE transport already handles sub-path mounting automatically via ASGI's standard root_path mechanism. When you use Starlette's Mount(), it sets root_path in the ASGI scope, and SseServerTransport already uses this to construct the correct message endpoint path (see sse.py lines 148-161).
The fix: Just remove any mount_path configuration and rely on ASGI's built-in mechanism:
fromstarlette.applicationsimportStarlettefromstarlette.routingimportMountfrommcp.server.fastmcpimportFastMCPgithub_mcp=FastMCP("GitHub API")
browser_mcp=FastMCP("Browser")
# This just works - no mount_path neededapp=Starlette(
routes=[
Mount("/github", app=github_mcp.sse_app()),
Mount("/browser", app=browser_mcp.sse_app()),
]
)
The SSE transport will automatically return /github/messages/ and /browser/messages/ as the message endpoints to clients.
Activity
adamsaimi commentedon Jun 21, 2025
Hello i opened a merge request, there was no 1.9.x branch available so I targeted main.
felixweinberger commentedon Oct 3, 2025
Hi @kinch-tech thanks for this submission could you provide a full code snippet to reproduce the issue so we can debug?
felixweinberger commentedon Jan 16, 2026
Closing this via #1881, which removes the
mount_pathparameter entirely.The
mount_pathparameter was redundant because the SSE transport already handles sub-path mounting automatically via ASGI's standardroot_pathmechanism. When you use Starlette'sMount(), it setsroot_pathin the ASGI scope, andSseServerTransportalready uses this to construct the correct message endpoint path (seesse.pylines 148-161).The fix: Just remove any
mount_pathconfiguration and rely on ASGI's built-in mechanism:The SSE transport will automatically return
/github/messages/and/browser/messages/as the message endpoints to clients.