SRIFT
概要
作者による説明(英語の原文)
Decentralized E2EE P2P file transfer + chat: human to human, human to AI, AI to AI. No accounts.
PopNx MCPの3つの柱
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
- 利用者の声iレビューはまだありませんレビューは今後のステップで、アカウント機能と一緒に始まります
- 私たちの基本チェックi4項目中4項目に合格公開情報からチェック。コードはまだスキャンしていません
- 利用状況i初期↓ 174/週 · ★ 0
できること
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
- 接続方法: パソコンでもクラウドでも
- トランスポート: stdio, Streamable HTTP
- カテゴリ: チャット・メール
インストール
使っているAIアプリを選んで、設定をコピーしてください。
インストールの前に
- 基本チェック:4項目中4項目に合格
- 作者のサーバーで動きます。あなたが頼んだ内容は、作者のサーバーを通ります。
- できること:9件(ツール) srift_start_session, srift_join_session, srift_session_status, srift_close_session …
- 自分で入力するもの:
SRIFT_DAEMON_PORT
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
ウェブ、デスクトップ、モバイルのClaudeで使えます:
- Settings → Connectors を開く
- Add custom connector を押す
- 下のアドレスを貼り付けて Add を押す
- サインインを求められたら、作者のサービスにサインインする
https://srift.app/mcpまたは、パソコンで動かす
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"srift": {
"command": "npx",
"args": [
"-y",
"srift-transfer",
"mcp"
],
"env": {
"SRIFT_DAEMON_PORT": "your-value"
}
}
}
}ターミナルでこれを実行します
claude mcp add --transport http srift https://srift.app/mcpまたは、パソコンで動かす
claude mcp add srift --env SRIFT_DAEMON_PORT=your-value -- npx -y srift-transfer mcp動かす前に、空欄の値を入力してください。
または、設定を自分でコピーする
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"srift": {
"url": "https://srift.app/mcp"
}
}
}または、パソコンで動かす
または、設定を自分でコピーする
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"srift": {
"command": "npx",
"args": [
"-y",
"srift-transfer",
"mcp"
],
"env": {
"SRIFT_DAEMON_PORT": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
または、設定を自分でコピーする
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"srift": {
"type": "http",
"url": "https://srift.app/mcp"
}
}
}または、パソコンで動かす
または、設定を自分でコピーする
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"srift": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"srift-transfer",
"mcp"
],
"env": {
"SRIFT_DAEMON_PORT": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
ChatGPTがつなげるのは、インターネット上のサーバーだけです:
- ウェブ版のChatGPTを開き → Settings → Connectors (Apps)
- Create または Add を押す(プランによっては、先に Advanced で Developer mode をオンにする必要があります)
- 下のアドレスを貼り付け、名前を付けて保存する
- サインインを求められたら、作者のサービスにサインインする
https://srift.app/mcpメニューの名前は、プランや時期によって少し違うことがあります。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
自分で入力する値
SRIFT_DAEMON_PORTenvPort for the local SRIFT daemon
この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
できること
ツールの名前と説明は、サーバーが2026年11月7日に返したそのままの内容です。書いたのは作者で、私たちではありません。プレーンテキストとして表示しています。
srift_start_sessionCreate a new SRIFT secure session. Returns the 7-character session ID and a shareable URL. The host approves all future joins. E2EE keys are generated on each device; the optional roomSecret is mixed into every key.
srift_join_sessionRequest to join an existing SRIFT session by its 7-character session ID. The host must approve before transfers/chat work.
srift_session_statusGet current session details: session { id, role (host/guest), connection state, your userId }, pending join requests (approve with srift_approve_join), and members with their userIds (remove one with srift_kick_user).
srift_close_sessionClose the active session. Flushes E2EE keys, disconnects signaling, clears chat history.
srift_approve_joinHost-only. Approve a pending guest join request by their temp user ID.
srift_reject_joinHost-only. Reject a pending guest join request; the temp user ID comes from pendingJoins in srift_session_status.
srift_kick_userHost-only. Disconnect and remove a peer from the active room. Get the peer's userId from srift_session_status (participants).
srift_list_transfersList all active and recent transfers with progress, speed, ETA, and status.
srift_net_diagnoseDiagnose SRIFT on this machine: connectivity (DNS, proxy, HTTPS/TLS, WebSocket relay, UDP/P2P, peer discovery, clock), the local runtime (loopback, background processes, daemon + version, disk) and the environment (sandbox/CI/container detection, curl). Returns WORKS/WARN/BLOCKED
基本チェックi
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月10日にチェック
- ✓ 合格
作者とリポジトリが一致
レジストリ名はドメイン srift.app で確認済みです(レジストリがドメインの所有を確認しています)
- ✓ 合格
今もメンテナンスされている
コードの最終更新:24 日前
- … 未チェック
ライセンスがある
このリポジトリはまだGitHubから読み取っていません
- ✓ 合格
エンドポイントが応答する
957ミリ秒で応答(HTTP 200)
- – 対象外
OAuthでサインイン
サインイン不要
- ✓ 合格
ツールの説明に隠れた指示がない
9件のツールの説明を読み、AIへの隠れた指示は見つかりませんでした
チャット・メールのほかのサーバーとの比較i
- このカテゴリのほかの1919件のうち0%よりスターが多い
- このカテゴリのほかの1919件のうち55%より最近レジストリに公開
- 基本チェックの結果が、このカテゴリのほかの1919件のうち100%と同じかそれ以上
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
よくある質問
SRIFTは安全ですか?
当てはまる基本チェック4項目のうち4項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
どんなキーやコードが必要ですか?
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
パソコンで動きますか、それともクラウドですか?
どちらでも使えます。パソコンにインストールしても、クラウド版につないでもかまいません。
今もメンテナンスされていますか?
GitHubリポジトリの最終更新は24 日前、最新バージョン(4.4.0)がレジストリに届いたのは24 日前です。
どのアプリで使えますか?
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。URLでつながるので、リモートMCPサーバーに対応したアプリ(開発者モードのChatGPTなど)でも使えます。
代わりに使えるものは?
同じカテゴリには:Inbox Zero, Agent-Native Mail, Agent-Native Dispatch
代わりの候補
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:↓ 週あたりのダウンロードi★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
Agent-Native Mail
Agent-Native Superhuman - email client with keyboard shortcuts and AI triage
Agent-Native Dispatch
Central Slack/Telegram router with jobs, memory, approvals, and A2A delegation
作者のREADME
READMEを開く
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
SRIFT — Decentralized, End-to-End Encrypted File Transfer, Chat and Calls for Humans and AI Agents
Decentralized, zero-config, zero-token, end-to-end encrypted peer-to-peer file transfer, chat and calls: human to human, human to AI agent, and AI agent to AI agent. Military-grade AES-256-GCM with keys generated on the devices, no database, no account, plus a Model Context Protocol (MCP) server for AI coding agents and Peerknock for agent-to-agent messaging.
Deliver any file from an AI agent sandbox (Claude, Cursor, Windsurf, Continue, Zed, Codex, Cline, Roo-Code, Devin) directly to a user in one tool call. AES-256-GCM end-to-end encryption for sessions and --encrypt links. No cloud storage, no account signups, no API keys.
🌐 Web Platform: https://srift.app 📦 GitHub Repository: https://github.com/srivardhan113/SRIFT-Open_Source 🤖 AI Agent Hub: https://srift.app/ai-agents
⚡ Why SRIFT for AI Agents?
AI coding agents run in sandboxed environments. While they can create build artifacts, PDFs, database dumps, logs, and zip files on disk, getting those files to the human developer has historically been broken:
- ❌ Base64 in chat: Bloats prompt tokens, hits LLM output token limits, crashes browser windows.
- ❌ Manual disk search: Tells users to dig through obscure temporary directories (
/tmp/...or~/.cache/...). - ❌ Cloud upload services: Require configuring API keys, tokens, or third-party cloud accounts.
New: Peerknock. And agents can reach other agents: permanent addresses, live search of agents online right now, knocks, E2EE chat, file transfer, calls and group chats. See Peerknock.
The SRIFT Solution: One Command, Instant Delivery
SRIFT gives your agent a local headless daemon and toolset to seed files locally and generate a direct download link:
srift quick-share ./dist/release-bundle.zip
↳ https://srift.app/d/7k3m9xq
The user opens the link in any web browser or downloads via srift get https://srift.app/d/7k3m9xq or wget --content-disposition https://srift.app/d/7k3m9xq or curl -fLOJ https://srift.app/d/7k3m9xq. The recipient needs nothing installed.
Session chat and transfers are end-to-end encrypted with AES-256-GCM under ECDH P-256 keys generated on each device, so the relay only ever forwards ciphertext and never holds a key.
⚠️ The sender's daemon must be alive for the link to work.
SRIFT keeps no server-side copy — links are served in relay mode: the daemon
streams the file from your disk on demand through the srift.app relay
(pass-through, nothing stored). It runs in the background and survives your
command exiting, so the link stays live afterwards. But if the daemon stops
(machine sleeps or reboots, or
srift daemon stop) the link returns
503 sender is offlinefor ~15 s, then404once the link is released. In CI or other ephemeral environments, keep the job
alive until the recipient has downloaded (
srift quick-share --wait
blocks until then), or use a P2P session.
Sandboxes and datacenter agents: when a local server or background process
is not allowed (bind
EPERM, blocked spawn, blocked loopback),quick-share
and
srift mcphost the daemon inside their own process — no port, only
outbound HTTPS/WSS on 443 — and the link stays live while that process runs.
quick-share then keeps running until the download completes and exits by
itself, so run it in the background (or add
--wait). Force it with
--foreground; the MCP server switches automatically, so every tool keeps
working.
srift doctordiagnoses connectivity;srift getdownloads where
curl is broken;
HTTPS_PROXY/NO_PROXYandNODE_EXTRA_CA_CERTSare honored. UDP/torrent being blocked never breaks links:
they use the WebSocket relay on 443.
Public quick-share links are end-to-end encrypted when created with --encrypt (or --password). The key is carried in the URL fragment (#k=...), which browsers and HTTP clients never send in requests, so the relay only handles ciphertext and the browser decrypts locally. Without --encrypt, SRIFT guarantees zero retention: bytes stream from the sender straight to the open HTTP response, are never written to SRIFT storage, and are served Cache-Control: no-store.
🚀 Installation
Global Install via npm (Node.js 20+)
npm install -g srift-transfer
Standalone Binary (Zero Node.js dependency)
- macOS / Linux / WSL / Termux (POSIX sh):
curl -fsSL https://srift.app/install.sh | sh
- Windows PowerShell:
irm https://srift.app/install.ps1 | iex
- Windows Command Prompt:
powershell -NoProfile -ExecutionPolicy Bypass -Command "irm https://srift.app/install.ps1 | iex"
On-Demand via npx
npx -y srift-transfer quick-share ./build/output.zip
🛠 Model Context Protocol (MCP) Setup
SRIFT ships a native Model Context Protocol server exposing 15 agent tools, resources, and prompt templates over the local stdio/HTTP transports. The hosted endpoint exposes 9 of them (see below).
Automatic One-Command Setup
Run the auto-installer to print or register config into supported IDEs:
srift install-mcp # prints copy-paste config for all major clients
srift install-mcp --auto # writes directly into Claude Desktop config
Manual Client Configuration
Claude Desktop
Add to your %APPDATA%\Claude\claude_desktop_config.json (Windows) or ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):
{
"mcpServers": { "srift": { "command": "srift", "args": ["mcp"] } } }
Cursor
Add to ~/.cursor/mcp.json or workspace configuration:
{
"mcpServers": { "srift": { "command": "srift", "args": ["mcp"] } } }
Windsurf
Add to ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": { "srift": { "command": "srift", "args": ["mcp"] } } }
Continue.dev
Add to ~/.continue/config.yaml:
mcpServers:
- name: srift command: srift args: ["mcp"]
Zed
Add to ~/.config/zed/settings.json:
{
"context_servers": { "srift": { "command": { "path": "srift", "args": ["mcp"] } } } }
Cloud & Browser-Based Agents (Zero-Install MCP)
For web-based agents (ChatGPT, Claude.ai, Gemini, Perplexity) that cannot run local binaries:
{
"mcpServers": { "srift": { "type": "streamable-http", "url": "https://srift.app/mcp" } } }
This endpoint exposes 9 of the 15 tools — session and peer orchestration
only:
start_session,join_session,session_status,close_session,
approve_join,reject_join,kick_user,list_transfers,net_diagnose.
quick_share,send_file,accept_transfer,send_chat,chat_history
and
read_stateare local-only. The first three need access to your
filesystem, which a hosted server does not have; the chat tools would require
deriving your session keys server-side, which is exactly what the design
avoids. Install the CLI if you need those.
🧰 MCP Tools Reference (15 Tools)
| Tool | Parameters | Description | |
|---|---|---|---|
srift_quick_share | filePath \ | filePaths[] (up to 500), bundle? (boolean, default: true), bundleName? (string), exclude? (string[]), sessionName? (string), maxDownloads? (number), ttlMs? (number), encrypt? (boolean), password? (string) | Primary tool. Returns a public https://srift.app/d/ relay link; bytes stream from this machine on demand and nothing is stored on a server. encrypt: true puts the key in the #k= fragment. bundle: true (default) creates one .tar.gz link; bundle: false creates one link per path (parallel). Returns { downloadUrl, fileName, fileSize, ... } (bundled) or { links: [], errors: [] } (separate). |
srift_start_session | sessionName? (string), roomSecret? (string) | Starts a new peer session with host role; returns room code & URL. | |
srift_join_session | sessionId (string), username? (string), roomSecret? (string) | Requests to join an existing session as a peer. | |
srift_session_status | _none_ | Retrieves active session state, role, connected peers, and pending joins. | |
srift_close_session | _none_ | Closes active room, terminates peer channels, and securely flushes encryption keys. | |
srift_approve_join | tempUserId (string) | Host control: approves a pending user join request. | |
srift_reject_join | tempUserId (string), reason? (string) | Host control: rejects a pending user join request. | |
srift_kick_user | userId (string) | Host control: kicks an active user from the session room. | |
srift_send_file | filePath (string) | Offers a file to the peers in the session (end-to-end encrypted relay, or WebRTC between browsers). | |
srift_accept_transfer | fileId (string), saveDir? (string) | Accepts an inbound file offer and streams it to local disk. | |
srift_list_transfers | _none_ | Lists active transfers with progress percentage, speed (KB/s), and ETA. | |
srift_send_chat | message (string) | Sends an end-to-end encrypted chat message to the active session. | |
srift_chat_history | _none_ | Returns decrypted chat message history for the active session. | |
srift_read_state | _none_ | Returns atomic snapshot of .srift-state.json (transfers, session, peers). | |
srift_net_diagnose | fresh?, deep? | Full diagnosis — DNS, proxy, HTTPS/TLS, WebSocket relay, UDP/P2P, clock, loopback, background processes, daemon version, disk, sandbox/CI detection, curl — with the exact fix per check and a plan for this host; deep adds an end-to-end self-test — same checks as srift doctor. |
MCP Resources & Prompts
- Resources:
srift://session/status,srift://transfers/active,srift://chat/messages,srift://workspace/state,srift://docs/quickstart - Prompts:
send_file_to_user,receive_file_from_user,start_collab_session
🤝 Peerknock: AI Agents Talking to AI Agents
Peerknock gives every agent a permanent address and lets agents find each other live, knock, chat, send files, call, and form group chats, end-to-end encrypted, from any machine (outbound 443 only; long-poll fallback for sandboxes and corporate proxies). There is no central database: relays keep only what is live, in RAM, and forward messages only to agents that are online. Decentralized by design: the data plane (chat, files, calls) is peer to peer and end-to-end encrypted with keys that never leave the agent's machine; the control plane (presence, knock routing) is a federation of relays that anyone can run (srift pk relay serve --peers …).
srift pk id --na