Content
# molmoweb-mcp-chrome
MCP server that exposes [MolmoWeb](https://github.com/allenai/molmoweb) web automation as tools for Claude, using your **real Chrome browser** instead of Playwright. Works via a companion Chrome extension that bridges MCP commands to Chrome APIs.
## Architecture
```
Claude / MCP Client
↓ HTTP (Streamable HTTP transport, port 8002)
molmoweb-mcp-chrome (this server)
↕ WebSocket (port 8003)
Chrome Bridge Extension (chrome-extension/)
↓ Chrome APIs (tabs, scripting, captureVisibleTab)
Active Chrome Tab (your browser)
↓
MolmoWeb API (localhost:8001)
```
## Key Advantages over Playwright-based MCP
| Aspect | molmoweb-mcp (Playwright) | molmoweb-mcp-chrome (this) |
|--------|--------------------------|---------------------------|
| Browser | Separate Chromium window | Your real Chrome browser |
| Sessions | Isolated (no cookies/logins) | Uses your logged-in sessions |
| Visibility | Hidden Chromium | See actions in your active tab |
| Dependencies | Playwright (~200MB) | ws + express (lightweight) |
| Transport | stdio | Streamable HTTP (works with Claude Chrome Extension) |
## Tools
| Tool | Description |
|------|-------------|
| `molmoweb_check_status` | Health check for MolmoWeb backend + Chrome extension connection |
| `browser_navigate` | Navigate the active Chrome tab to a URL |
| `browser_screenshot` | Capture screenshot of the active Chrome tab |
| `browser_get_page_info` | Get current URL and title |
| `browser_execute_action` | Execute click/type/scroll/press_key/hover/navigate/wait |
| `molmoweb_predict` | Ask MolmoWeb vision model what action to perform |
| `run_web_task` | Full autonomous agent loop in your Chrome browser |
## Setup
### 1. Install the MCP server
```bash
npm install
```
### 2. Load the Chrome Bridge Extension
1. Open Chrome → `chrome://extensions/`
2. Enable **Developer Mode** (top right)
3. Click **Load unpacked** → select the `chrome-extension/` directory
4. The extension "MolmoWeb MCP Bridge" should appear and auto-connect when the server runs
### 3. Start the MolmoWeb backend
The MolmoWeb vision model must be running at `http://127.0.0.1:8001`:
```bash
# On Windows with WSL:
run_mcp_server.bat
```
### 4. Configure in Claude Code
Add to your `~/.mcp.json` (global) or project `.mcp.json`:
```json
{
"mcpServers": {
"molmoweb-chrome": {
"type": "streamable-http",
"url": "http://127.0.0.1:8002/mcp"
}
}
}
```
### 5. Run the server
```bash
npm start
```
Output:
```
[mcp] HTTP server listening on http://127.0.0.1:8002/mcp
[ws] WebSocket server listening on ws://127.0.0.1:8003
[mcp] Waiting for Chrome bridge extension to connect...
```
### Health check
```bash
curl http://127.0.0.1:8002/health
# {"status":"ok","extension":"connected","sessions":0}
```
## License
MIT