CCM
/MCP
SkillsMCPMarketplacesDigestToolsAdvertise

This week in Claude

Every Monday: Claude Code, Agent SDK, MCP, and the Anthropic platform moves worth your time.

Skills by Category
Frontend DevelopmentBackend & APIsTesting & QASecurityDevOps & CI/CDGit & Pull RequestsDocumentationCode Review & QualityAI & Agent BuildingSkill Development
MCP Servers by Category
Sales & MarketingWeb & Browser AutomationDatabasesAI & LLM ToolsCloud & InfrastructureCommunication & MessagingDeveloper ToolsDesign & CreativeDocuments & KnowledgeSearch & Web Crawling
Marketplaces by Category
AI Agents & OrchestrationLLM IntegrationDevelopment ToolsFrontend & UIBackend & APIsDatabasesTesting & Code QualityDevOps & CloudSecurity & ComplianceGit & Version Control

Claude Code Marketplaces

Discover Claude Code plugins, extensions, and tools. Automatically updated directory of Anthropic Claude AI marketplaces with development tools, productivity plugins, and integrations.

Resources

  • Browse Skills
  • Browse MCP Servers
  • Browse Marketplaces
  • Skill index
  • MCP index
  • Marketplace index
  • Plugins Reference

Community

  • About
  • Tools
  • Feedback
  • Privacy Policy
  • Advertise

Built for the Claude Code community with Claude Code by mertbuilds.com

Independent project, not affiliated with Anthropic
xidik12 avatar

Oculo

xidik12/oculo
512 toolsSTDIOregistry active
Summary

Gives Claude the ability to actually browse the web through a native Chromium instance, not a headless scraper or extension. Ships with 12 tools including page description, click/fill automation, structured data extraction, multi-step pipelines, and even shell command execution. The clever part is token efficiency: around 30-80 tokens per page view instead of burning through screenshot tokens. Built as an Electron app with a stdio-to-HTTP bridge since the main process can't touch webview content directly. Includes stealth fingerprinting patches, PII redaction, credential vault integration, and four permission levels from auto-approve to blocked. Reach for this when you need Claude to log into sites, fill forms, extract tables, or run repeated workflows with DOM diffing and selector caching for speed.

CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
inference shell
inference shell
create and run specialised agents in minutes
build now →
MCP-ready Email SendingMCP-ready Email Sending
MCP-ready Email Sending
Plug Mailtrap into your AI workflow and let it handle the email.
Connect Mailtrap MCP →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Capacitor - Shared memory for your team’s coding agents.
Capacitor - Shared memory for your team’s coding agents.
Make coding agent sessions - Searchable, Shareable, Vendor-neutral & Scored.
Try For Free →
CodeScene MCP ServerCodeScene MCP Server
CodeScene MCP Server
Your agent targets a perfect 10 Code Health score. Deterministic. Every commit.
Try For Free →
Give your AI the whole web as clean markdownGive your AI the whole web as clean markdown
Give your AI the whole web as clean markdown
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
belt - the only tool your agent needs
belt - the only tool your agent needs
belt cli automatically finds the best tools and skills for your agent. image, video, music, tts...
one prompt install →
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
inference shell
inference shell
create and run specialised agents in minutes
build now →
MCP-ready Email SendingMCP-ready Email Sending
MCP-ready Email Sending
Plug Mailtrap into your AI workflow and let it handle the email.
Connect Mailtrap MCP →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Capacitor - Shared memory for your team’s coding agents.
Capacitor - Shared memory for your team’s coding agents.
Make coding agent sessions - Searchable, Shareable, Vendor-neutral & Scored.
Try For Free →
CodeScene MCP ServerCodeScene MCP Server
CodeScene MCP Server
Your agent targets a perfect 10 Code Health score. Deterministic. Every commit.
Try For Free →
Give your AI the whole web as clean markdownGive your AI the whole web as clean markdown
Give your AI the whole web as clean markdown
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
belt - the only tool your agent needs
belt - the only tool your agent needs
belt cli automatically finds the best tools and skills for your agent. image, video, music, tts...
one prompt install →

Tools

