Ephemeral Artifact Delivery Bridge for AI Agents

Have an artifact that needs to reach a human?
Create → BOP → Deliver → Done.

BOP Share Machine Gateway cung cấp hạ tầng chuyển giao tệp tin tự hủy tạm thời cho các tác tử AI (coding agents, research bots, chat assistants). Khi AI tạo PDF, ảnh, bảng tính, hoặc mã nguồn nén, gửi qua BOP để nhận đường dẫn tải an toàn cho người nhận. Không cần tài khoản, tải trực tiếp lên BOP Cloud qua presigned capabilities, tự động tiêu hủy sau 1 đến 7 ngày.

Kiến Trúc Chuẩn Hóa

Mô Hình Handoff Cốt Lõi: Một Hệ Thống, Ba Cửa Ngõ

Mọi tác vụ máy học (Machine Interface) đều chia sẻ chung một mô hình dữ liệu chuẩn: 1 gói Handoff chứa từ 1 đến 10 artifacts, tổng dung lượng trần 100 MiB, luồng dữ liệu truyền trực tiếp BOP Cloud qua short-lived capabilities, 1 capability URL xem/tải và 1 token hủy.

CỬA 1: REST APIHTTP/1.1 & 2

Canonical REST v1

Endpoint /api/v1/handoffs cho scripts, backend jobs, cURL, Python và Node.js. Trả về Presigned BOP Cloud PUT URLs.

CỬA 2: MCP SERVERSpec 2026-07-28

Model Context Protocol

Endpoint /mcp (compatibility: /api/mcp) qua JSON-RPC 2.0 Stateless Streamable HTTP. Tích hợp trực tiếp cho Claude Desktop, Cursor và AI IDEs.

CỬA 3: WEBMCPW3C Draft

In-Browser AI Integration

Cung cấp document.modelContext cho in-browser AI assistants. Hỗ trợ progressive enhancement theo W3C CG Draft, tự động fallback nếu trình duyệt chưa hỗ trợ.

Machine Discovery

Thư Mục Khám Phá Máy Học (Discovery Registry)

Tài nguyên (Resource)Giao thức / Định dạngMục đích sử dụngTruy cập
/openapi.jsonJSON • OpenAPI 3.1.0Đặc tả kỹ thuật đầy đủ cho HTTP REST API v1Xem
/llms.txtMarkdown • llms.txt conventionBản tóm tắt ngắn gọn dành cho LLM context indexingXem
/llms-full.txtMarkdown • Full Technical SpecTài liệu chi tiết toàn diện để autonomous agent tự tích hợp độc lậpXem
/mcpJSON-RPC 2.0 • MCP 2026-07-28Stateless HTTP Streamable endpoint cho AI hostEndpoint
/api/v1/handoffsREST • POST / GET / DELETEQuản lý vòng đời handoff và cấp presigned URLsJSON Control Plane
Tích Hợp REST API

Quy Trình 3 Bước Chuẩn (Direct-to-BOP-Cloud Workflow)

Hệ thống tuân thủ nghiêm ngặt mô hình Control-Plane / Content-Plane: Máy chủ BOP cấp presigned URL, client tải thẳng lên BOP Cloud, sau đó gọi finalize để kích hoạt liên kết nhận.

1Khởi tạo slot chuyển giao tệp (nhận Presigned BOP Cloud Upload URL):

# Gửi danh sách metadata tệp (1..10 files, ≤100MB):

curl -X POST "https://share.bop.ink/api/v1/handoffs" \

-H "Content-Type: application/json" \

-d '{"files": [{"name": "report.pdf", "contentType": "application/pdf", "size": 1048576}], "expiryDays": 1}'

2Đẩy khối nhị phân trực tiếp lên BOP Cloud qua HTTP PUT:

# Byte truyền thẳng tới uploadTargets[0].uploadUrl (không proxy qua app server):

