
Oculo
io.github.xidik12由 GitHub 帳號 xidik12 發布v0.4.1更新於 Oct 24, 2026
AI-powered native browser with 12 MCP tools. ~30 tokens per page.
概覽
Oculo 是一款桌面 Chromium 瀏覽器,透過 MCP 橋接讓助理以精簡文字回應讀取、點擊、填寫並擷取真實網頁內容。
- 可以做什麼
- 檢視與操作頁面:描述目前頁面、導覽、點擊、懸停、捲動、輸入、按鍵,管理分頁與 Cookie,預先抓取網址
- 依標籤或提示文字比對填寫並送出表單,包含透過憑證保險庫登入
- 擷取搜尋結果、表格、清單、文章等結構化資料,並翻譯頁面內容
- 執行含條件分支與快取重播的多步驟流程,並進行多分頁深度網路研究
- 生成圖片或影片、對頁面做視覺分析,以及執行非互動式 shell 指令
- 透過 WebMCP 協定探索並呼叫頁面宣告的工具
- 適用情境
- 適合需要助理在使用者電腦上操作真實網站的場合,例如登入、填寫表單、擷取結構化內容或重複執行瀏覽流程,而不只是取得原始 HTML。也適用於多步驟研究與腳本化瀏覽器自動化。
- 執行需求
- 需在本機安裝 Oculo 桌面瀏覽器(發行版或以 Node.js 20+ 與 npm 從原始碼建置),支援 macOS、Windows、Linux;npm 套件 oculo-mcp 只是連接執行中應用程式的 stdio 橋接。執行工具時應用程式必須在執行中,應用程式會在使用者主目錄寫入連接埠與驗證權杖檔案供橋接讀取。另有選用的無視窗/Docker 模式與 Python SDK。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 Oculo,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
[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.
[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:
[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.
Bonus: webmcp_list and webmcp_call discover and invoke page-declared tools via the WebMCP protocol.
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.
1. Install
Grab the latest build from Releases, or run from source:
2. Register with your MCP client
Claude Code
Cursor / Windsurf — add to your MCP config (.cursor/mcp.json or equivalent):
3. (Optional) Headless & Docker
Run without a visible window for CI/CD, scraping, or server-side automation:
4. (Optional) Python SDK
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
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:
Building from source
Prerequisites: Node.js 20+, npm (not pnpm/yarn — native modules require npm), macOS / Windows / Linux.
Project structure
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
來源:README.md,提交 97c7239
工具
0版本歷史
1- v0.4.1最新Sep 16, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分