Public tool metadata for what this MCP can expose to an agent.

12 tools
pageDescribe the current page in Oculo browser. Default: compact (~30-80 tokens). Use detail="a11y" for ref-tagged accessibility tree, detail="markdown" for full article content.3 params

Describe the current page in Oculo browser. Default: compact (~30-80 tokens). Use detail="a11y" for ref-tagged accessibility tree, detail="markdown" for full article content.

Parameters* required
detailstring
one of compact · a11y · markdown
scopestring
screenshotboolean
actPerform an action in Oculo browser: click, navigate, scroll, press key, hover, type, login. Elements found by ref (from a11y snapshot), text, role, label, placeholder, or CSS selector.6 params

Perform an action in Oculo browser: click, navigate, scroll, press key, hover, type, login. Elements found by ref (from a11y snapshot), text, role, label, placeholder, or CSS selector.

Parameters* required
actionstring
one of click · navigate · scroll · press · hover · type
keystring
refstring
selectorstring
textstring
urlstring
fillFill form fields in Oculo browser by label, placeholder, or data-placeholder text. Handles text, select, checkbox, textarea, and contenteditable (DraftJS, ProseMirror).2 params

Fill form fields in Oculo browser by label, placeholder, or data-placeholder text. Handles text, select, checkbox, textarea, and contenteditable (DraftJS, ProseMirror).

Parameters* required
fieldsobject
submitvalue
readExtract structured data from the page in Oculo browser (search results, tables, lists, articles).4 params

Extract structured data from the page in Oculo browser (search results, tables, lists, articles).

Parameters* required
formatstring
one of text · json
limitnumber
scopestring
whatstring
runExecute a multi-step pipeline in Oculo browser. PREFERRED for any task with 2+ actions. Each step is an object with exactly ONE key: page, act, fill, read, wait, or if.3 params

Execute a multi-step pipeline in Oculo browser. PREFERRED for any task with 2+ actions. Each step is an object with exactly ONE key: page, act, fill, read, wait, or if.

Parameters* required
descriptionstring
returnAllboolean
stepsarray
mediaGenerate images (Nano Banana / DALL-E 3) or videos (Veo 3.1) via Oculo browser.2 params

Generate images (Nano Banana / DALL-E 3) or videos (Veo 3.1) via Oculo browser.

Parameters* required
promptstring
typestring
one of image · video
shellExecute shell commands non-interactively via Oculo.1 params

Execute shell commands non-interactively via Oculo.

Parameters* required
commandstring
tabsList all open browser tabs in Oculo.

List all open browser tabs in Oculo.

No parameter schema in public metadata yet.

researchDeep web research across multiple tabs via Oculo browser.2 params

Deep web research across multiple tabs via Oculo browser.

Parameters* required
depthstring
one of quick · medium · deep
querystring
previewPre-fetch URL without navigating in Oculo browser.1 params

Pre-fetch URL without navigating in Oculo browser.

Parameters* required
urlstring
translateTranslate page or text to any language via Oculo browser.2 params

Translate page or text to any language via Oculo browser.

Parameters* required
textstring
tostring
lensVisual analysis via screenshot in Oculo browser.1 params

Visual analysis via screenshot in Oculo browser.

Parameters* required
promptstring

Oculo — an open-source AI browser that gives Claude Code, Cursor, Windsurf, and any MCP client eyes on the live web. A sample agent flow turns the request 'Log into GitHub and star the oculo repo' into four act tool calls that log in via the credential vault and click Star, using under 100 tokens.

GitHub stars Latest release Electron 34 TypeScript 5.7 React 19 12 MCP tools MIT License

Website · Download · Quick Start · MCP Tools · Architecture · Contributing


Oculo is a full-Chromium desktop browser that speaks the Model Context Protocol. Point Claude Code, Cursor, Windsurf, or any MCP client at it and your agent can see and drive real web pages — read the DOM, click, fill forms, extract data, run multi-step pipelines — through 12 compact tools that answer in under 300 tokens per flow.

Cursor : VSCode :: Oculo : Chrome

See it in action

