@peekdev/mcp 0.1.0-alpha.10 → 0.1.0-alpha.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +23 -17
- package/package.json +9 -3
package/README.md
CHANGED
|
@@ -57,30 +57,36 @@ For Claude Code, this goes in `~/.claude/mcp_servers.json` (per-project) or via
|
|
|
57
57
|
|
|
58
58
|
| Tool | Action | Authorization |
|
|
59
59
|
|---|---|---|
|
|
60
|
-
| `
|
|
61
|
-
| `
|
|
62
|
-
| `get_session_console_errors` |
|
|
63
|
-
| `get_session_network_errors` |
|
|
64
|
-
| `
|
|
60
|
+
| `list_recent_sessions` | List recently recorded sessions, newest first (id, origin, ts, event count) | none |
|
|
61
|
+
| `get_session_summary` | LLM-readable narrative summary of a session | none |
|
|
62
|
+
| `get_session_console_errors` | List console errors recorded in a session | none |
|
|
63
|
+
| `get_session_network_errors` | List failed/notable network requests in a session | none |
|
|
64
|
+
| `get_user_action_before_error` | Last N user actions before a console error | none |
|
|
65
|
+
| `generate_playwright_repro` | Generate a runnable Playwright test from a session | none |
|
|
65
66
|
| `get_dom_snapshot` | Reconstruct the DOM at a given timestamp | none |
|
|
66
|
-
| `
|
|
67
|
-
| `
|
|
68
|
-
| `execute_action` |
|
|
69
|
-
| `request_authorization` | Ask the user to permit a destructive action | per-action user prompt |
|
|
67
|
+
| `query_dom_history` | Timeline of attribute/text changes for a selector | none |
|
|
68
|
+
| `request_authorization` | Side-panel consent for write actions (Level 3) | per-action user prompt |
|
|
69
|
+
| `execute_action` | Dispatch a UI action (gated by permission level + destructive blocklist) | permission level + destructive blocklist |
|
|
70
70
|
|
|
71
71
|
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.
|
|
72
72
|
|
|
73
73
|
## Permission model (the five levels)
|
|
74
74
|
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
|
78
|
-
|
|
79
|
-
|
|
|
80
|
-
|
|
|
81
|
-
|
|
|
75
|
+
Per-origin, 5 levels (0–4). Default is **Level 1 — Read-only**. Higher levels are opt-in per origin.
|
|
76
|
+
|
|
77
|
+
| Level | Name | What it allows | Default |
|
|
78
|
+
|---|---|---|---|
|
|
79
|
+
| 0 | Off | Recording suppressed, tool surface disabled for the origin | |
|
|
80
|
+
| 1 | Read-only | Read recorded sessions; no action execution | enabled |
|
|
81
|
+
| 2 | Suggest-only | Read + highlight DOM via overlay; no DOM mutation | |
|
|
82
|
+
| 3 | Act-with-confirm | Read + execute actions, each prompting Allow once / Always for this site / Deny | |
|
|
83
|
+
| 4 | YOLO this session | Read + execute non-destructive actions with no prompt (auto-expires on tab close or 60 min) | |
|
|
84
|
+
|
|
85
|
+
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`.
|
|
86
|
+
|
|
87
|
+
**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".
|
|
82
88
|
|
|
83
|
-
|
|
89
|
+
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.
|
|
84
90
|
|
|
85
91
|
## Database
|
|
86
92
|
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@peekdev/mcp",
|
|
3
|
-
"version": "0.1.0-alpha.
|
|
4
|
-
"description": "peek native messaging host + stdio MCP server. Owns ~/.peek/sessions.db (better-sqlite3) and bridges the browser extension, CLI, and AI tools to a single local source of truth
|
|
3
|
+
"version": "0.1.0-alpha.11",
|
|
4
|
+
"description": "peek native messaging host + stdio MCP server. Owns ~/.peek/sessions.db (better-sqlite3) and bridges the browser extension, CLI, and AI tools to a single local source of truth.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"peek",
|
|
7
7
|
"mcp",
|
|
@@ -58,7 +58,7 @@
|
|
|
58
58
|
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
59
59
|
"better-sqlite3": "^12.10.0",
|
|
60
60
|
"zod": "^3.25.76",
|
|
61
|
-
"@cubenest/rrweb-core": "0.1.0-alpha.
|
|
61
|
+
"@cubenest/rrweb-core": "0.1.0-alpha.5"
|
|
62
62
|
},
|
|
63
63
|
"devDependencies": {
|
|
64
64
|
"@types/better-sqlite3": "^7.6.13",
|
|
@@ -73,7 +73,13 @@
|
|
|
73
73
|
"url": "https://github.com/Cubenest/rrweb-stack",
|
|
74
74
|
"directory": "packages/peek-mcp"
|
|
75
75
|
},
|
|
76
|
+
"bugs": {
|
|
77
|
+
"url": "https://github.com/Cubenest/rrweb-stack/issues"
|
|
78
|
+
},
|
|
76
79
|
"homepage": "https://peek.cubenest.in",
|
|
80
|
+
"engines": {
|
|
81
|
+
"node": ">=20.18.0"
|
|
82
|
+
},
|
|
77
83
|
"scripts": {
|
|
78
84
|
"build": "tsc -p tsconfig.json && node ./scripts/postbuild.mjs",
|
|
79
85
|
"typecheck": "tsc -p tsconfig.json --noEmit",
|