MCP Servers with auth do not open browser anymore

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

MCPs that require authentication via the browser, no longer open the browser. The blue button says “Connect”, when I click it, it briefly changes to “Connecting..”, then it returns back to “Connect” without anything happening.

Here are the logs from the MCP server in Output:


2026-02-04 22:33:36.110 [info] Handling ListOfferings action, server stored: false
2026-02-04 22:33:36.110 [info] Handling CreateClient action
2026-02-04 22:33:36.110 [info] Server not yet created, returning empty offerings
2026-02-04 22:33:36.110 [info] Creating streamableHttp transport
2026-02-04 22:33:36.187 [info] Connecting to streamableHttp server
2026-02-04 22:33:36.200 [info] No stored tokens found
2026-02-04 22:33:36.737 [info] Using redirect URL {"url":"cursor://anysphere.cursor-mcp/oauth/callback"}
2026-02-04 22:33:36.737 [info] No stored tokens found
2026-02-04 22:33:36.737 [info] Using redirect URL {"url":"cursor://anysphere.cursor-mcp/oauth/callback"}
2026-02-04 22:33:36.737 [info] Using redirect URL {"url":"cursor://anysphere.cursor-mcp/oauth/callback"}
2026-02-04 22:33:36.737 [info] Saving PKCE code verifier {"verifierLen":43}
2026-02-04 22:33:36.741 [info] Redirect to authorization requested {"url":"https://mcp.notion.com/authorize?response_type=code&client_id=pgisWCGkxra96GHI&code_challenge=b4QHTBxmCIx9c3a3F35ONXfL8axzhdtAC1EQ-d7XV8U&code_challenge_method=S256&redirect_uri=cursor%3A%2F%2Fanysphere.cursor-mcp%2Foauth%2Fcallback&state=eyJpZCI6InByb2plY3QtMC1vZ21lbnQtTm90aW9uIC0gUmVhbCJ9&resource=https%3A%2F%2Fmcp.notion.com%2F"}
2026-02-04 22:33:36.742 [info] Stored server URL for OAuth flow
2026-02-04 22:33:36.742 [info] OAuth provider needs auth callback during connection
2026-02-04 22:33:36.742 [warning] Error connecting to streamableHttp server, falling back to SSE: Unauthorized
2026-02-04 22:33:36.742 [warning] Unauthorized error connecting to streamableHttp server, returning transport
2026-02-04 22:33:36.742 [info] Successfully connected to streamableHttp server
2026-02-04 22:33:36.742 [info] Storing streamableHttp client
2026-02-04 22:33:36.742 [info] CreateClient completed, server stored: true
2026-02-04 22:33:36.985 [info] Handling GetInstructions action
2026-02-04 22:33:36.986 [info] Handling ListOfferings action, server stored: true
2026-02-04 22:33:36.986 [info] Connected to streamableHttp server, fetching offerings
2026-02-04 22:33:36.986 [info] Found 0 tools, 0 prompts, and 0 resources
2026-02-04 22:33:36.991 [info] Handling GetInstructions action
2026-02-04 22:33:36.991 [info] Handling GetInstructions action
2026-02-04 22:33:36.992 [info] Handling ListOfferings action, server stored: true
2026-02-04 22:33:36.992 [info] Connected to streamableHttp server, fetching offerings
2026-02-04 22:33:36.992 [info] Found 0 tools, 0 prompts, and 0 resources
2026-02-04 22:33:36.995 [info] Handling CreateClient action
2026-02-04 22:33:36.995 [info] CreateClient completed, server stored: true

Steps to Reproduce

  1. Setup Linear MCP like this:
    "Linear": {
      "url": "https://mcp.linear.app/mcp"
    },
  1. Wait for the MCP server to initialize, and the connect button to appear.
  2. Click it, nothing happens.

Expected Behavior

When the Connect button is clicked, the browser should open and navigate to linear where I can authorize cursor.

Screenshots / Screen Recordings

Operating System

MacOS

Version Information

Version: 2.4.28
VSCode Version: 1.105.1
Commit: f3f5cec40024283013878b50c4f9be4002e0b580
Date: 2026-02-03T00:56:18.293Z
Build Type: Stable
Release Track: Early Access
Electron: 39.2.7
Chromium: 142.0.7444.235
Node.js: 22.21.1
V8: 14.2.231.21-electron.0
OS: Darwin arm64 24.6.0

Does this stop you from using Cursor

No - Cursor works, but with this issue

5 Likes

Thought my cursor was going nuts. Finally found a work around for this. Go to your output and click on MCP:[whatever MCP you want to connect].
Then try to authenticate again using the Connect button. youll see a url in the output. go to that and finish the auth manually. Worked for me. hope this helps. cheers.

My coworker found a faster workaround. Instead of clicking the blue “Connect” button, click on the “Needs authentication” text under the MCP name and that will bring you to the correct auth URL :slight_smile:

2 Likes

I am him.

3 Likes

Hey, thanks for the report and logs. This is a known issue.

The workarounds from @Puru and @Anish701 should help:

  • Click the “Needs authentication” text instead of the “Connect” button
  • Or copy the auth URL from Output > MCP:[server name] and open it manually

The team is aware of this bug. Your report helps us prioritize it.

1 Like

It would be nice for Cursor to have a zero-bug policy, similarly to what Linear does.

There are so many bugs and they keep growing. It’s often faster to just fix a bug as it appears immediately, instead of postponing it and having to pick up all the context information again weeks later

unfortunately this made me waste too many precious opus tokens while developing an mcp server to finally figure out that its a bug in cursor​:man_facepalming:t2:

Confirming this on macOS (darwin 24.6.0) with the Atlassian Rovo MCP server (`https://mcp.atlassian.com/v1/mcp\`).

Identical behavior and logs — the `streamableHttp` transport receives the authorization redirect URL, logs it as `“Redirect to authorization requested”`, but the browser never opens. The transport falls back with `“Unauthorized error connecting to streamableHttp server, returning transport”` and reports 0 tools.

**Workaround that worked:** Copied the auth URL from `Output > MCP: atlassian-mcp-server` logs and opened it manually in the browser. The `cursor://` OAuth callback completed successfully after that.

**Environment:**

One way around this is to handle OAuth at a local proxy layer instead of per-client. authenticate the upstream MCP servers once through the proxy, then Cursor just connects to the proxy endpoint with no OAuth needed. saved me from dealing with broken auth flows every time Cursor updates GitHub - smart-mcp-proxy/mcpproxy-go: Supercharge AI Agents, Safely