Your agent describes intent; Oculo resolves it into a few tiny tool calls and hands back terse, redacted results — not megabytes of screenshots.

You: "Log into GitHub and star the oculo repo"

Claude Code calls:
  1. act({action: "navigate", url: "https://github.com/login"})
  2. act({action: "login", site: "github.com"})         # vault lookup, password never leaves the OS keychain
  3. act({action: "navigate", url: "https://github.com/xidik12/oculo"})
  4. act({action: "click", text: "Star"})

→ 4 tool calls, <100 tokens of response
You: "Fill out the contact form on example.com"

Claude Code calls:
  1. act({action: "navigate", url: "https://example.com/contact"})
  2. page()                                               # see the form structure
  3. fill({fields: {"Name": "...", "Email": "..."}, submit: true})

→ 3 tool calls
Section: Why Oculo — a native engine, not a wrapper

Oculo runs a real Chromium engine on your machine and adds an agent-first control layer on top. That combination is the point:

Capability
Native browserFull Chromium engine — not a wrapper, extension, or headless scraper
12 MCP toolspage, act, fill, read, run, media, shell, tabs, research, preview, translate, lens
< 300 tokens / flowCompact text responses by default — cheaper than screenshot-based approaches
Self-healing automationSelector caching + DOM diffing — 44%+ faster on repeated workflows
Multi-provider AIBuilt-in chat with Claude, OpenAI, Gemini, Grok, OpenClaw, Ollama
4-level securityauto / notify / confirm / blocked permission gate on every action
OS keychain vaultCredentials encrypted via electron.safeStorage (macOS Keychain / Windows DPAPI)
PII redactionCredit cards, SSNs, JWTs, API keys, Bearer tokens stripped from every MCP response
Anti-injectionContent boundary markers + regex-based prompt-injection detection
19 stealth patchesNavigator, WebGL, canvas, WebRTC, audio, font, battery, and screen fingerprint defenses
Headless modeRun without a window — Docker support included
Cross-platformmacOS, Windows, Linux
Python SDKpip install oculo — sync and async clients
Section: The Toolbelt — one verb per call

Each tool does one thing and returns the smallest useful answer. Token cost is the response size the agent pays for.

ToolWhat it doesToken cost
pageDescribe the current page — headings, forms, buttons, links. Compact, a11y (ref-tagged), and markdown modes~30–80
actNavigate, click, hover, scroll, type, press keys, login via vault, manage tabs, cookies, proxy, recording~1 line
fillFill form fields by label/placeholder matching, optional submit. Text, select, checkbox, contenteditable~1 line
readExtract structured data — search results, tables, lists, articlescompact
runMulti-step pipeline with conditionals (page/act/fill/read/wait/if). Cached for replayheader + last
mediaGenerate images (Nano Banana 2 / DALL·E 3) or video (Veo 3.1); image-to-image editingfile path
shellExecute shell commands non-interactively (ls, npm, git, python, …)stdout + stderr
tabsList all open browser tabs with URLs and titlescompact
researchDeep web research — opens multiple tabs, reads pages, synthesizes findingssynthesized
previewPre-fetch a URL without navigating away from the current pagepage description
translateTranslate page content or specific text to any languagetranslated text
lensVisual analysis of the current page via screenshot + AI visiondescription

Bonus: webmcp_list and webmcp_call discover and invoke page-declared tools via the WebMCP protocol.

Section: How It Works — stdio to HTTP to webview

Architecture pipeline: an MCP client (Claude Code, Cursor, Windsurf) speaks stdio to the oculo-mcp bridge, which forwards over authenticated HTTP on port 19516 to the Electron main process, which sends IPC to the React renderer, which runs executeJavaScript inside the webview holding the live web page. Tools stay discoverable when idle; Oculo must be running to execute; port and token are published to ~/.oculo-port.

Why HTTP instead of stdio? Electron's <webview> is only reachable from the renderer process. The main process — where stdio lives — can't touch page content. The HTTP bridge crosses that boundary via main-to-renderer IPC.

Port discovery. On startup Oculo writes port:authtoken to ~/.oculo-port. The bin/oculo-mcp.mjs bridge reads it automatically, so tool definitions stay discoverable even when the app is closed — only execution requires Oculo to be running.

