Oculo logo

Oculo

Drives live Chromium pages through 12 compact MCP tools for browsing, forms, extraction, research, and automation.

Install Oculo

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "oculo": {
      "command": "npx",
      "args": [
        "-y",
        "electron"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Install not yet sandbox-tested— we haven't run this command through our automated sandbox yet. Not a red flag; we're working through the catalog.

Overview

The oculo MCP server connects MCP clients to a local Chromium browser, allowing agents to inspect and operate live web pages. Its 12 tools cover navigation, interaction, form filling, extraction, multi-step workflows, research, translation, visual analysis, media generation, and shell commands. A local bridge forwards MCP requests over authenticated HTTP to the Electron app, while compact responses reduce returned context. Reach for it when an agent needs browser automation, web research, or page interaction rather than screenshot-only browsing.

Use cases

  • Automate multi-step browser workflows
  • Fill and submit web forms
  • Extract structured data from pages
  • Run research across multiple web pages
  • Inspect and operate a local Chromium session

Key features

  • 12 MCP tools for browser automation
  • Compact DOM and accessibility-oriented page responses
  • Form filling with optional submission
  • Conditional multi-step workflow pipelines
  • Headless and Docker execution
  • Credential vault and response redaction

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 1d ago

Recent health check succeeded.

7/7 checks healthy over the last 44d

Supply-chain signal

29 high-severity advisories on record for this package. Most advisories affect transitive dependencies and may not be exploitable in this server's actual usage — this is a directional signal, not a security audit.

Critical 3High 26Medium 32Low 10

Scanned 6d ago via OSV.dev · electron (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars5Stargazers on the source repository.
npm downloads32MPackage downloads in the last 30 days.
Last commit3mo agoMost recent push to the default branch.

How Oculo works

What the oculo MCP server does

The oculo MCP server gives an MCP client control of a full Chromium desktop browser running locally. Agents can inspect the current page, navigate to URLs, click and type, complete forms, extract structured information, and coordinate multi-step browser workflows. It is intended for tasks that require interaction with live web pages, such as submitting a form, reading search results, or carrying out a sequence of authenticated actions.

The browser exposes 12 MCP tools. page describes headings, links, buttons, and forms in compact, accessibility-oriented, or Markdown formats. act handles navigation and browser actions, while fill matches fields by labels or placeholders and can submit them. read extracts information from articles, tables, lists, and search results. Other tools support tab inspection, research across multiple pages, URL previewing, translation, screenshot-based visual analysis, media generation, and non-interactive shell commands.

How it works

MCP clients communicate with the oculo-mcp.mjs bridge through standard input and output. The bridge reads a port and authentication token written to ~/.oculo-port, then forwards requests over authenticated HTTP to the Electron application. The application passes browser operations through its main and renderer processes to the live webview.

Tool definitions remain discoverable when the desktop application is closed, but execution requires Oculo to be running. The run tool can combine page inspection, actions, form filling, reads, waits, and conditionals into a replayable pipeline. Oculo also includes selector caching and DOM-diff support for repeated workflows.

Setup and configuration

To use the oculo MCP server, install a released build or run the project from source with Node.js and Electron. From a source checkout, install dependencies and start the development app with npm install followed by npm run dev.

Register bin/oculo-mcp.mjs as a command-based MCP server. Claude Code uses claude mcp add, while Cursor and Windsurf can reference the script in their MCP JSON configuration. The Python package is available with pip install oculo; it provides synchronous and asynchronous clients that discover the local port automatically.

For CI, scraping, or server-side automation, launch headless mode with the provided launcher, Electron flags, OCULO_HEADLESS=1, or Docker Compose. Headless mode can optionally auto-approve actions marked for confirmation.

Tools and capabilities

The tool set includes:

  • page, act, fill, and read for page understanding and interaction.
  • run for conditional multi-step pipelines.
  • tabs, preview, research, and translate for navigation and information gathering.
  • lens for visual analysis using a screenshot and AI vision.
  • media for image and video generation, including image-to-image editing.
  • shell for non-interactive commands such as git, npm, and python.

The browser also provides webmcp_list and webmcp_call for discovering and invoking tools declared by web pages.

Limitations and notes

The oculo MCP server runs against a local Electron browser, so the application must be available when a tool needs to execute. Its security model includes configurable action permissions, operating-system keychain storage for credentials, and redaction of items such as credit-card numbers, SSNs, JWTs, API keys, and bearer tokens from MCP responses. Content-boundary markers and prompt-injection detection are also included.

The project supports macOS, Windows, and Linux, and offers a headless Docker setup. The README identifies Claude Code, Cursor, Windsurf, and other MCP clients as supported connection targets. Browser automation may still depend on the structure and behavior of the target website.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Oculo

oculo is an MCP server that connects AI clients to a local Chromium browser. Its main tools let agents inspect pages, navigate, click, type, fill forms, extract structured data, run workflows, research across tabs, translate content, and analyze pages visually. It communicates through a local bridge and authenticated HTTP.

Install a release or run it from source with Node.js and Electron. For source installation, clone the repository, run `npm install`, and start it with `npm run dev`. Then register `bin/oculo-mcp.mjs` in your MCP client configuration.

Yes, oculo works with Cursor through its MCP configuration. Add a server entry whose command is `node` and whose argument points to `/path/to/oculo/bin/oculo-mcp.mjs`, then run the Oculo application when tools need to execute.

Yes, oculo supports headless execution and Docker. You can use `node bin/oculo-headless.mjs`, Electron headless flags, `OCULO_HEADLESS=1`, or `docker compose up`. A headless auto-approve option is also available for confirmation-gated actions.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewOculo AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/oculo?style=directory)](https://allmcps.com/mcp/oculo)
HTML Embed
<a href="https://allmcps.com/mcp/oculo"><img src="https://allmcps.com/api/badge/oculo?style=directory" alt="Oculo on AllMCPs" /></a>