Why is my cursor agent saying it doesnt have access to Cursor-ide-browser

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

Why is my cursor agent saying it doesnt have access to Cursor-ide-browser, shouldnt it be built in with Cursor? Im on a team plan. I have attached the screenshot

Steps to Reproduce

Expected Behavior

Cursor agent is able to interact with the browser in 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 25.2.0

For AI issues: which model did you use?

Opus 4.5

Does this stop you from using Cursor

Sometimes - I can sometimes use Cursor

I’m experiencing the same issue.

  • The MCP instructions for cursor-ide-browser appear in my agent’s context (so the server seems to be configured)

  • But when the agent tries to call any browser tools like browser_navigate, it returns “Tool not found”

  • Calling ListMcpResources returns “No MCP resources found”

Environment:

  • macOS (darwin 25.2.0)

  • Opus 4.5

It seems like there’s a disconnect between the MCP server being “registered” (instructions visible) and the actual tools being available to the agent. Would be helpful to know:

  1. Is there a way to check MCP server connection status?

  2. Are there any logs we can look at to debug this?

  3. Is this a known issue being worked on?

Hey, thanks for the report.

To dig into this, we’ll need some diagnostics:

  1. Settings > Tools & MCP > Browser Automation: what does it show there? Is it enabled?
  2. Help > Toggle Developer Tools > Console: what errors show up when the agent tries to call the browser tools?
  3. The Request ID from the failed call (chat context menu > Copy Request ID)
  4. Check if this directory exists: ~/.cursor/projects/[path-to-project]/mcps/cursor-ide-browser/tools/
    If it does, what’s inside?

@dzuc same for you, if you can share this info too.

Hey @deanrie

Settings > Tools & MCP > Browser Automation: what does it show there? Is it enabled?

It is enabled and says ‘Connected to Browser Tab’ with ‘Browser Tab’ selected in the pulldown

Help > Toggle Developer Tools > Console: what errors show up when the agent tries to call the browser tools?

Just some seemingly unrelated errors

ERR [Extension Host] [otel.error] {"stack":"OTLPExporterError: Bad Request\n\tat IncomingMessage.<anonymous> (/Applications/Cursor.app/Contents/Resources/app/node_modules/@opentelemetry/otlp-exporter-base/build/src/transport/http-transport-utils.js:52:31)\n\tat IncomingMessage.emit (node:events:531:35)\n\tat endReadableNT (node:internal/streams/readable:1698:12)\n\tat process.processTicksAndRejections (node:internal/process/task_queues:90:21)","message":"Bad Request","code":"400","name":"OTLPExporterError","data":"{\"error\":\"Trace spans collection is not enabled for this user\"}"}

The Request ID from the failed call (chat context menu > Copy Request ID)

683f4773-e7ea-41eb-8243-e4624a05791c

Check if this directory exists: ~/.cursor/projects/[path-to-project]/mcps/cursor-ide-browser/tools/

If it does, what’s inside?

Yes, the directory exists and contains 31 tool definition JSON files (browser_navigate.json, browser_click.json, browser_snapshot.json, etc.).

However, the STATUS.md file at ~/.cursor/projects/[project]/mcps/user-cursor-ide-browser/STATUS.md says:

“The MCP server errored.”

Found the root cause in the MCP logs:

Log file: ~/Library/Application Support/Cursor/logs/[session]/window[N]/exthost/anysphere.cursor-mcp/MCP user-cursor-ide-browser.log

The browser MCP server is failing to start because the npm package doesn’t exist:

Starting new stdio process with command: npx -y @anthropic/mcp-server-puppeteer
npm error 404 Not Found - GET https://registry.npmjs.org/@anthropic%2fmcp-server-puppeteer
npm error 404 The requested resource '@anthropic/mcp-server-puppeteer@*' could not be found

