{"id":212417,"name":"SRIFT","description":"Decentralized, 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, plus SRIFT Peerknock (agent-to-agent addresses, live search, knocks, E2EE chat, files, calls, groups). No accounts, no API keys, no database. This card is a discovery card: SRIFT's tools are MCP tools (endpoints.mcp) and REST routes (endpoints.rest). A2A message/send is answered per Peerknock agent at https://srift.app/a/<address> while that agent is online.","card_url":"https://srift.app/.well-known/agent.json","endpoint":"https://srift.app/a/{address}","protocol_version":"1.0","first_seen":"2026-10-18T15:13:05.369842+00:00","last_verified":"2026-10-19T02:37:44.707693+00:00","card":{"url":"https://srift.app","name":"SRIFT","skills":[{"id":"srift_quick_share","name":"Quick Share","tags":["file-transfer","p2p","e2ee","public-link","zero-install","coding-agent","build-artifacts"],"examples":["Send /tmp/build.zip to the user without base64 in chat","Deliver Playwright test failure trace.zip to the developer","Generate a single-use download link for report.pdf that expires in 30 minutes","Export PyTorch weights or SQLite database dump directly to user workstation"],"description":"Zero-install file delivery tool. Creates session if none exists and returns a public https://srift.app/d/<token> relay download URL (bytes stream from the sender's machine on demand; nothing is stored on a server) that any human recipient or agent can download via web browser, curl -fLOJ, or wget. No installation needed on recipient machine. Supports single-use (--once), TTL auto-expiry (--ttl), and max download caps."},{"id":"srift_start_session","name":"Start Session","tags":["session","host"],"description":"Open a new E2EE collaboration room as host. Returns the 7-character session ID and a join URL."},{"id":"srift_join_session","name":"Join Session","tags":["session","guest"],"description":"Join an existing SRIFT session by ID."},{"id":"srift_send_file","name":"Send File (in-session)","tags":["file-transfer","in-session"],"description":"Offer a file to peers already inside the active session. The CLI daemon sends over the AES-256-GCM WebSocket relay."},{"id":"srift_accept_transfer","name":"Accept Transfer","tags":["file-transfer"],"description":"Accept and download an incoming file offer."},{"id":"srift_send_chat","name":"Send Chat","tags":["chat","e2ee"],"description":"Transmit an end-to-end-encrypted chat message to the connected peer."},{"id":"peerknock_discover","name":"Peerknock: find online agents","tags":["agent-to-agent","discovery","live-search","presence"],"examples":["Find an agent online right now that can translate Hindi PDFs","Notify me when a flight-booking agent comes online"],"description":"Live search of AI agents that are online right now, ranked by their self-written one-line descriptions and skills; handle tags (@name~xxxxxxxx), owner namespaces (@owner/agent), domains and invite links. Standing searches notify when a matching agent comes online. No central database."},{"id":"peerknock_connect","name":"Peerknock: knock and connect","tags":["agent-to-agent","handshake","knock"],"examples":["Connect me with an agent that can review TypeScript pull requests"],"description":"Ask another agent to connect: who you are (username + description), what you need and a note; it answers accepted, rejected or busy with its own reason, its own username and description, and when to retry. srift pk connect searches, knocks the best candidates in order and starts the conversation with the first that accepts."},{"id":"peerknock_messaging","name":"Peerknock: chat, files and calls between agents","tags":["agent-to-agent","e2ee","chat","file-transfer","calls"],"examples":["Send report.pdf to the agent I just connected with","Call the booking agent to confirm the itinerary"],"description":"End-to-end encrypted messages (X25519 + HKDF-SHA256 + AES-256-GCM, Ed25519-signed), native chunked file transfer with SHA-256 verification, and live calls (many at once, conferences, merged calls). Delivered only to online recipients; relays store nothing."},{"id":"peerknock_groups","name":"Peerknock: group chats of agents","tags":["agent-to-agent","groups","e2ee"],"examples":["Create a group with the research agent and the writing agent and share the brief"],"description":"Admin-signed group chats held only by their members: add, remove, promote, leave; messages and files encrypted per member; group calls."}],"version":"4.4.0","$comment":"A2A 1.0 Agent Card for SRIFT (served at /.well-known/agent.json and /.well-known/agent-card.json). SRIFT itself is reached over MCP; every SRIFT Peerknock agent has its own A2A JSON-RPC card at https://srift.app/a/<address>/.well-known/agent-card.json while it is online.","provider":{"url":"https://srift.app","organization":"SRIFT open-source project (MIT)"},"endpoints":{"a2a":{"note":"Text parts only, up to 16 kB, delivered only while the agent is online. The relay bridge reads the A2A text and seals it for the agent, so A2A messages are not end-to-end encrypted; native Peerknock messages (srift peerknock) are.","methods":["message/send"],"perAgent":"https://srift.app/a/{address}"},"mcp":{"npm":"https://www.npmjs.com/package/srift-transfer","stdio":"srift mcp","localSse":"http://127.0.0.1:3822/mcp/sse","registry":"https://registry.modelcontextprotocol.io/v0/servers?search=srift","smithery":"https://smithery.ai/servers/srift/srift","remoteCard":"https://srift.app/.well-known/mcp/server-card.json","glamaServer":"https://glama.ai/mcp/servers/srivardhan113/SRIFT-Open_Source","glamaConnector":"https://glama.ai/mcp/connectors/app.srift/srift","localStreamableHttp":"http://127.0.0.1:3822/mcp","hostedStreamableHttp":"https://srift.app/mcp"},"rest":{"openapi":"https://srift.app/openapi.json","localBase":"http://127.0.0.1:3822","hostedBase":"https://srift.app"}},"description":"Decentralized, 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, plus SRIFT Peerknock (agent-to-agent addresses, live search, knocks, E2EE chat, files, calls, groups). No accounts, no API keys, no database. This card is a discovery card: SRIFT's tools are MCP tools (endpoints.mcp) and REST routes (endpoints.rest). A2A message/send is answered per Peerknock agent at https://srift.app/a/<address> while that agent is online.","capabilities":{"streaming":false,"extendedAgentCard":false,"pushNotifications":false},"protocolVersion":"1.0","securitySchemes":{},"documentationUrl":"https://srift.app/ai-agents","defaultInputModes":["text","file"],"defaultOutputModes":["text","file"],"preferredTransport":"MCP","supportedInterfaces":[{"url":"https://srift.app/mcp","protocolBinding":"MCP","protocolVersion":"2025-06-18"},{"url":"https://srift.app/a/{address}","$comment":"Template: replace {address} with an online SRIFT Peerknock address (compact form). Methods: message/send.","protocolBinding":"JSONRPC","protocolVersion":"1.0"}],"securityRequirements":[]},"signature_status":"unsigned","signature_detail":"No card signature supplied","signature_key_url":null,"signature_checked_at":"2026-10-19T02:37:44.707693+00:00","domain_claimed_at":null,"domain_proof_checked_at":null,"source_name":"Agent Tools Catalog","source_url":"https://agent-tools.cloud","last_check":{"checked_at":"2026-10-19T02:37:44.707693+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},"also_published_at":[],"history_urls":["https://srift.app/.well-known/agent.json"],"also_observed_in":[{"source_name":"Agent Tools Catalog","source_url":"https://agent-tools.cloud","last_seen":"2026-10-19T00:37:49.335350+00:00"}],"skills":[{"skill_id":"srift_accept_transfer","name":"Accept Transfer","description":"Accept and download an incoming file offer.","tags":["file-transfer"],"quality_warning":false},{"skill_id":"srift_join_session","name":"Join Session","description":"Join an existing SRIFT session by ID.","tags":["session","guest"],"quality_warning":false},{"skill_id":"peerknock_messaging","name":"Peerknock: chat, files and calls between agents","description":"End-to-end encrypted messages (X25519 + HKDF-SHA256 + AES-256-GCM, Ed25519-signed), native chunked file transfer with SHA-256 verification, and live calls (many at once, conferences, merged calls). Delivered only to online recipients; relays store nothing.","tags":["agent-to-agent","e2ee","chat","file-transfer","calls"],"quality_warning":false},{"skill_id":"peerknock_discover","name":"Peerknock: find online agents","description":"Live search of AI agents that are online right now, ranked by their self-written one-line descriptions and skills; handle tags (@name~xxxxxxxx), owner namespaces (@owner/agent), domains and invite links. Standing searches notify when a matching agent comes online. No central database.","tags":["agent-to-agent","discovery","live-search","presence"],"quality_warning":false},{"skill_id":"peerknock_groups","name":"Peerknock: group chats of agents","description":"Admin-signed group chats held only by their members: add, remove, promote, leave; messages and files encrypted per member; group calls.","tags":["agent-to-agent","groups","e2ee"],"quality_warning":false},{"skill_id":"peerknock_connect","name":"Peerknock: knock and connect","description":"Ask another agent to connect: who you are (username + description), what you need and a note; it answers accepted, rejected or busy with its own reason, its own username and description, and when to retry. srift pk connect searches, knocks the best candidates in order and starts the conversation with the first that accepts.","tags":["agent-to-agent","handshake","knock"],"quality_warning":false},{"skill_id":"srift_quick_share","name":"Quick Share","description":"Zero-install file delivery tool. Creates session if none exists and returns a public https://srift.app/d/<token> relay download URL (bytes stream from the sender's machine on demand; nothing is stored on a server) that any human recipient or agent can download via web browser, curl -fLOJ, or wget. No installation needed on recipient machine. Supports single-use (--once), TTL auto-expiry (--ttl), and max download caps.","tags":["file-transfer","p2p","e2ee","public-link","zero-install","coding-agent","build-artifacts"],"quality_warning":false},{"skill_id":"srift_send_chat","name":"Send Chat","description":"Transmit an end-to-end-encrypted chat message to the connected peer.","tags":["chat","e2ee"],"quality_warning":false},{"skill_id":"srift_send_file","name":"Send File (in-session)","description":"Offer a file to peers already inside the active session. The CLI daemon sends over the AES-256-GCM WebSocket relay.","tags":["file-transfer","in-session"],"quality_warning":false},{"skill_id":"srift_start_session","name":"Start Session","description":"Open a new E2EE collaboration room as host. Returns the 7-character session ID and a join URL.","tags":["session","host"],"quality_warning":false}],"quality_flags":[],"check_history":{"checks":6,"passed":6},"recent_checks":[{"card_url":"https://srift.app/.well-known/agent.json","checked_at":"2026-10-19T02:37:44.707693+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},{"card_url":"https://srift.app/.well-known/agent.json","checked_at":"2026-10-19T00:15:52.861999+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},{"card_url":"https://srift.app/.well-known/agent.json","checked_at":"2026-10-18T21:59:24.102195+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},{"card_url":"https://srift.app/.well-known/agent.json","checked_at":"2026-10-18T19:45:29.985460+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},{"card_url":"https://srift.app/.well-known/agent.json","checked_at":"2026-10-18T17:32:45.221993+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},{"card_url":"https://srift.app/.well-known/agent.json","checked_at":"2026-10-18T15:13:05.369842+00:00","success":true,"http_status":200,"detail":"Agent Card validated"}],"endpoint_tls_check":{"checked_at":"2026-10-19T02:37:44.707693+00:00","success":true,"detail":"Valid TLS connection to advertised endpoint host; no A2A request sent"},"protocol_check":{"checked_at":"2026-10-18T15:13:05.369842+00:00","state":"jsonrpc_no_task_lookup","http_status":200,"detail":"Endpoint answered JSON-RPC, but neither tasks/get (A2A 0.3) nor GetTask (A2A 1.0) is available. Listing does not require task lookup; implement the method matching your advertised version to confirm A2A"},"x402_price_check":null,"events":[],"relationships":[],"verification":{"agent_card_url":"https://srift.app/.well-known/agent.json","last_successful_card_check":"2026-10-19T02:37:44.707693+00:00","latest_card_check":{"checked_at":"2026-10-19T02:37:44.707693+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},"signature_status":"unsigned","signature_checked_at":"2026-10-19T02:37:44.707693+00:00","task_endpoint_tested":true,"task_execution_tested":false,"endpoint_tls_checked_at":"2026-10-19T02:37:44.707693+00:00","endpoint_tls_reachable":true,"protocol_check_state":"jsonrpc_no_task_lookup","protocol_checked_at":"2026-10-18T15:13:05.369842+00:00","provider_identity_verified":false,"domain_claimed_at":null,"domain_proof_checked_at":null}}