{
  "markdown": "# Beecargo MCP\n\nModel Context Protocol server for the [Beecargo](https://beecargo.net) file hosting API.\n\nPortable marketplace packaging (Agent Plugins 1.0 + Cursor manifest) lives in [`../agent-plugin`](../agent-plugin/README.md).\n\n## Fastest path (agents)\n\nPublish a durable share link with no human dashboard login:\n\n1. Add hosted MCP with **no headers**: `https://mcp.beecargo.net/mcp` (full tools; see [`examples/cursor-http.mcp.json`](examples/cursor-http.mcp.json)). If `/mcp` requires auth, use `https://mcp.beecargo.net/mcp/guest` for bootstrap-only tools.\n2. Call `beecargo_register_agent` → solves a short PoW, returns bootstrap `bc_*` (10GB / 100rpm; session adopts the key).\n3. Call `beecargo_upload` with a public HTTPS `url` → hand off `https://beecargo.net/d/{shortId}` (always the full share URL). Multi-file handoff: `openShare: true` on the first file, then `shareShortId` on later uploads (same link, one unlock).\n4. Optional: `beecargo_update_share_settings` with `protect: true` (+ `handoffMessage`) on `fileId` or Shipment `shortId` → return `unlockCode` and `handoffUrl` (`/h/…`) on a private channel.\n\nFor production agents (100GB included concurrent storage / 1000rpm / high remote/hr): mint a Pro-tier key via dashboard `POST /api-keys/agent` (Pro required) or operator `POST /agent/api-keys`.\n\nSkip registration for ephemeral uploads: `beecargo_upload` works anonymously (stricter limits; save `deletionToken`).\n\n## Tools\n\n| Tool                             | Auth                  | Description                                                                                                    |\n| -------------------------------- | --------------------- | -------------------------------------------------------------------------------------------------------------- |\n| `beecargo_register_agent`        | None                  | Self-mint bootstrap `bc_*` (PoW + rate-limited)                                                                |\n| `beecargo_upload`                | Optional              | URL, small base64, or local path (stdio); `openShare` / `shareShortId` for growable multi-file shares          |\n| `beecargo_upload_status`         | Optional              | Poll async URL upload jobs                                                                                     |\n| `beecargo_create_checkout`       | None                  | Mint Premium Stripe checkout (recommended: 2-day trial then weekly)                                            |\n| `beecargo_purchase_checkout`     | Optional              | Mint pay link for a priced share (`shortId` / `fileId` / `bundleId`)                                           |\n| `beecargo_purchase_claim`        | None                  | After pay: `sessionId` → `purchaseToken` for `beecargo_get_download_url`                                       |\n| `beecargo_claim_file`            | API key               | Claim anonymous upload with `claimToken`                                                                       |\n| `beecargo_search_tools`          | None                  | Keyword search over tools                                                                                      |\n| `beecargo_update_share_settings` | API key               | Visibility, `priceCents` / `currency`, direct, retention, `protect` / `handoffMessage` (`fileId` or `shortId`) |\n| `beecargo_connect`               | Dashboard key / OAuth | Seller Stripe Connect (`action`: `status` \\| `onboard` \\| `login`)                                             |\n| `beecargo_folders`               | API key               | Create or list folders (`action`: `create` \\| `list`)                                                          |\n| `beecargo_get_download_url`      | None                  | Signed download URL (`unlockCode` / `unlockToken` / `handoffToken` / `purchaseToken` when needed)              |\n| `beecargo_file_info`             | Optional              | Metadata by short codes (`unlockRequired`)                                                                     |\n| `beecargo_list_files`            | Required              | List owned files (`includeFolders`; optional `runId` for pipeline manifests)                                   |\n| `beecargo_delete_file`           | Key or deletion token | Delete file                                                                                                    |\n\n### Advanced\n\n| Tool                                | Auth    | Description                                                                                                                                   |\n| ----------------------------------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------- |\n| `beecargo_create_upload_delegation` | API key | Mint a short-lived `uploadUrl` + `delegationToken` for a worker that must not hold `bc_*`. Prefer `beecargo_upload` for normal agent uploads. |\n\nDetailed guides: [upload](https://beecargo.net/docs/mcp/upload), [upload status](https://beecargo.net/docs/mcp/upload-status), [run artifacts](https://beecargo.net/docs/mcp/run-artifacts), [upload delegation](https://beecargo.net/docs/mcp/upload-delegation), [folders](https://beecargo.net/docs/mcp/folders), [share settings](https://beecargo.net/docs/mcp/share-settings), [seller payouts](https://beecargo.net/docs/mcp/connect-payouts), and [buy a priced share](https://beecargo.net/docs/mcp/purchase).\n\n## Stdio (local)\n\n```bash\ncd apps/mcp && pnpm build && pnpm start\n```\n\nOptional: `BEECARGO_API_KEY=bc_…` in env. After `beecargo_register_agent`, the stdio session adopts the new key automatically.\n\nSee [`examples/cursor-stdio.mcp.json`](examples/cursor-stdio.mcp.json).\n\n## HTTP (hosted)\n\n`https://mcp.beecargo.net/mcp` (full tools when authenticated). Guest bootstrap: `https://mcp.beecargo.net/mcp/guest`. See [`examples/cursor-http.mcp.json`](examples/cursor-http.mcp.json).\n\nExisting key: [`examples/cursor-http-with-key.mcp.json`](examples/cursor-http-with-key.mcp.json).\n\nEnv: see [`.env.example`](.env.example). Highlights:\n\n- `BEECARGO_API_URL`: default `https://api.beecargo.net`\n- `BEECARGO_API_FETCH_TIMEOUT_MS`: raise for large sync remotes (default guidance: 300000)\n- `BEECARGO_MCP_REQUIRE_AUTH`: set `true` to require transport bearer or `bc_*` on `/mcp` (default: open bootstrap, rate-limited)\n- `BEECARGO_MCP_BEARER_TOKEN`: optional shared transport secret when `REQUIRE_AUTH=true`\n- `BEECARGO_MERCHANT_OAUTH_ENABLED`: publish OAuth resource metadata and enable Connect with Beecargo (requires matching `INTERNAL_API_KEY` on API + MCP)\n\n## Official MCP Registry\n\n`server.json` is the Official MCP Registry manifest for `io.github.Beecargo/mcp` (schema 2025-12-11). The hosted remote is `https://mcp.beecargo.net/mcp`. Discovery copies also live at `/.well-known/mcp/server.json` on this host and on https://beecargo.net.\n\nThis file does not mean the server is already listed in the registry.\n\n## CLI (local scripts)\n\nUse the dedicated package [`@beecargo/cli`](../cli/README.md):\n\n```bash\nnpx --yes github:Beecargo/cli upload ./artifact.zip --json\nnpx --yes github:Beecargo/cli remote https://example.com/file.bin --async --json\nnpx --yes github:Beecargo/cli share FILE_ID --price-cents 500 --key YOUR_BC_KEY\nnpx --yes github:Beecargo/cli download FILE_ID ./out.bin --purchase-token TOKEN\n```\n\nFrom the monorepo: `pnpm cli upload ./artifact.zip`. Publish flags (`--ttl`, `--protect`, …) match MCP `beecargo_upload`. `share --price-cents` / `download --purchase-token` match MCP share-settings and retrieve.\n\n```bash\npnpm smoke:http   # MCP transport (no API)\nBEECARGO_API_URL=http://localhost:3001 pnpm smoke:api   # live upload against API\n```\n\n## Parity with lomi MCP\n\n| lomi                      | Beecargo                                             |\n| ------------------------- | ---------------------------------------------------- |\n| OpenAPI-generated tools   | Hand-written file tools (smaller surface)            |\n| `lomi_search_tools`       | `beecargo_search_tools`                              |\n| Zero-header HTTP connect  | Same (default); optional `BEECARGO_MCP_REQUIRE_AUTH` |\n| `x-lomi-api-key` + OAuth  | `x-beecargo-api-key` / Bearer `bc_*` + anonymous     |\n| GET/POST/DELETE `/mcp`    | Same                                                 |\n| `/health`, `/ready`       | Same                                                 |\n| Retries + timeout on REST | `BEECARGO_API_FETCH_*` env                           |\n| Tool results              | `{ ok, status, body }` + share link hints            |\n\n## Publish\n\nScope is `@beecargo`. First publish is manual with `--otp`. After that, set Trusted Publisher on the npm package to GitHub `Beecargo/mcp` workflow `publish.yml`. Then bump the patch in `package.json` and push `main`.\n\n```bash\npnpm typecheck && pnpm publish --access public --otp=XXXXXX\n```\n",
  "bytes": 8954,
  "sha": "731373d04715c4625ee744aedc9d7db5557093d11665446509b8c6cb50782251",
  "repo_slug": "beecargo/mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_beecargo_mcp_dd150cf5/readme"
}