Hi Dean,

  1. Settings > Tools & MCP > Browser Automation: what does it show there? Is it enabled?
    ”Browser Tab”

  2. Help > Toggle Developer Tools > Console: what errors show up when the agent tries to call the browser tools?
    workbench.desktop.main.js:58 ERR MCP error -32000: Connection closed: McpError: MCP error -32000: Connection closed
    at vn.fromError (/Applications/Cursor.app/Contents/Resources/app/extensions/cursor-mcp/dist/main.js:2:985554)
    at Ze._onclose (/Applications/Cursor.app/Contents/Resources/app/extensions/cursor-mcp/dist/main.js:2:554824)
    at _transport.onclose (/Applications/Cursor.app/Contents/Resources/app/extensions/cursor-mcp/dist/main.js:2:554154)
    at ChildProcess. (/Applications/Cursor.app/Contents/Resources/app/extensions/cursor-mcp/dist/main.js:2:1390154)
    at ChildProcess.emit (node:events:519:28)
    at ChildProcess.emit (node:domain:489:12)
    at maybeClose (node:internal/child_process:1101:16)
    at ChildProcess._handle.onexit (node:internal/child_process:304:5)
    at Process.callbackTrampoline (node:internal/async_hooks:130:17) McpError: MCP error -32000: Connection closed

  3. The Request ID from the failed call (chat context menu > Copy Request ID)
    b3269922-8514-4bfa-8a73-45cc56658e5e

  4. Check if this directory exists: ~/.cursor/projects/[path-to-project]/mcps/cursor-ide-browser/tools/
    If it does, what’s inside?
    Lot of json files that are prefixed with browser_

Same here, browser tool not usable in cursor. @browser does not show anything (except some docs like browserify, but ntohing else)

Thanks for the info.

Key takeaway: cursor-ide-browser is a built-in MCP server. It doesn’t run as an external process over stdio and it doesn’t create a log file at ~/Library/Application Support/Cursor/logs/.../MCP cursor-ide-browser.log. This is different from user-configured MCP servers (like user-puppeteer, user-browser-tools, etc.), which do have logs.

I tested all 31 browser tools on macOS darwin 24.5.0, and everything works correctly. navigate, lock, click, snapshot, unlock all behave as expected.

@dzuc, the error you found with npx -y @anthropic/mcp-server-puppeteer suggests your setup is trying to use a user-configured Puppeteer MCP server (likely named user-puppeteer or similar), not the built-in cursor-ide-browser. Please check your MCP config:

  • ~/.cursor/mcp.json (global)
  • .cursor/mcp.json (project-level)

Look for any entry that references @anthropic/mcp-server-puppeteer and either remove it or fix the package name. The built-in browser tools should work without any external packages.

@Avinash_K, the Connection closed error might mean the built-in server crashed. Try this:

  1. Settings > Tools & MCP > Browser Automation, turn it off, wait, then turn it back on
  2. Fully restart Cursor
  3. Open DevTools (Help > Toggle Developer Tools) and check the console for errors when you request the agent to use the browser tools

Flagged for further internal investigation.

Hi Dean,

Getting the following errors:

workbench.desktop.main.js:11400 [Extension Host] [otel.error] {“stack”:“OTLPExporterError: Bad Request\n\tat IncomingMessage. (/Applications/Cursor.app/Contents/Resources/app/node_modules/@opentelemetry/otlp-exporter-base/build/src/transport/http-transport-utils.js:52:31)\n\tat IncomingMessage.emit (node:events:531:35)\n\tat IncomingMessage.emit (node:domain:489:12)\n\tat endReadableNT (node:internal/streams/readable:1698:12)\n\tat process.processTicksAndRejections (node:internal/process/task_queues:90:21)”,“message”:“Bad Request”,“code”:“400”,“name”:“OTLPExporterError”,“data”:“{“error”:“Trace spans collection is not enabled for this user”}”}

