
peek
io.github.Cubenest由 GitHub 帳號 Cubenest 發布v0.1.0-alpha.24更新於 Oct 24, 2026
Exposes recorded browser sessions (rrweb DOM, console, network) to AI coding agents, fully local
發布方自己的服務:Peek
概覽
本機 MCP 伺服器,讓 AI 程式設計助理讀取已錄製的瀏覽器工作階段,並產生可執行的 Playwright 重現測試。
- 可以做什麼
- 列出並搜尋已錄製的瀏覽器工作階段,可依來源、日期範圍、狀態以及主控台或網路錯誤篩選,並取得工作階段的敘述式摘要。讀取主控台錯誤、失敗的網路請求,以及錯誤發生前的使用者操作、DOM 變更與錯誤的因果鏈。重建指定時刻的 DOM 快照,並依選擇器或時間視窗查詢 DOM 歷史。從工作階段產生可執行的 Playwright 測試,可選擇加入主控台錯誤斷言。透過帶遮罩和引用標記的元素檢視查看即時頁面,並在較高權限層級下執行介面操作、標示元素和驗證本機稽核日誌。
- 適用情境
- 適合偵錯已在真實瀏覽器中發生的問題,讓助理查看 DOM 歷史、主控台與網路錯誤,並產出 Playwright 回歸測試。也適合重視本機隱私、由 peek Chrome 擴充功能錄製工作階段的工作流程。
- 執行需求
- 透過 npx 以 stdio 在本機執行,需要 Node.js 22 或更新版本。需先擷取工作階段:安裝 peek Chrome 擴充功能並執行 peek CLI 的 init 精靈,它會註冊原生訊息主機並把 MCP 伺服器接入用戶端。可用 PEEK_HOME 指定非預設的擷取目錄。無需驗證或 API 金鑰。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 peek,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
@peekdev/mcp
Let your AI coding agent debug what already happened in your real browser — peek reads your locally-recorded sessions (DOM history, console & network errors, the action right before a failure) over MCP and turns them into a runnable Playwright repro. Local-first: peek uploads nothing — what your MCP client does with the data is up to you.
[npm] [downloads] [license] [CI] [OpenSSF Scorecard] [types] [node] [status: alpha] [rrweb-stack MCP server]
Docs: https://peek.cubenest.in
@peekdev/mcp is two things in one binary:
- The stdio MCP server that AI coding agents (Claude Code, Cursor, Cline, Windsurf, Continue, Zed) speak to when querying your captured browser sessions.
- The native messaging host that Chrome's MV3 extension speaks to when writing into
~/.peek/sessions.db.
The same binary handles both roles — chosen by argv. You don't install this package directly in normal use; the @peekdev/cli peek init wizard wires it into your AI client's MCP config and into Chrome's NativeMessagingHosts/.
Requires Node.js ≥ 22. The native
better-sqlite3dependency only ships prebuilt binaries for Node 22+ — on Node 20 (notably Windows, which has no C/C++ toolchain by default) the install falls back to compiling from source and fails. Use Node 22 or newer.
You probably want @peekdev/cli instead
Read on if you're configuring the MCP server manually, building tooling against it, or want the protocol/tool reference.
What this is NOT
- Not a remote MCP server. Peek is local-only: stdio transport over a child-process pipe. There is no HTTP listener, no SSE endpoint, no remote auth. The MCP transport spec's Streamable HTTP variant is out of scope by design.
- Not a write-by-default tool. Read tools are unauthenticated. The write tools (
execute_action,request_authorization) are gated by the per-origin permission model (off by default) + the destructive blocklist + the audit-log writer. The cross-process IPC that delivers them to the browser native host (LocalSocketHostBridge↔HostSocketServerover~/.peek/host.sock) is now wired: at Level 3 every action prompts the side-panel confirm banner before it runs. The real-browser MAIN-world dispatch + banner UX are covered by the Playwright E2E (e2e/smoke.spec.ts); the bridge, relay, dispatcher, and confirm logic are unit-tested. - Not a wrapper around Chrome DevTools Protocol. The server reads recorded events from SQLite; the extension owns capture. No live
chrome.debuggeraccess from the MCP server.
One-click install (Cursor)
Click the button (or paste the link into Cursor) and Cursor prompts to add peek to ~/.cursor/mcp.json — no terminal needed. This wires the MCP server only; to capture sessions you still run peek init once (registers the native messaging host) and install the Chrome extension.
Install as a Claude Code plugin
If you use Claude Code, install peek as a plugin in one step:
That wires up this MCP server (18 tools) plus the peek skill. You still need the
recorder — run npx @peekdev/cli init once and install the peek Chrome
extension — before there are sessions to read. Local-first: peek uploads nothing
— what your MCP client does with the data is up to you.
Manual MCP-client config
If peek init doesn't recognize your client, paste this into your client's MCP server registry:
The @latest tag is required while peek is in alpha: every published version is a
prerelease (0.1.0-alpha.*), and a bare npx -y @peekdev/mcp resolves the
implicit * range, which doesn't match prereleases (ETARGET: No matching version found for @peekdev/mcp@*). Pinning @latest forces the newest published
build.
PEEK_HOME defaults to ~/.peek; set it via env only if you want a non-default capture directory.
The per-user config paths peek init writes to (canonical, see packages/peek-cli/src/lib/init-config.ts):
What the AI agent can do
The full tool list is exposed via the MCP tools/list request (spec 2025-11-25 + back-compat for 2025-03-26). Tool docs ship with the binary via tools/list response description fields.
Permission model (the five levels)
Per-origin, 5 levels (0–4). Default is Level 1 — Read-only. Higher levels are opt-in per origin.
At Level 3 every execute_action call prompts the user via the side-panel banner (unless a one-shot confirmToken from a prior request_authorization is passed). At Level 4 (YOLO) non-destructive actions are auto-allowed with no prompt. Levels 0–2 deny execute_action.
Destructive-action blocklist (cross-level override) — independent of the level, any action whose resolved target text/label matches a destructive term (delete, remove, transfer, send, pay, withdraw, etc. — full base list in permissions/destructive.ts, extensible via ~/.peek/policy.json) always prompts for confirmation. This overrides all levels, including Level 4 YOLO — it is not a separate "Level 5".
Every execute_action and request_authorization call is appended to ~/.peek/audit.log (JSONL, mode 0600 — peek audit log --json prints it), including denied ones. Each entry carries a seq counter and a prevHash field (SHA-256 of the previous line); a sidecar audit.head.json records the tail hash for truncation detection. Run peek audit verify to recompute the chain and confirm it is intact. The log is tamper-evident, not tamper-proof — it detects corruption, truncation, and reordering, but not a determined attacker who recomputes the chain. No keys, no external anchor, no egress.
The write-path is wired end to end: the five-level model, the destructive blocklist, and the audit-log writer are enforced inside peek-mcp (observable via ~/.peek/audit.log), and the cross-process IPC that lets execute_action fire a click in the browser now lands — a LocalSocketHostBridge (MCP process) ↔ HostSocketServer (native host) over ~/.peek/host.sock, a MAIN-world action dispatcher (click/type/navigate/scroll), and a side-panel confirm banner. Both write levels are implemented: Level 3 (act-with-confirm — every action prompts the banner) and Level 4 (YOLO — non-destructive actions auto-allow, destructive ones still prompt via the blocklist override). Both are opt-in per origin; the default stays Level 1 (read-only). Level 2 highlight (suggest_element / clear_highlight) and the Level-4 control tools (set_intent, request_user_input) are also implemented. The real-browser dispatch + banner are covered by the Playwright E2E (e2e/smoke.spec.ts).
Database
~/.peek/sessions.db — SQLite (better-sqlite3, WAL mode). Schema in src/db/migrations/. The CLI opens this DB read-mostly; the native host writes it during extension capture; the MCP server reads it for tool calls.
The native host is the only writer. The CLI and MCP server only read (except for the audit log, which is append-only JSONL on disk, not in the DB).
Subpath exports
For consumers building tooling on top of peek:
These are the subpath exports the @peekdev/cli package uses. API surface is small but stable.
Versioning & compatibility
Semantic Versioning. Currently 0.1.0-alpha.x — pre-release; tool schemas are stable in spirit but new tools may land in patch releases. See SUPPORTED.md for the compatibility matrix (MCP protocol versions, Chrome stable channels, Node versions).
Per-release changes are recorded in the CHANGELOG.
Privacy
Local-only. No network destinations. No telemetry. The MCP transport is stdio over a child-process pipe — your AI client launches peek-mcp, talks to it over stdin/stdout, and kills it when done. The binary holds no persistent state outside ~/.peek/.
Full data-handling policy: docs/peek/PRIVACY_POLICY.md. Threat model: docs/peek/THREATMODEL.md.
Distribution (maintainer-facing)
This section is for the maintainer's submission workflow at Phase 5 launch. If you're a user, you don't need any of this — just
npx @peekdev/cli init.
peek is listed (or queued for listing) on the discovery surfaces below. Each linked file is a submission scaffold with pre-filled metadata audited against the registry's current schema as of 2026-05-30 — not a user-facing install guide.
- Official MCP Registry submission —
server.jsonforregistry.modelcontextprotocol.ioviamcp-publisherCLI. Downstream registries (PulseMCP, others) ingest from here. - PulseMCP submission — URL-only form + auto-ingest from the MCP Registry.
- Smithery submission — MCPB bundle uploaded via
smithery mcp publish. - mcp.so submission — web-form submission with the source content paste-ready.
- Claude Code skill standalone install — curl recipe for users who want the Claude Code skill without running
peek init.
Launch order is documented in docs/peek/distribution/README.md (CWS first, then the MCP-registry fan-out). The Chrome Web Store listing is submitted + live: chromewebstore.google.com/detail/peek/dmgpmkeneheenpdnfmpjjahnkknkaejb.
Related packages
@peekdev/cli— thepeek initwizard that wires this MCP server into your AI client and installs the native messaging host. Start here.@peekdev/extension— the Chrome MV3 extension that records masked browser sessions and writes them to~/.peek/sessions.db. Available on the Chrome Web Store; contributors can also load it unpacked frompackages/peek-extension/chrome-mv3/for local builds. The npm package staysprivate(not published to npm).
License
Apache 2.0. The bundled rrweb engine remains MIT-licensed; see NOTICE.
Contributions are accepted under the Developer Certificate of Origin (DCO) — sign your commits with git commit -s. See CONTRIBUTING.md + SECURITY.md.
來源:packages/peek-mcp/README.md,提交 99d7e1e
工具
0版本歷史
1- v0.1.0-alpha.24最新Sep 16, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分
其他 Peek 整合
Peek
com.peek官方發布者
讓助理搜尋 Peek 的旅遊體驗、查看詳情與可預訂時段,並依分類與地區篩選。

PeekPanda
由 GitHub 帳號 fdarkaou 發布
託管式 PeekPanda MCP 伺服器,提供 iOS 應用程式情報:競品應用程式、Meta 廣告、App Store 關鍵字與 ASO、自然創意及市場排行。

Peek — URL metadata & Markdown
由 GitHub 帳號 smeltworks-labs 發布
讓助理不必安裝就能從任何公開網址取得連結預覽中繼資料與乾淨的 Markdown。
QuickPeek
co.quickpeek
把網址變成帶旁白的示範影片:真實瀏覽器走查、AI 配音、字幕直接燒進畫面。