Section: Quick Start — clone, run, register

1. Install

Grab the latest build from Releases, or run from source:

git clone https://github.com/xidik12/oculo.git
cd oculo
npm install
npm run dev

2. Register with your MCP client

Claude Code

claude mcp add oculo -- node ~/oculo/bin/oculo-mcp.mjs

Cursor / Windsurf — add to your MCP config (.cursor/mcp.json or equivalent):

{
  "mcpServers": {
    "oculo": {
      "command": "node",
      "args": ["/path/to/oculo/bin/oculo-mcp.mjs"]
    }
  }
}

3. (Optional) Headless & Docker

Run without a visible window for CI/CD, scraping, or server-side automation:

node bin/oculo-headless.mjs                          # convenience launcher
npx electron . --headless                            # or raw flags
npx electron . --headless --headless-auto-approve    # auto-approve CONFIRM actions
OCULO_HEADLESS=1 npm run dev                          # or via env var

docker compose up                                    # containerized headless (Xvfb)

4. (Optional) Python SDK

pip install oculo
from oculo import OculoClient

client = OculoClient()                 # auto-discovers port from ~/.oculo-port
print(client.page())                   # describe the page
client.act("navigate", url="https://example.com")
client.fill({"Email": "hi@oculo.com", "Message": "Hello!"}, submit=True)
results = client.read("search results", format="json")

An async AsyncOculoClient with the same surface is also available.

Section: Security Model — gate, vault, redact

Every action passes through a permission gate, and every response is redacted before it reaches the model.

Permission levels

LevelActionsBehavior
Autonavigate, page, read, scroll, screenshot, back, forward, reload, hover, listTabs, switchTab, preview, translate, lensExecutes silently
Notifyclick, type, fill, select, press, submit, newTab, closeTabExecutes + OS notification
Confirmpayment, delete_account, change_password, send_email, download, oauth, shell, evaluate, setProxy, startRecordingNative dialog approval required
Blockedread_vault, export_cookies, export_tokens, disable_securityAlways rejected

Credential vault

  • Encrypted with electron.safeStorage → OS Keychain (macOS) / DPAPI (Windows).
  • Passwords are never returned via IPC or MCP — only domain + username are exposed.
  • act({action: "login", site: "github.com"}) retrieves and fills credentials without the model ever seeing them.

Redaction & anti-injection

  • Every MCP response passes through a redactor that strips credit-card numbers, SSNs, JWTs, API keys, private keys, and Bearer tokens.
  • Page content handed to the model is wrapped in boundary markers, and regex-based detection blocks prompt-injection attempts embedded in that content.

Stealth (19 patches)

Navigator (webdriver, languages, plugins, mimeTypes, connection, hardwareConcurrency, deviceMemory), window (chrome API, dimensions), WebGL (vendor/renderer spoofing), canvas (per-call fingerprint randomization), WebRTC (IP-leak prevention), AudioContext, font enumeration blocking, Battery API, and screen-resolution randomization.

Self-healing automation

After a successful act/fill, selectors are cached with stability scores — id and data-testid = 10, aria-label = 9, role+name = 8, text = 7, css = 5. On the next run, DOM diffing picks the strategy:

  • > 80% similarity — replay from cache, no LLM call.
  • 50–80% — fall back to alternative selectors.
  • < 50% — re-engage the AI for a fresh resolution.

That's where the 44%+ speed-up on repeated workflows comes from.

Built-in AI chat

Oculo also ships a side-panel chat that talks to multiple providers directly:

ProviderAuthModels
ClaudeAPI key or CLI subscriptionOpus, Sonnet, Haiku
OpenAIAPI key or Codex CLIGPT-4o, GPT-4o mini, o1, o3
GeminiAPI key2.0 Flash, 1.5 Pro, 1.5 Flash
GrokAPI keyGrok 2, Grok 2 Mini
OllamaLocal (no key)Any pulled model
OpenClawAPI keyOpenClaw models

Building from source

