Cursor fails to fall back from Streamable HTTP to SSE transport for remote MCP servers

Hey, thanks for the detailed report. The logs are really helpful.

This looks like a regression in the V2 MCP connection handler. The older V1 client did try an SSE fallback after Streamable HTTP failed, but the V2 FSM skips that step completely.

As a workaround until this is fixed, you can configure the server using command instead of url to force SSE transport through a local proxy. For example, using npx:

{
  "mcpServers": {
    "MyServer": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://my-sse-server.example.com/sse"]
    }
  }
}

mcp-remote bridges remote SSE servers to a local stdio connection, which bypasses the transport negotiation issue completely.

Let me know if that helps.