プロトタイプ · プレビュー版:公式レジストリのすべてのサーバーを掲載し、30分ごとに同期しています。レビューとアカウント機能は今後のステップで始まります。
PopNx MCPAIを使う人のためのMCPサーバー · やさしい言葉で解説

Oculo

作者:xidik12バージョン 0.4.1i★ –iパソコンで動く
レジストリ名io.github.xidik12/oculo

インストール

概要

作者による説明(英語の原文)

AI-powered native browser with 12 MCP tools. ~30 tokens per page.

PopNx MCPの3つの柱

この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。

できること

このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。

  • 接続方法: パソコンで動く
  • トランスポート: stdio
  • カテゴリ: ウェブ・ブラウザ

インストール

使っているAIアプリを選んで、設定をコピーしてください。

インストールの前に

  • 基本チェック:1項目中1項目に合格
  • あなたのパソコンで、あなたのユーザーと同じ権限(ファイル、ネットワーク、アプリ)で動きます。
  • レジストリには、入力が必要なキーは載っていません。

必要なもの

  • npmNode.jsのインストール(npxコマンドに必要)

どのアプリを使っていますか?

上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。

Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます

{
  "mcpServers": {
    "oculo": {
      "command": "npx",
      "args": [
        "-y",
        "oculo-mcp"
      ]
    }
  }
}

ターミナルでこれを実行します

claude mcp add oculo -- npx -y oculo-mcp

Cursorで開く

または、設定を自分でコピーする

プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます

{
  "mcpServers": {
    "oculo": {
      "command": "npx",
      "args": [
        "-y",
        "oculo-mcp"
      ]
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

VS Codeで開く

または、設定を自分でコピーする

プロジェクトの .vscode/mcp.json に貼り付けます

{
  "servers": {
    "oculo": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "oculo-mcp"
      ]
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。

選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。

この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。

できること

パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。

基本チェックi

誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月6日にチェック

  • ✓ 合格

    作者とリポジトリが一致

    レジストリ名は、リポジトリを所有するGitHubアカウント xidik12 で確認済みです

  • … 未チェック

    今もメンテナンスされている

    このリポジトリはまだGitHubから読み取っていません

  • … 未チェック

    ライセンスがある

    このリポジトリはまだGitHubから読み取っていません

  • – 対象外

    エンドポイントが応答する

    これはパソコンで動くため、インターネット上のエンドポイントはありません

  • – 対象外

    OAuthでサインイン

    パソコンで動き、代わりにローカルの設定を使います

  • … 未チェック

    ツールの説明に隠れた指示がない

    パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです

ウェブ・ブラウザのほかのサーバーとの比較i

  • このカテゴリのほかの878件のうち0%よりスターが多い
  • このカテゴリのほかの878件のうち4%より最近レジストリに公開
  • 基本チェックの結果が、このカテゴリのほかの878件のうち100%と同じかそれ以上

レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。

よくある質問

Oculoは安全ですか?

当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。

どんなキーやコードが必要ですか?

レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。

パソコンで動きますか、それともクラウドですか?

あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。

今もメンテナンスされていますか?

GitHubリポジトリの最終更新は–、最新バージョン(0.4.1)がレジストリに届いたのは8 か月前です。

どのアプリで使えますか?

Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。

代わりに使えるものは?

同じカテゴリには:Browser Use, Chrome DevTools MCP, MCP Server Browser

代わりの候補

同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。

カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i

Browser Use

作者:browser-use

Browser agents and stealth cloud browsers for AI: run web tasks, fill forms, extract data.

パソコンでもクラウドでも★ 120,087MIT17 日前更新
インストール

作者のREADME

READMEを開く

作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。

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

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

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.

Why HTTP instead of stdio? Electron's 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.

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.

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 requ

冒頭だけを表示しています。続きはリポジトリで読めます

PopNxに聞く