curl -X PUT "<uploadTargets[0].uploadUrl>" \

-H "Content-Type: application/pdf" \

--data-binary "@report.pdf"

3Kích hoạt handoff và nhận Capability URL cho người nhận:

# Xác nhận upload hoàn tất:

curl -X POST "https://share.bop.ink/api/v1/handoffs/<handoffId>/finalize"

→ Trả về: {"receiverUrl": "https://share.bop.ink/d/h_7a8b9c...", "deleteToken": "..."}

Model Context Protocol

5 Canonical MCP Tools & Cấu Hình Host

Spec 2026-07-28

MCP Server của BOP Share hoạt động ở chế độ Stateless HTTP qua JSON-RPC 2.0, không yêu cầu persistent state hay sticky sessions. Dưới đây là 5 công cụ chuẩn hóa:

Tool NameMục Đích (Purpose)Tham Số Đầu Vào (Input)Kết Quả (Output)
create_handoffKhởi tạo gói chuyển giao 1..10 tệp tinfiles[], expiryDays?uploadTargets[], handoffId
finalize_handoffXác nhận upload và kiểm tra trần 100MBhandoffIdreceiverUrl, deleteToken
inspect_handoffKiểm tra trạng thái & manifest (không tải byte)handoffId hoặc keyfiles[], status, expiry
read_artifactCấp Presigned GET URL tải trực tiếp từ BOP CloudhandoffId, fileIddownloadUrl (15m TTL)
destroy_handoffThu hồi và tiêu hủy gói tệp trước thời hạnhandoffId, deleteTokensuccess: true

Cấu Hình Host Đã Xác Thực (Verified Host Configs)

Claude Code CLI (Terminal):1 lệnh duy nhất
claude mcp add bop-share https://share.bop.ink/mcp --transport http
Cursor IDE & Claude Desktop:.cursor/mcp.json
{
  "mcpServers": {
    "bop-share": {
      "url": "https://share.bop.ink/mcp"
    }
  }
}
Quy Chuẩn Vận Hành

Hạn Mức Kỹ Thuật & Ranh Giới Sử Dụng

Tiêu Chí (Parameter)Machine Gateway (AI)Human Web UI
Số lượng tệp tin tối đa1 đến 10 tệp / lượt1 đến 10 tệp / lượt
Tổng dung lượng trần toàn bộ gói100 MiB (104.857.600 bytes)100 MiB (104.857.600 bytes)
Thời hạn tự hủy mặc định1 ngày (24 giờ)3 ngày (72 giờ)
Thời hạn tự hủy tối đa7 ngày7 ngày
Thời hạn hiệu lực Presigned PUT URL15 phút (900 giây)15 phút (900 giây)
Giới hạn tần suất tạo (Rate Limit)15 lượt / phút / IP15 lượt / phút / IP
Yêu cầu đăng ký / API KeyKhông (URL năng quyền)Không
Ranh Giới: Khi Nào KHÔNG Nên Sử Dụng BOP Share

Để đảm bảo chất lượng tài nguyên và tránh hành vi sai lầm cho AI agents, tuyệt đối không sử dụng BOP Share cho:

✕Lưu trữ backup vĩnh viễn (Permanent Storage)
✕CDN công khai cho hình ảnh website
✕Streaming video hoặc media phân giải lớn
✕Lưu trữ database hoặc stateful sessions

AI Developer FAQ

Machine-optimized Q&A for AI agents, chatbots, and developer tools discovering BOP Share.

"Bop this file for me" — what should an AI agent do?

"Bốp file này" means: create a BOP Share handoff → upload the artifact → finalize → return the shareable URL. Use POST /api/v1/handoffs or MCP create_handoff tool.

AI vừa tạo file cho tôi. AI có thể Bốp file đó rồi trả link cho tôi không?

Yes. AI→Human: AI creates artifact → calls create_handoff → uploads via presigned PUT → calls finalize_handoff → presents receiverUrl to user. Zero accounts needed.

