@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.
- package/README.md +17 -8
- 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
|
|
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
|
-
|
|
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 {
|
|
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.
|
|
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",
|