preflight

https://github.com/Alex-Kaff/claude-wrap-mcp

claude-wrap-mcp

Caution

Score 71 / 100 · 26 files read · 0 critical, 0 high, 5 medium, 4 low findings

Report 814e96e702e50c5c · first scanned 2026-10-28 · scanned 3× · keyed to the exact package contents, so this link always shows this version

Listed in the Agent Census directory data

Subscores

credentials94
exfiltration92
execution68
injection100
obfuscation98
files100

100 is clean. Deductions come only from the cited findings below.

Findings

mediumCode contacts static.modelcontextprotocol.io, which the documentation never mentions
(package) · line 1 · rule M3
static.modelcontextprotocol.io
mediumCan run shell commands from code
src/session-manager.ts · line 118 · rule M1
ISessionManager { spawn(args: SpawnArgs): Promise<Session>; /** * Resolve a selector to a session. May be async: a tmux ses
mediumCan run shell commands from code
src/session.ts · line 20 · rule M1
rocess } from "node:child_process"; import { createRequire } from "node:module"; import path from "node:path"; import { snapshot
mediumCan run shell commands from code
src/tools/spawn.ts · line 104 · rule M1
on = await sessions.spawn(spawnArgs); const origin = session.origin === "windowed" ? "windowed" : "in-process";
mediumCan run shell commands from code
test/fakes.ts · line 207 · rule M1
ry[] = []; async spawn(args: SpawnArgs): Promise<Session> { this.spawnCalls.push(args); const id = `fake-${this.session
low1 binary file(s) were not parsed (static text analysis only)
(package) · line 1 · rule L3
1 binary files
lowReads named environment variables (normal for API keys; listed in the permission summary)
src/logger.ts · line 15 · rule L1
threshold = LEVELS[(process.env.CLAUDE_WRAP_MCP_LOG as Level) ?? "info"] ?? LEVELS.info; function emit(level: Level, msg: string,
lowReads named environment variables (normal for API keys; listed in the permission summary)
src/session-manager.ts · line 466 · rule L1
try { if (process.env["CLAUDE_WRAP_TMUX_ON_EXIT"] !== "kill") { const left = this.manager.detachAll(); i
lowReads named environment variables (normal for API keys; listed in the permission summary)
test/print-e2e.test.ts · line 11 · rule L1
"; const ENABLED = process.env.CLAUDE_WRAP_INTEGRATION === "1"; const MODEL = process.env.CLAUDE_WRAP_TEST_MODEL || "claude-haiku

Permission surface

Network endpoints
github.comimg.shields.iokeepachangelog.commodelcontextprotocol.iosemver.orgstatic.modelcontextprotocol.iowww.npmjs.com
Environment read
CLAUDE_WRAP_INTEGRATIONCLAUDE_WRAP_MCP_LOGCLAUDE_WRAP_TEST_MODELCLAUDE_WRAP_TMUX_ON_EXIT
Shell execution
yes — code or scripts can run shell commands
Install hooks
none
Credential material
Reads named environment variables (normal for API keys; listed in the permission summary)

Provenance

Source
GitHub
Repository
Alex-Kaff/claude-wrap-mcp
Owner
Alex-Kaff
Stars
0
Forks
0
Repo created
2026-06-01
Last push
2026-10-14
License
MIT

Badge for the author

Preflight grade

[![Preflight: Caution](https://preflight.orbitaldeskllc.com/badge/814e96e702e50c5c.svg)](https://preflight.orbitaldeskllc.com/b/814e96e702e50c5c)

The badge links back to this report and updates if the package is re-scanned at a new version.

Watch this package

Interest list only. We store the address and this report link, nothing else. No mail is sent in v1.

Share this report: https://preflight.orbitaldeskllc.com/r/814e96e702e50c5c