npm run build          # production build
npm run dist:mac       # macOS DMG + ZIP
npm run dist:win       # Windows NSIS + portable
npm run dist:linux     # Linux AppImage + deb

npm run typecheck      # TypeScript
npm run lint           # ESLint
npm run test           # Vitest

Prerequisites: Node.js 20+, npm (not pnpm/yarn — native modules require npm), macOS / Windows / Linux.

Project structure
src/
  main/                    Electron main process
    ai/agent.ts            Multi-provider AI controller
    captcha/               CAPTCHA detection + solvers
    data/                  Bookmarks, downloads, history, session recording
    engine/                Page describer, extractor, form-detector, pipeline, resolver,
                           selector-cache, dom-differ, tab-manager
    mcp/server.ts          HTTP MCP server (ports 19516–19520, auth token)
    mcp/tools/             act, fill, page, read, run tool handlers
    network/proxy.ts       HTTP/SOCKS proxy manager
    security/              Vault, permissions, redactor, audit, anti-injection
  preload/index.ts         contextBridge API
  renderer/
    App.tsx                Root browser UI component
    components/            TabBar, AddressBar, ChatPanel, WebViewContainer,
                           bookmarks, downloads, find, history, layout, common
  shared/                  Types, constants, IPC channels, AI provider definitions
bin/
  oculo-mcp.mjs            stdio-to-HTTP MCP bridge (for Claude Code / Cursor)
  oculo-headless.mjs       Headless mode launcher
sdk/python/                Python SDK (pip install oculo)
Dockerfile                 Container deployment
docker-compose.yml         Docker Compose for headless mode

Contributing

See CONTRIBUTING.md for development setup, architecture details, and how to add a new MCP tool.

Donate

If Oculo saves you time, you can support development — BTC: 12yRGpUfFznzZoz4yVfZKRxLSkAwbanw2B

License

MIT © 2026 Salakhitdinov Khidayotullo


Built by Salakhitdinov Khidayotullo · getoculo.com

Featured
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
inference shell
inference shell
create and run specialised agents in minutes
build now →
MCP-ready Email SendingMCP-ready Email Sending
MCP-ready Email Sending
Plug Mailtrap into your AI workflow and let it handle the email.
Connect Mailtrap MCP →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Capacitor - Shared memory for your team’s coding agents.
Capacitor - Shared memory for your team’s coding agents.
Make coding agent sessions - Searchable, Shareable, Vendor-neutral & Scored.
Try For Free →
CodeScene MCP ServerCodeScene MCP Server
CodeScene MCP Server
Your agent targets a perfect 10 Code Health score. Deterministic. Every commit.
Try For Free →
Give your AI the whole web as clean markdownGive your AI the whole web as clean markdown
Give your AI the whole web as clean markdown
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
belt - the only tool your agent needs
belt - the only tool your agent needs
belt cli automatically finds the best tools and skills for your agent. image, video, music, tts...
one prompt install →
Categories
Web & Browser Automation
Registryactive
Packageoculo-mcp
TransportSTDIO
UpdatedMar 9, 2026
View on GitHub

Related Web & Browser Automation MCP Servers

View all →
markswendsen-code avatar
Doordash

io.github.markswendsen-code/doordash

MCP server for DoorDash - let AI agents order food delivery autonomously with browser-based ordering
4
tosin2013 avatar
Helmdeck

tosin2013/helmdeck

Self-hosted MCP server: sandboxed browser, desktop, vision, code-edit packs for any agent.
4
enreign avatar
Pagerunner — The Browser Layer That Learns

enreign/pagerunner

Real Chrome profiles with site intelligence — already logged in, PII anonymization, sessions persist
3
felixgeelhaar avatar
Scout

felixgeelhaar/scout

Browser automation MCP server with 84 tools. Pure CDP, DOM diffing, vision hybrid.
3
cubenest avatar
peek

io.github.cubenest/peek-mcp

Exposes recorded browser sessions (rrweb DOM, console, network) to AI coding agents, fully local
3
kc23go avatar
Anybrowse

kc23go/anybrowse

Converts any URL to clean, LLM-ready Markdown using real Chrome browsers
3