@peekdev/mcp 0.1.0-alpha.11 → 0.1.0-alpha.12

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.
Files changed (2) hide show
  1. package/README.md +17 -8
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -30,7 +30,7 @@ Read on if you're configuring the MCP server manually, building tooling against
30
30
  ## What this is NOT
31
31
 
32
32
  - 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.
33
- - Not a write-by-default tool. Read tools are unauthenticated; write tools (clicks, inputs, navigation, destructive actions) require explicit per-action authorization, recorded in `~/.peek/audit.log`.
33
+ - Not a write-by-default tool. Read tools are unauthenticated. The write tools (`execute_action`, `request_authorization`) are defined on the MCP surface and gated by the permission model + destructive blocklist + audit-log writer — but the cross-process IPC that delivers them to the browser native host is **in development**. Calling `execute_action` against `peek-mcp@0.1.0-alpha.10` returns `bridge not wired in this MCP process`; peek is effectively read-only until that bridge lands.
34
34
  - Not a wrapper around Chrome DevTools Protocol. The server reads recorded events from SQLite; the extension owns capture. No live `chrome.debugger` access from the MCP server.
35
35
 
36
36
  ## Manual MCP-client config
@@ -42,16 +42,23 @@ If `peek init` doesn't recognize your client, paste this into your client's MCP
42
42
  "mcpServers": {
43
43
  "peek": {
44
44
  "command": "npx",
45
- "args": ["-y", "@peekdev/mcp"],
46
- "env": {
47
- "PEEK_HOME": "~/.peek"
48
- }
45
+ "args": ["-y", "@peekdev/mcp"]
49
46
  }
50
47
  }
51
48
  }
52
49
  ```
53
50
 
54
- For Claude Code, this goes in `~/.claude/mcp_servers.json` (per-project) or via `claude mcp add`. For Cursor: `~/Library/Application Support/Cursor/User/mcp_servers.json` (macOS). For Continue: in your `~/.continue/config.json` under `experimental.modelContextProtocolServers`.
51
+ `PEEK_HOME` defaults to `~/.peek`; set it via `env` only if you want a non-default capture directory.
52
+
53
+ The per-user config paths `peek init` writes to (canonical, see `packages/peek-cli/src/lib/init-config.ts`):
54
+
55
+ | Client | Path |
56
+ |---|---|
57
+ | Claude Code | `~/.claude.json` (or `claude mcp add`) |
58
+ | Cursor | `~/.cursor/mcp.json` |
59
+ | VS Code (MCP) | `~/.vscode/mcp.json` |
60
+ | Windsurf | `~/.codeium/windsurf/mcp_config.json` |
61
+ | Cline | `~/cline_mcp_settings.json` |
55
62
 
56
63
  ## What the AI agent can do
57
64
 
@@ -88,6 +95,8 @@ At **Level 3** every `execute_action` call prompts the user via the side-panel b
88
95
 
89
96
  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.
90
97
 
98
+ **Shipped today (alpha.10) vs queued for a follow-up alpha:** the five-level model, the destructive blocklist, and the audit-log writer all ship — they're enforced inside `peek-mcp` and observable via `~/.peek/audit.log`. The cross-process IPC that lets `execute_action` actually fire a click in the browser (`LocalSocketHostBridge`) is **not yet wired**; calling `execute_action` against alpha.10 returns the `bridge not wired in this MCP process` error. Track the bridge work via [issues on the rrweb-stack repo](https://github.com/Cubenest/rrweb-stack/issues).
99
+
91
100
  ## Database
92
101
 
93
102
  `~/.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.
@@ -101,8 +110,8 @@ For consumers building tooling on top of peek:
101
110
  ```ts
102
111
  import { generatePlaywrightRepro } from '@peekdev/mcp/mcp/playwright-repro';
103
112
  import { loadSessionEvents } from '@peekdev/mcp/mcp/event-blobs';
104
- import { openDb } from '@peekdev/mcp/db';
105
- import { startNativeHost } from '@peekdev/mcp/native-host';
113
+ import { openDb, peekHomeDir } from '@peekdev/mcp/db';
114
+ import { buildManifest, installManifests } from '@peekdev/mcp/native-host';
106
115
  ```
107
116
 
108
117
  These are the subpath exports the `@peekdev/cli` package uses. API surface is small but stable.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@peekdev/mcp",
3
- "version": "0.1.0-alpha.11",
3
+ "version": "0.1.0-alpha.12",
4
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",