S(

SEAL (sealnet-mcp)

Local MCP server for SEAL's end-to-end encrypted sharing: your agent hands files, folders or secrets to you or another agent as seals, asks you for a file or secret through a dialog or page, and runs commands with secrets kept out of its output. After pairing, the default delivery route sends a file to the user's SEAL inbox and returns a short handle to the model. Free up to 1 GB per seal.

📄 Files & office documentsReader submissionUpdated ?By SEAL IncLicense: Proprietary (npm: UNLICENSED)Auth: None to start (the server makes the agent's own key on first run); optional pairing with your SEAL inboxDocs ↗

Test results

Last passed 2026-10-22
Claude CodePassed2026-10-22 · install, connect, tools, agent taskTested with Claude Code 2.1.296 · sealnet-mcp 0.10.0 · connected in 3.2s
CursorPassed2026-10-22 · install, connect, tools, agent taskTested with Cursor CLI 2026.10.22-27dcf5f · sealnet-mcp 0.10.0 · connected in 2.7s
Claude DesktopNot tested yet—
ChatGPT (Codex)Passed2026-10-22 · install, connect, tools, agent taskTested with Codex CLI 0.162.0-alpha.17.2 · sealnet-mcp 0.10.0 · connect time not recorded

Server package tested: sealnet-mcp 0.10.0 (npm, Node v20.19.2; resolved 2026-10-22)

Direct and key dependencies as resolved: @modelcontextprotocol/sdk 1.32.1 · argon2 0.44.0 · clipboardy 5.3.2 · commander 14.0.3 · express 5.3.0 · zod 4.6.7 · zod-to-json-schema 3.25.2

All 136 resolved dependencies
@epic-web/invariant==1.0.0
@hono/node-server==2.1.5
@modelcontextprotocol/sdk==1.32.1
@napi-rs/keyring==2.1.2
@napi-rs/keyring-linux-x64-gnu==2.1.2
@phc/format==1.0.0
@sec-ant/readable-stream==0.4.1
@sindresorhus/merge-streams==4.0.0
accepts==2.0.0
ajv==8.20.0
ajv-formats==3.0.1
argon2==0.44.0
body-parser==2.4.0
bytes==3.1.2
call-bind-apply-helpers==1.0.2
call-bound==1.0.4
clipboard-image==0.1.0
clipboardy==5.3.2
commander==14.0.3
content-disposition==2.0.1
content-type==1.0.5, 2.1.0
cookie==0.7.2
cookie-signature==1.2.2
cors==2.8.6
cross-env==10.1.0
cross-spawn==7.0.6
crypto-random-string==4.0.0
debug==4.4.3
depd==2.0.0
dunder-proto==1.0.1
ee-first==1.1.1
encodeurl==2.0.0
es-define-property==1.0.1
es-errors==1.3.0
es-object-atoms==1.1.2
escape-html==1.0.3
escape-string-regexp==5.0.0
etag==1.8.1
eventsource==3.0.7
eventsource-parser==3.1.1
execa==5.1.1, 9.6.1
express==5.3.0
express-rate-limit==8.7.1
fast-deep-equal==3.1.3
fast-uri==3.1.9
figures==6.1.0
finalhandler==2.1.1
forwarded==0.2.0
fresh==2.0.0
function-bind==1.1.2
get-intrinsic==1.3.0
get-proto==1.0.1
get-stream==6.0.1, 9.0.1
gopd==1.2.0
has-symbols==1.1.0
hasown==2.0.4
hono==4.13.13
http-errors==2.0.1
human-signals==2.1.0, 8.0.1
iconv-lite==0.7.3
inherits==2.0.4
ip-address==10.7.4
ipaddr.js==1.9.1
is-docker==3.0.0
is-inside-container==1.0.0
is-plain-obj==4.1.0
is-promise==4.0.0
is-stream==2.0.1, 4.0.1
is-unicode-supported==2.1.0
is-wayland==0.1.0
is-wsl==3.1.1
is64bit==2.0.0
isexe==2.0.0
jose==6.2.13
json-schema-traverse==1.0.0
json-schema-typed==8.0.2
macos-version==6.0.0
math-intrinsics==1.1.0
media-typer==1.1.1
merge-descriptors==2.0.0
merge-stream==2.0.0
mime-db==1.54.0
mime-types==3.0.2
mimic-fn==2.1.0
ms==2.1.3
negotiator==1.1.0
node-addon-api==8.9.2
node-gyp-build==4.8.4
npm-run-path==4.0.1, 6.0.0
object-assign==4.1.1
object-inspect==1.13.4
on-finished==2.4.2
once==1.4.0
onetime==5.1.2
parse-ms==4.0.0
parseurl==1.3.3
path-key==3.1.1, 4.0.0
path-to-regexp==8.4.2
pkce-challenge==5.0.1
powershell-utils==0.2.1
pretty-ms==9.3.1
proxy-addr==2.0.8
qs==6.16.1
range-parser==1.3.0
raw-body==3.0.2
require-from-string==2.0.2
router==2.2.0
run-jxa==3.0.0
safer-buffer==2.1.2
semver==7.8.5
send==1.2.1
serve-static==2.2.1
setprototypeof==1.2.0
shebang-command==2.0.0
shebang-regex==3.0.0
side-channel==1.1.1
side-channel-list==1.0.1
side-channel-map==1.0.1
side-channel-weakmap==1.0.2
signal-exit==3.0.7, 4.1.0
statuses==2.0.2
strip-final-newline==2.0.0, 4.0.0
subsume==4.0.0
system-architecture==0.1.0
toidentifier==1.0.1
type-fest==1.4.0, 2.19.0
type-is==2.1.0
unicorn-magic==0.3.0
unique-string==3.0.0
unpipe==1.0.0
vary==1.1.2
which==2.0.2
wrappy==1.0.2
yoctocolors==2.2.0
zod==4.6.7
zod-to-json-schema==3.25.2

Captured with: npm ls --all --json in the npx env.

Full result per app: Does it work with Claude Code? · Does it work with Cursor? · Does it work with ChatGPT (Codex)?

Protocol: starts, 8 tools listed · 2026-10-22 · connected in 1.0s
🧪 Test-box note: Run in the box with no pairing (the server made its own agent key on first run); the submitter's inbox-pairing step needs a person and was not tested.

Real test

Passed

One run from our records. When two runs share a date, we show a failure if there is one.

Client
ChatGPT (Codex) · Codex CLI 0.162.0-alpha.17.2
Date
Oct 22, 2026
The task we gave
Using only the sealnet-mcp MCP tools: share the file /workspace/timmy/harness/sandbox/seal/note.txt as a SEAL link (no pairing, default free tier, the default handoff mode is fine). Then list the seals this server created to confirm the new one is there, then revoke it with the same tools. Reply with the seal's handle and whether the revoke succeeded.
What it promised
details not recorded for this run
What happened

Tool calls:

sealnet-mcp:seal_sharesealnet-mcp:seal_listsealnet-mcp:seal_revoke

Tool result

{"content": [{"type": "text", "text": "{\n  \"handle\": \"h_yZAVOPq8CMn0\",\n  \"receipt\": \"The seal link is in /tmp/seal-mcp/handoff-h_yZAVOPq8CMn0.txt (mode 0600, removed automatically later). Give it to the recipient. Anyone who can read files on this machine as this user, this agent included, can read it. In a cloud or container session prefer mode=forward to the recipient\u2019s address. Offer the user seal_pair: once their inbox is connected, files go there instead of a file on this machine.\",\n  \"handoff_channel\": \"file\",\n  \"expires_at\": \"2026-10-23T02:35:25.912Z\",\n  \"handoff_file\": \"/tmp/seal-mcp/handoff-h_yZAVOPq8CMn0.txt\"\n}"}], "structured_content": {"handle": "h_yZAVOPq8CMn0", "receipt": "The seal link is in /tmp/seal-mcp/handoff-h_yZAVOPq8CMn0.txt (mode 0600, removed automatically later). Give it to the recipient. Anyone who can read files on this machine as this user, this agent included, can read it. In a cloud or container session prefer mode=forward to the recipient\u2019s address. Offer the user seal_pair: once their inbox is connected, files go there instead of a file on this machine.", "handoff_channel": "file", "expires_at": "2026-10-23T02:35:25.912Z", "handoff_file": "/tmp/seal-mcp/handoff-h_yZAVOPq8CMn0.txt"}}

Agent reply

Seal handle: `h_yZAVOPq8CMn0`. It appeared as active in the server’s seal list, and the revoke succeeded (`revoked: true`).
Verdict
Passed

Install

claude mcp add sealnet-mcp -- npx -y sealnet-mcp@latest

Run in your terminal. This exact command is what our harness runs in Claude Code; see the results above.

{
  "mcpServers": {
    "sealnet-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "sealnet-mcp@latest"
      ]
    }
  }
}

