Guides · Bugs and AI coding agents

How to let Cursor see your browser console errors

Updated Sep 23, 2026

Cursor can read browser console errors in three ways: its built-in browser tool (the agent opens the page itself), Chrome DevTools MCP (the agent drives Chrome), or the Roll MCP server, which gives it the console, failed requests and click timeline from a bug you already recorded.

Which one to use

MethodSetupSees your logged-in sessionWorks for a bug that already happened
Cursor browser toolNone, built inNo, its own browserNo
Chrome DevTools MCPOne MCP entryOnly with --autoConnect (Chrome 144+)No
Roll recordingExtension + one MCP entryYes, it records your real tabYes

1. Cursor's built-in browser

In Agent mode, ask Cursor to open your app (for example "open localhost:3000/checkout and tell me what errors show up"). The agent drives its own browser, reads console messages and network traffic, and writes the logs to files it can grep instead of dumping everything into context.

Best for checking the UI you just changed. It's less useful when the bug depends on your real account, production data, or a sequence the agent won't think to try.

2. Chrome DevTools MCP

Add chrome-devtools-mcp to Cursor's MCP settings and the agent gets tools like list_console_messages and list_network_requests against a Chrome it launches. By default that Chrome uses a separate profile. To attach to your everyday browser instead, enable remote debugging at chrome://inspect and pass --autoConnect (Chrome 144 and later).

See DevTools MCP vs a recording for the tradeoffs.

3. Record the bug, let Cursor read it

This is the one that works for the bug you can't make happen on demand.

  1. Install Roll from the Chrome Web Store. No account needed.
  2. Add the Roll MCP server to Cursor. The button opens Cursor's install card:Or paste this into .cursor/mcp.json and restart Cursor:
    {
      "mcpServers": {
        "roll": {
          "command": "npx",
          "args": ["-y", "@rollapp.pro/mcp"]
        }
      }
    }
  3. Open the page where it breaks, click Record (or press ⌘⇧Space / Ctrl+Shift+Space), reproduce the bug, stop.
  4. In Cursor: "Open the latest Roll and fix what broke."

Cursor calls get_timeline to see the clicks, requests and errors in order, then get_network with failed_only: true for the response bodies of the requests that broke, and get_console with level: "error" for stacks. No video goes into the prompt.

From the recording viewer there's also an Open in → Cursor button that starts the chat for you. Want to see what the agent gets first? Open the demo recording.

If you just want to paste

No extension, no MCP: in DevTools, right-click the console and choose Save as, or copy the failing request as cURL from the Network tab. Paste both into the chat with the steps you took. Structure it with the AI bug report template and the agent will do a lot better than with a bare error line.

Questions

Does Cursor read the browser console on its own?

Only a browser it controls. Cursor's browser tool opens pages inside Cursor and reads their console and network. It can't see the Chrome window you already have open unless you connect one through an MCP server.

Why does Cursor keep guessing at frontend bugs?

Usually because it only has the error message you pasted. The cause is often a request that failed earlier, or a response body the UI ignored. Give it the sequence (clicks, requests, errors, in order) and it stops guessing.

Does the Roll MCP server send my data anywhere?

No. It runs locally over stdio and reads recordings from ~/.trace/jams on your disk. Nothing uploads unless you choose to publish a link.

Can Cursor read a bug a teammate recorded?

Yes. Paste their rollapp.pro/c/ link into the chat and ask what went wrong. The MCP server accepts a published link anywhere it takes a recording id.