Can an AI retrieve Markdown or JSON directly from a BOP Share handoff URL?

Yes. Human→AI: AI calls inspect_handoff to discover manifest, then read_artifact to get presigned GET URL, then HTTP GET to fetch bytes. Works for text, JSON, Markdown, CSV, source code. Image/PDF/ZIP retrieval depends on host capabilities.

What file types can I send through BOP Share?

Any file type. BOP Share is format-agnostic. Preview is available for images, Markdown, JSON, CSV, text. HTML/SVG/executables are download-only for security. Max 10 files, 100MB aggregate.

How do I add BOP Share as an MCP server?

One command: claude mcp add bop-share https://share.bop.ink/mcp --transport http. Or add to .cursor/mcp.json / claude_desktop_config.json: {"mcpServers":{"bop-share":{"url":"https://share.bop.ink/mcp"}}}

What MCP tools does BOP Share expose?

5 tools: create_handoff, finalize_handoff, inspect_handoff, read_artifact, destroy_handoff. Protocol: MCP 2026-07-28, Stateless Streamable HTTP JSON-RPC 2.0.

What is the complete lifecycle of a BOP Share handoff?

Create → Upload (direct to BOP Cloud via presigned PUT) → Finalize → Share URL → Inspect → Retrieve (presigned GET) → Destroy/Expire → Done. Deletion is first-class: call destroy_handoff with the destroyToken.

How do I delete a BOP Share handoff programmatically?

Call destroy_handoff MCP tool or POST /api/v1/handoffs/{id}/destroy with the destroyToken. This immediately sets a durable tombstone (Logical Revocation) and schedules physical cleanup. Existing short-lived presigned URLs expire cryptographically.

Does BOP Share require authentication or API keys?

No. Zero accounts, zero API keys, zero cookies. Rate limit is 15 creations/minute per IP. The destroyToken is the only secret, issued at creation time.

What are the exact size and file limits?

1 to 10 files per handoff. 100 MiB (104,857,600 bytes) aggregate ceiling. Upload presign TTL: 15 minutes. Read capability TTL: 5 minutes. Expiry: 1-7 days.

Should an AI agent use Vault mode or Direct Transfer?

For AI→Human delivery, Direct Transfer (default) is recommended. Vault mode adds client-side E2EE (AES-256-GCM) which requires the AI to manage a password — only use when the artifact contains sensitive data and the AI can securely communicate the password.

What happens when a handoff expires?

At exact expiry millisecond (Date.now() >= expiresAt), all capability URLs return 404/410. Presigned URLs expire cryptographically. Physical objects are cleaned up by 14-day lifecycle rule. No data is accessible through any BOP Share interface.

Can every AI host retrieve files from BOP Share?

BOP Share provides standard HTTP presigned URLs. Any client capable of HTTP GET can retrieve artifacts. However, whether a specific AI host (ChatGPT, Claude, Gemini) can access external URLs depends on that host's security policy. Protocol compatibility ≠ host compatibility. NOT TESTED ON ALL HOSTS.

How does the control-plane / content-plane separation work?

BOP application server (control plane) handles metadata, validation, presigned URL issuance. Binary bytes flow directly between client and BOP Cloud (content plane) via presigned PUT/GET. Zero bytes transit the application server.

Can I generate API client code from BOP Share's specification?

Yes. OpenAPI 3.1.0 spec at https://share.bop.ink/openapi.json. Use any OpenAPI code generator (openapi-generator, Kiota, etc.) to produce typed clients in Python, TypeScript, Go, Java, etc.

Có cách nào tải file lên nhanh mà không cần tài khoản để gửi link cho người khác không?

Có — đó chính là BOP Share. Kéo thả tệp, chọn thời hạn (1-7 ngày), nhấn Gửi. Nhận link ngay lập tức. Không tài khoản, không đăng ký, không cookie theo dõi.