Save as .cursor/mcp.json. This exact config is what our harness runs in Cursor; see the results above.

{
  "mcpServers": {
    "sealnet-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "sealnet-mcp@latest"
      ]
    }
  }
}

Add to claude_desktop_config.json and restart Claude Desktop. Tested on the Linux beta; see the results above.

[mcp_servers.sealnet-mcp]
command = "npx"
args = ["-y", "sealnet-mcp@latest"]

Add to ~/.codex/config.toml (shared by the ChatGPT (Codex) CLI and the ChatGPT desktop app; Codex runs inside the ChatGPT desktop app). Tested with the ChatGPT (Codex) CLI bundled in the ChatGPT desktop app; see the results above.

Not connecting? Troubleshooting: Claude Code · Cursor · Claude Desktop · ChatGPT (Codex)

Test history

DateCheckResultVersions tested
2026-10-22Protocol (direct stdio)Protocol: starts, 8 tools listedsealnet-mcp 0.10.0 · server reported v0.10.0
2026-10-22Claude CodePassed
install, connect, tools, agent task
Claude Code 2.1.296 · sealnet-mcp 0.10.0
2026-10-22CursorPassed
install, connect, tools, agent task
Cursor CLI 2026.10.22-27dcf5f · sealnet-mcp 0.10.0
2026-10-22ChatGPT (Codex)Passed
install, connect, tools, agent task
Codex CLI 0.162.0-alpha.17.2 · sealnet-mcp 0.10.0

Tools seen by our harness (8)

seal_shareseal_requestseal_pairseal_openseal_inboxseal_runseal_listseal_revoke
Sponsors