# JS-View [Health: Active]

**Category:** 📂 Browser Automation  
**Repository:** https://github.com/muxover/js-view  
**GitHub Stars:** 0  
**npm Downloads (last month):** 21  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/muxover-js-view

## Description
Render JavaScript-heavy pages in a real browser so AI agents can read them. CLI, MCP server, and HTTP service.

## Tools
Capabilities this server exposes over MCP:

- **render** — The rendered page as markdown, text, or HTML, capped at 30,000 characters by default
- **screenshot** — A JPEG of the viewport, the full page, or one element, with optional OCR text
- **links** — Links on the page with their anchor text, filtered by selector, substring, or same site
- **network** — XHR/fetch calls with method, status, content type, and a body preview

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "js-view": {
    "command": "npx",
    "args": ["-y","@muxover/js-view@latest"]
  }
}
```

## Documentation

## What JS-View does

JS-View MCP server renders pages in a real browser so agents can inspect content that appears only after JavaScript runs. It supports single-page applications, infinite-scroll feeds, and pages that reveal more content through a load-more control. Results can be returned as markdown, text, or HTML, with optional selection of a specific page region.

The server also reports when a page did not render normally. Outcomes can identify empty pages, bot checks, login requirements, and HTTP errors, along with notes about what happened. Content is limited to 30,000 characters by default and can be cut at a configured length while reporting the full length.

For the 📂 Browser Automation category, JS-View is suited to agent workflows that need rendered page reading rather than static downloads. It can also expose the browser’s network activity when an agent needs to understand how a page retrieves data.

## How it works

The JS-View MCP server runs over stdio and launches Playwright’s Chromium when available. If Playwright’s browser is not installed, it can use Chrome or Edge already installed on the machine. The browser remains warm between tool calls, and the CLI and MCP server can read local development servers.

Every MCP tool accepts a URL and controls such as `wait_for`, `wait_until`, `scroll`, `click`, `type`, `session`, `proxy`, and `timeout_ms`. A saved session can preserve authentication: sign in through the `login` command, then pass the session name to later operations. Sessions are stored under `~/.js-view/sessions` by default.

## Setup and configuration

Node.js 22 or newer is required. The MCP server can be started with `npx -y @muxover/js-view@latest mcp`, or installed through the documented Claude Code, Codex, or Cursor setup paths. Other MCP clients can use the same stdio command. If no supported browser is available, run the package’s `install` command to download Playwright’s Chromium.

The CLI can render a URL directly, open a login session, start the MCP server, run the HTTP service, or start a queue worker. Configuration includes browser selection, headful mode, stealth behavior, proxy routing, session storage, and private-host blocking. The HTTP service listens on port 8080 by default; Redis-backed queue workers require `REDIS_URL`.

## Tools and capabilities

The JS-View MCP server exposes four tools:

- `render` returns rendered markdown, text, or HTML. It supports selectors, raw output, scrolling, clicks, typing, waits, and a configurable character limit.
- `screenshot` captures the viewport, full page, or one element as JPEG, with optional OCR text.
- `links` lists page links and anchor text, with filtering by selector, text substring, or same-site status.
- `network` lists XHR and fetch requests with method, status, content type, and a body preview.

The standalone HTTP service provides `POST /render`, `GET /health`, `GET /sessions`, and `DELETE /sessions/:id`. It can run renders in process or distribute them through Redis-backed workers. The service also supports screenshots, OCR, network capture, sessions, proxies, and actions such as scrolling, clicking, typing, waiting, and navigation.

## Limitations and notes

Browser rendering can take longer than a static fetch, and the default render timeout is 15 seconds. Pages behind bot checks or login walls may return a non-`ok` outcome instead of usable content. Long pages are truncated unless the character limit is increased. The HTTP service blocks private hosts by default, while the CLI and MCP server support local development servers. The project is licensed under MIT.

_Full upstream README: https://allmcps.com/mcp/muxover-js-view/readme_

