# imprvhub/mcp-browser-agent [Health: Active]

**Category:** 📂 Browser Automation  
**Repository:** https://github.com/imprvhub/mcp-browser-agent  
**GitHub Stars:** 41  
**Views:** 3  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/imprvhub-mcp-browser-agent

## Description
A Model Context Protocol (MCP) integration that provides Claude Desktop with autonomous browser automation capabilities.

## Tools
Capabilities this server exposes over MCP:

- **browser_navigate** — Navigate to a URL
- **browser_screenshot** — Capture screenshot
- **browser_click** — Click element
- **browser_fill** — Fill form input
- **browser_select** — Select dropdown option
- **browser_hover** — Hover over element
- **browser_evaluate** — Execute JavaScript
- **api_get** — GET request
- **api_post** — POST request
- **api_put** — PUT request
- **api_patch** — PATCH request
- **api_delete** — DELETE request

## Claude Desktop Quick Installation
Heuristic fallback — verify the package name and runner against the repository README before running it. Uses `npx` (confidence: low):

```json
"mcpServers": {
  "mcp-browser-agent": {
    "command": "npx",
    "args": ["-y","imprvhub-mcp-browser-agent"],
    "env": {
      "MCP_BROWSER_TYPE": ""
    }
  }
}
```

**Requires environment variables:** `MCP_BROWSER_TYPE` — the values above are empty placeholders; fill in real credentials before running (see the repository for what each one is for).

## Documentation

## What imprvhub/mcp-browser-agent MCP server does

The imprvhub/mcp-browser-agent MCP server exposes browser control and HTTP request operations to an MCP client, with Claude Desktop as the documented client. Browser tools can navigate to URLs, capture screenshots, click elements, fill form fields, choose dropdown options, hover over elements, and execute JavaScript in the browser context. The JavaScript capability also captures console logs.

Separate API tools send GET, POST, PUT, PATCH, and DELETE requests. Requests can include headers and body content, and responses are processed with JSON formatting and error feedback. This combination supports workflows that move between a rendered website and an endpoint exposed by the same or another service.

## How it works

The project uses Playwright for browser automation and maintains a persistent, headful browser session. An MCP client sends tool calls to the local process, which performs the requested browser or HTTP operation and returns the result. Screenshots and browser console logs can also be accessed through MCP resources.

The browser can be selected as Chrome, Firefox, WebKit, or Edge. Chrome is the default. WebKit is the rendering engine used in place of direct Safari support. Playwright may install the relevant browser driver when that browser type is first used, or the drivers can be installed manually.

The imprvhub/mcp-browser-agent MCP server is suited to chained tasks such as opening a page, completing a form, submitting it, and capturing the resulting page. The README also describes natural-language task execution and error recovery for multi-step operations, but the exact recovery behavior depends on the task and page being automated.

## Setup and configuration

The documented prerequisites are Node.js 16 or newer, Claude Desktop, and Playwright dependencies. Installation requires cloning the repository, running `npm install`, and building with `npm run build`. The server can then be started from the project directory with `node dist/index.js`.

Claude Desktop can start the process through its `claude_desktop_config.json` file. The configuration uses `node` as the command and points its arguments to the built `dist/index.js` file, with an optional browser argument such as `--browser chrome`. The configuration path differs by macOS, Windows, and Linux, so the repository directory must be supplied as an absolute path.

Browser selection is also configurable through `.mcp_browser_agent_config.json` in the home directory or through the `MCP_BROWSER_TYPE` environment variable. Supported values are `chrome`, `firefox`, `webkit`, and `edge`. A command-line `--browser` option is another supported method.

## Tools and capabilities

The imprvhub/mcp-browser-agent MCP server provides these browser tools:

- `browser_navigate` for opening a URL with configurable load behavior.
- `browser_screenshot` for full-page or element-specific captures.
- `browser_click`, `browser_fill`, `browser_select`, and `browser_hover` for DOM interactions.
- `browser_evaluate` for running JavaScript in the page and collecting console logs.

Its HTTP tools are `api_get`, `api_post`, `api_put`, `api_patch`, and `api_delete`. These support request headers and body content and return formatted response data with error details. MCP resources expose console logs and screenshots.

## Limitations and notes

Safari is not directly supported; selecting `webkit` uses Playwright’s WebKit engine instead. The Edge option launches Microsoft Edge through Playwright’s Edge channel rather than providing a separate browser engine. Browser drivers and the target browser must be available or installed before the corresponding automation can run.

The documented client is Claude Desktop, and the server runs locally rather than through a hosted endpoint. The provided material does not specify an authentication mechanism, package registry release, or software license.

_Full upstream README: https://allmcps.com/mcp/imprvhub-mcp-browser-agent/readme_