ERR [002] potential listener LEAK detected, having 279 listeners already. MOST frequent listener (52):: Error
at Vrp.create (vscode-file://vscode-app/Applications/Cursor.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:47:12834)
at Y1e._event [as event] (vscode-file://vscode-app/Applications/Cursor.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:49:1650)
at Y1e.onFirstObserverAdded (vscode-file://vscode-app/Applications/Cursor.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:54:46914)
at Y1e.addObserver (vscode-file://vscode-app/Applications/Cursor.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:54:27951)
at Object.onWillAddFirstListener (vscode-file://vscode-app/Applications/Cursor.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:47:10623)
at Vvn._event [as onDidChange] (vscode-file://vscode-app/Applications/Cursor.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:49:1917)
at Object.fn (vscode-file://vscode-app/Applications/Cursor.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:34168:8879)
at H8l (vscode-file://vscode-app/Applications/Cursor.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:125:32650)
at VTt (vscode-file://vscode-app/Applications/Cursor.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:125:32403)
at Qsn (vscode-file://vscode-app/Applications/Cursor.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:125:34035)
at Lyg (vscode-file://vscode-app/Applications/Cursor.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:125:35442)
at vscode-file://vscode-app/Applications/Cursor.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:125:34901
at cie (vscode-file://vscode-app/Applications/Cursor.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:125:34215)
at Byg (vscode-file://vscode-app/Applications/Cursor.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:125:34893)
at cie (vscode-file://vscode-app/Applications/Cursor.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:125:34226)
at q8l (vscode-file://vscode-app/Applications/Cursor.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:125:32084)
at i (vscode-file://vscode-app/Applications/Cursor.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:125:27326)
at vscode-file://vscode-app/Applications/Cursor.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:34168:8573 ListenerLeakError: [002] potential listener LEAK detected, having 279 listeners already. MOST frequent listener (52):
at Vrp.create (workbench.desktop.main.js:47:12834)
at Y1e._event [as event] (workbench.desktop.main.js:49:1650)
at Y1e.onFirstObserverAdded (workbench.desktop.main.js:54:46914)
at Y1e.addObserver (workbench.desktop.main.js:54:27951)
at Object.onWillAddFirstListener (workbench.desktop.main.js:47:10623)
at Vvn._event [as onDidChange] (workbench.desktop.main.js:49:1917)
at Object.fn (workbench.desktop.main.js:34168:8879)
at H8l (workbench.desktop.main.js:125:32650)
at VTt (workbench.desktop.main.js:125:32403)
at Qsn (workbench.desktop.main.js:125:34035)
at Lyg (workbench.desktop.main.js:125:35442)
at workbench.desktop.main.js:125:34901
at cie (workbench.desktop.main.js:125:34215)
at Byg (workbench.desktop.main.js:125:34893)
at cie (workbench.desktop.main.js:125:34226)
at q8l (workbench.desktop.main.js:125:32084)
at i (workbench.desktop.main.js:125:27326)
at workbench.desktop.main.js:34168:8573

OTLPExporterError can be ignored, it’s not related to browser tools. But ListenerLeakError with 279 listeners is interesting.

But first, do what I asked in the previous message:

  1. Settings > Tools & MCP > Browser Automation: turn it off, wait 5 to 10 seconds, then turn it back on
  2. Fully restart Cursor (not just Reload Window)
  3. Try calling browser tools via the agent again

If you still get Connection closed after that, send me the Request ID from the new failed request.

I have already tried this, the logs I sent are after that

1 Like

I’m on Version: 2.4.37
VSCode Version: 1.105.1
Commit: 7b9c34466f5c119e93c3e654bb80fe9306b6cc70
Date: 2026-02-12T23:15:35.107Z
Build Type: Stable
Release Track: Default
Electron: 39.2.7
Chromium: 142.0.7444.235
Node.js: 22.21.1
V8: 14.2.231.21-electron.0
OS: Darwin arm64 25.2.0

Disabled the browser automation capabilities and restarted cursor, once restarted enabled it again and it worked.

1 Like