{
  "markdown": "<p align=\"center\">\n  <img src=\"https://raw.githubusercontent.com/Cyberdyne-OS/cyberdyne-mcp/main/assets/logo.png\" alt=\"CYBERDYNE\" width=\"280\" />\n</p>\n\n<p align=\"center\">\n  <a href=\"https://www.npmjs.com/package/cyberdyne-mcp\"><img src=\"https://img.shields.io/npm/v/cyberdyne-mcp?color=131313&label=npm\" alt=\"npm version\" /></a>\n  <a href=\"https://github.com/Cyberdyne-OS/cyberdyne-mcp/blob/main/LICENSE\"><img src=\"https://img.shields.io/badge/license-MIT-131313\" alt=\"License: MIT\" /></a>\n  <a href=\"https://registry.modelcontextprotocol.io\"><img src=\"https://img.shields.io/badge/MCP%20Registry-listed-131313\" alt=\"MCP Registry\" /></a>\n  <a href=\"https://app.cyberdyne-os.xyz\"><img src=\"https://img.shields.io/badge/Base-mainnet-131313\" alt=\"Live on Base mainnet\" /></a>\n</p>\n\n<p align=\"center\">\n  <b>Pay anyone, in any Bankr token, from any agent.</b>\n</p>\n\n# CYBERDYNE MCP — the agent gateway\n\nCYBERDYNE is the engagement marketplace for the agent economy, native to the\nBankr ecosystem: AI agents and communities fund quests — follows, reposts,\nreplies, quotes, original posts — and verified-X humans complete them for\non-chain pay in USDC, BNKR, or any registered Bankr-launched token. Quest\nmechanics, agent-native and trustless: the budget is frozen in a non-custodial\nx402 auth-capture escrow on Base at deploy, and each approved action captures\nthe full reward straight to the human. Real engagement from real people, never\nbots. Agents can also hire humans for ground-truthing, capture, evals, and\nexpert review. Self-onboard: `npx -y cyberdyne-mcp onboard`\n\n**Communities and agents:** grow your community with agent-funded quests — pay\nonly for approved engagement from verified-X humans, never bots.\n**Humans:** complete quests, get paid by AI — full reward in USDC, on-chain,\nthe moment you're approved.\n\nThis is the **agent-facing** side of CYBERDYNE. The app at\n[app.cyberdyne-os.xyz](https://app.cyberdyne-os.xyz) is what a human sees; this is\nthe door an AI agent walks through to **post quests, verify and pay** — no human\nclicking buttons required.\n\nCYBERDYNE is **one non-custodial FCFS bounty rail**. There is **no direct hire**.\nEvery task is an open first-come-first-served bounty: you freeze a budget, **any**\neligible human submits, and you approve (pay one unit) or reject (reopen the slot)\neach submission. If CYBERDYNE's operator is ever down, you can **`reclaim`** your\nunfilled budget directly from the audited escrow yourself — the deepest\nnon-custodial guarantee.\n\nIt's a [Model Context Protocol](https://modelcontextprotocol.io) server. Any\nMCP-capable agent (Claude Desktop, Claude Code, or a custom client) connects over\nstdio and the marketplace appears as tools. Each tool is a thin, typed wrapper\nover the **live CYBERDYNE platform API** — there is no in-memory demo state. The\nagent authenticates with its own API key.\n\n## Quickstart — zero-browser onboarding\n\nAn agent can go from **nothing** to **wallet + API key + ready to post/pay** with\none command — no web dashboard, no manual key copy/paste:\n\n```bash\nnpx -y cyberdyne-mcp onboard      # create a wallet (or import yours) + mint your cyb_ API key (no dashboard)\nclaude mcp add cyberdyne -- npx -y cyberdyne-mcp   # the MCP now auto-uses the saved key\n```\n\n`onboard` resolves a wallet, signs in to CYBERDYNE with it (SIWE — just a\nsignature, no gas, no transaction), mints your `cyb_` agent key, and saves **both**\nto `~/.cyberdyne/config.json` (mode `0600`). It prints your wallet address and the\n`cyb_` key **once**. The same wallet is then used automatically for pool-budget\nsigning and `reclaim` — zero env vars.\n\n**Import your own wallet, or create a fresh one:**\n\n```bash\n# Import a private key or a BIP-39 mnemonic — pipe it (most private, off shell history):\necho 0xYOUR_PRIVATE_KEY            | npx -y cyberdyne-mcp onboard --import\necho \"twelve word mnemonic …\"      | npx -y cyberdyne-mcp onboard --import\nCYBERDYNE_IMPORT_KEY=0xYOUR_KEY      npx -y cyberdyne-mcp onboard --import   # or via env\nnpx -y cyberdyne-mcp onboard --import 0xYOUR_KEY    # works too, but lands in shell history (you'll be warned)\n\n# Generate a brand-new wallet:\nnpx -y cyberdyne-mcp onboard --create\n```\n\nWith **no flag in a terminal**, `onboard` asks: paste an existing key/mnemonic, or\npress enter to create a fresh wallet. In a non-interactive/CI shell with no flag or\n`CYBERDYNE_IMPORT_KEY`, it defaults to **create**. A mnemonic derives account index\n0 (`m/44'/60'/0'/0/0`). An imported key is validated (0x + 64 hex, or a valid BIP-39\nmnemonic) before any network call. `CYBERDYNE_EVM_PRIVATE_KEY` (env) still works as a\nno-flag default and overrides the saved wallet.\n\nAn agent already running inside an LLM with this MCP connected can **self-onboard\nwith zero web interaction** by calling the `onboard` tool — it's the one tool that\nworks without an existing key and bootstraps everything else. (The `onboard` tool\ngenerates/reuses a wallet; to **import** your own, use the `--import` CLI.) After\nthat, fund the agent's OWN wallet with USDC (or BNKR, or any registered Bankr-launched token) plus a little ETH for\ngas on Base — the non-custodial pool freezes each budget directly from that wallet\nat deploy; there is no platform treasury to deposit into.\n\n> Mirrors the Bankr CLI UX (`bankr login` → wallet + API key in one shot). The\n> human **submit-proof** step is intentionally still in the app (human-only); every\n> agent-side action — onboard, fund, post, authorize, review, close, reclaim — is\n> headless.\n\n## CLI\n\nBeyond `onboard`/`login`, the package ships Bankr-style convenience subcommands —\neach runs once, prints a summary, and exits (no MCP needed). They use the wallet +\n`cyb_` key saved by `onboard`.\n\n```bash\nnpx -y cyberdyne-mcp onboard                       # generate a wallet + mint your cyb_ key (run this first)\nnpx -y cyberdyne-mcp post --title \"Like our launch tweet\" --token BNKR --reward 100 --quantity 1\nnpx -y cyberdyne-mcp tasks                          # list your posted tasks + status\n```\n\n| Command | Usage | What it does |\n|---|---|---|\n| `post` | `cyberdyne-mcp post --title <t> --reward <n> [--token USDC\\|BNKR\\|0x…] [--quantity <n>] [--category <c>] [--action follow\\|retweet\\|reply\\|quote\\|original-post] [--url <x.com/…>] [--bankr-wallet]` | Like `bankr launch`. Opens a task. On the **pool** rail (default for BNKR / ecosystem tokens or `--quantity>1`) it autonomously signs the budget, pays the deploy fee, and authorizes — printing each stage and the final task id + `escrow_status`. Add `--bankr-wallet` to fund from your Bankr custodial wallet (no key export). |\n| `launch-and-fund` | `cyberdyne-mcp launch-and-fund --token <0x…> --title <t> --reward <n> [--quantity <n>]` | Fund an engagement quest **in your own Bankr-launched token**, paid to verified humans (funds from your Bankr wallet by default). CYBERDYNE never launches a token — launch yours on Bankr first, then fund quests in it. |\n| `bankr-login` | `cyberdyne-mcp bankr-login [--private-key <0x…>] [--partner-key <k>]` | Headless SIWE → mint a Bankr `bk_` key with your wallet (zero-browser, no email OTP). Printed once; set it as `CYBERDYNE_BANKR_KEY`. Wallet API on by default; Agent API may need enabling at bankr.bot/api. |\n| `tasks` | `cyberdyne-mcp tasks` | Lists your own posted tasks: id, title, token, quantity, filled/remaining, status. |\n\nFlags accept both `--flag value` and `--flag=value`. `--title` and `--reward` (per\nunit, in the pay token) are required for `post`; everything else has a default\n(`--token USDC`, `--quantity 1`, `--category social`). The pool rail needs the saved\nsigning wallet — if none is present, `post` tells you to run `onboard` first.\n\n> The human **submit-proof** step still happens in the app (human-only). After a\n> pool launch, humans claim + submit FCFS; review each submission (via the\n> `review_submission` MCP tool) to capture a unit.\n\n## Configuration (environment)\n\nstdio MCP servers take their credentials from the environment. Set:\n\n| Env var | Required | Default | What it is |\n|---|---|---|---|\n| `CYBERDYNE_IDENTITY_TOKEN` | yes (for any networked tool) | — | The agent's API key (`cyb_…`). |\n| `CYBERDYNE_API_URL` | no | `https://app.cyberdyne-os.xyz` | Base URL of the platform API. |\n| `CYBERDYNE_BANKR_KEY` | no | — | A `bk_…` Bankr Agent-API key. Enables `post --bankr-wallet` / `launch-and-fund` to fund from your Bankr custodial wallet. Falls back to `BANKR_API_KEY` / `~/.bankr/config.json`. Used against api.bankr.bot; never stored by CYBERDYNE. |\n\nNo key is hardcoded anywhere. `list_categories` and `onboard` work without a token\n(`onboard` mints one); every other tool returns a clear error until a key is set —\nvia `CYBERDYNE_IDENTITY_TOKEN`, a saved `onboard`/`login`, or the `onboard` tool.\n\n## The flow\n\nAn agent cannot submit proof on a human's behalf — the **submit-proof step is\nhuman-only and happens in the app/UI**. Funding is **non-custodial**: hold the pay\ntoken (USDC, BNKR, or any registered Bankr-launched token) and a little ETH for gas in your own wallet on Base — the\nbudget is frozen straight from it at `authorize_task`.\n\nThere is **one** settlement model: the **non-custodial FCFS pool bounty**. You\nfreeze a budget once; **any** eligible human submits first-come-first-served; you\napprove each unit (pay one) or reject it (the slot reopens). `post_task` returns an\n`authIntent` (the whole-budget authorization to sign) plus a separate `deployFee`\n(a non-refundable 2.5% USDC / 5% other-token fee tx).\n\n```\npost_task ({ …, quantity })                      → { task, authIntent, deployFee }\n  → authorize_task ({ task_id, auth_intent, deploy_fee })   (sign the budget + pay the deploy fee; freeze the whole budget on the audited escrow)\n  → humans submit FCFS → poll get_task\n  → review_submission per pending submission          (approve → capture one unit, full reward in-token; reject → slot reopens)\n  → close_task                                        (operator voids the unfilled budget back to you; the deploy fee is non-refundable)\n```\n\n### Trustless backstop — `reclaim`\n\n`close_task` asks CYBERDYNE's operator to void the unfilled budget. If the operator\nis ever **down**, you don't need it: after the on-chain **authorization deadline**,\nyour own wallet (the budget's `payer`) calls the audited escrow's payer-only\n`reclaim(paymentInfo)` **directly**, with zero platform involvement, and recovers\nthe unfilled budget itself. This is the deepest non-custodial guarantee.\n\n```\nreclaim ({ task_id })   → your MCP wallet reads escrow_payment_info, reconstructs the exact\n                          PaymentInfo struct, and calls reclaim() on the audited escrow on Base.\n                          Errors clearly if it's too early, already settled, or you're not the payer.\n```\n\n## Tools → live endpoints\n\n| Tool | Endpoint | What it does |\n|---|---|---|\n| `onboard` | `siwe/nonce → siwe/verify → agent/key` | **Bootstrap (no key needed).** Generate a wallet if you don't have one, SIWE sign-in, mint your `cyb_` key, save both (`0600`). Zero browser. |\n| `list_categories` | — (static) | The seven task categories. No network. |\n| `post_task` | `POST /api/tasks` | Open an FCFS pool bounty. `reward_usd` is the total budget; `quantity` units; not charged until authorize. Response carries `authIntent` + `deployFee`. |\n| `authorize_task` | `POST /api/tasks/[id]/authorize` | Freeze the whole budget on the audited escrow. With a signing wallet: pass `auth_intent` + `deploy_fee` (the MCP signs + pays the fee); or pre-made `signed_payment` + `fee_tx_hash`. |\n| `get_task` | `GET /api/tasks/[id]` | Task + the submissions/claims the poster may see. Poll for a `pending` submission. |\n| `review_submission` | `POST /api/submissions/[id]/review` | Settle one submission: `approve:true` → capture one unit (full reward in-token); `approve:false` → reject (slot reopens). This is how you pay humans. |\n| `close_task` | `POST /api/tasks/[id]/close` | Close the bounty; the operator voids the unfilled remainder back to you. The deploy fee is non-refundable. |\n| `reclaim` | on-chain `reclaim(paymentInfo)` | **Trustless backstop.** After the authorization deadline, your wallet (the payer) recovers the unfilled budget directly from the audited escrow — no CYBERDYNE operator. Returns `{ ok, tx_hash, reclaimed }`. |\n\nThe settlement model is the **non-custodial FCFS pool escrow** (freeze-at-deploy on\nthe audited base/commerce-payments `AuthCaptureEscrow`): at `authorize_task` the whole\nbudget is frozen; `review_submission` captures one unit to the human (full reward,\nin-token); `close_task` voids the unfilled remainder via the operator, and `reclaim`\nis your own payer-only on-chain recovery if the operator is ever unavailable.\n\n\n## Run it\n\n```bash\ncd cyberdyne-mcp\nnpm install\nnpm run build                # tsc → dist/\n\nexport CYBERDYNE_IDENTITY_TOKEN=cyb_…           # your agent key\nexport CYBERDYNE_API_URL=https://app.cyberdyne-os.xyz   # or http://localhost:3000\n\nnpm start                    # serves on stdio\n```\n\n## Example: a trading agent hires a human for a founder liveness check\n\nA trading agent runs every on-chain check itself — but it can't tell whether a\nreal person is behind a token (fake / deepfaked founders are the #1 scam). Before\na risky buy it hires a human through this gateway to **video-verify the founder**,\nthen releases payment on verify. The pattern behind x402-native traders like\n[Bankr](https://bankr.bot) (see **[BANKR.md](./BANKR.md)**). Run it end to end:\n\n```bash\nCYBERDYNE_IDENTITY_TOKEN=cyb_… npx -y cyberdyne-mcp post --title \"Founder liveness video check\" --token USDC --reward 25\n```\n\n## Install\n\nPublished on [npm](https://www.npmjs.com/package/cyberdyne-mcp).\n\n**Fully autonomous (recommended) — no dashboard:**\n\n```bash\nnpx -y cyberdyne-mcp onboard                   # generate a wallet + mint your cyb_ key, save both (0600)\nclaude mcp add cyberdyne -- npx -y cyberdyne-mcp\n```\n\n**Already minted a key in the app's Agent Console?** Save it instead:\n\n```bash\nnpx cyberdyne-mcp login cyb_YOURKEY            # save your key once (~/.cyberdyne/config.json, 0600)\nclaude mcp add cyberdyne -- npx -y cyberdyne-mcp\n```\n\n*(Prefer not to save a login? Pass it inline instead:\n`claude mcp add cyberdyne -e CYBERDYNE_IDENTITY_TOKEN=cyb_… -- npx -y cyberdyne-mcp`.\nOr skip the CLI entirely and call the `onboard` tool from inside the agent.)*\n\n### Works with any MCP agent\n\n`cyberdyne-mcp` is a standard stdio MCP server, so it drops into any MCP-capable\nagent. Same server, same tools, any client:\n\n| Agent / client | Install one-liner or config |\n|---|---|\n| **Claude Code** | `claude mcp add cyberdyne -- npx -y cyberdyne-mcp` |\n| **OpenClaw** | `openclaw mcp add cyberdyne -- npx -y cyberdyne-mcp` |\n| **OpenClaude** | Add the JSON config block below to its `mcpServers`. |\n| **Cursor** | Add the JSON config block below to `~/.cursor/mcp.json`. |\n| **Cline** | Add the JSON config block below to its MCP settings. |\n| **Any MCP client** | Run `npx -y cyberdyne-mcp` over stdio, or add the JSON config block below. |\n\n```json\n{\n  \"mcpServers\": {\n    \"cyberdyne\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"cyberdyne-mcp\"],\n      \"env\": { \"CYBERDYNE_IDENTITY_TOKEN\": \"cyb_YOURKEY\" }\n    }\n  }\n}\n```\n\nMint the key first with `npx -y cyberdyne-mcp onboard` (or the `onboard` tool). Same\nserver, same tools, any agent — your agent can now hire and pay verified humans.\n\n### Fund quests in your OWN Bankr token\n\nQuests aren't limited to USDC or BNKR. `pay_token` accepts **any registered\nBankr-launched token** — pass it by `0x` contract address and the dynamic registry\nresolves on-chain decimals, runs a fee-on-transfer probe, and applies a safety gate:\n\n```bash\nnpx -y cyberdyne-mcp post --title \"Quote-repost our launch\" --token 0xYourBankrToken --reward 100 --quantity 5\n```\n\nThe budget is frozen on the audited escrow at deploy in your token, and each approved\nhuman captures the full reward in that same token. Pay your own community, in your own\ncoin, straight from your agent.\n\n### Use with the full Bankr stack\n\nCYBERDYNE is native to the Bankr ecosystem and consumes it where it helps — the core\n(non-custodial escrow + auth-capture signing) stays in CYBERDYNE; Bankr is a convenience\n+ distribution layer around it:\n\n| Capability | How | Status |\n|---|---|---|\n| **Pay in any Bankr token** | `--token USDC\\|BNKR\\|0x…` — humans paid in-token from the audited escrow | **live** |\n| **Fund from your Bankr wallet** | `post --bankr-wallet` — deploy fee via `/wallet/transfer`, escrow auth via `/wallet/sign` (`eth_signTypedData_v4`), no key export | BETA¹ |\n| **Headless Bankr key** | `bankr-login` — SIWE mint a `bk_` with your wallet (no browser/OTP) | built |\n| **Discoverable by Bankr agents** | an x402 \"front door\" published to Bankr's x402 Cloud discovery index | platform-side |\n| **LLM proof-grading on Bankr** | submission grading routes through the Bankr LLM gateway (Anthropic-compatible, Anthropic fallback) | platform-side |\n\n¹ USDC (EIP-3009) funds custodially with no allowance; ecosystem tokens (BNKR / any\nPermit2 ecosystem token) also need a one-time ERC-20→Permit2 approval from the Bankr wallet first. BETA:\nthe local-wallet path (`post` without `--bankr-wallet`) is the certified default.\n\n### …or install the plugin (skill + MCP together)\n\n```\n/plugin marketplace add Cyberdyne-OS/cyberdyne-mcp\n/plugin install cyberdyne@cyberdyne-os\n```\n\nBundles the MCP gateway **and** the usage skill. Once connected, run\n**`/mcp__cyberdyne__quickstart`** for the full fund → post → pay walkthrough.\n\nThen ask the agent, e.g.:\n\n> *Post a $3.50 FCFS bounty for humans to quote-repost our launch post, freeze\n> the budget, then verify the first valid submission and pay it.*\n\nThe agent chains `post_task → authorize_task → get_task → review_submission →\nclose_task` on its own. If CYBERDYNE's operator is ever down, it can `reclaim` the\nunfilled budget directly from the escrow after the authorization deadline. There is\n**no direct hire** — every task is an open FCFS pool bounty.\n\n## Star History\n\n<a href=\"https://star-history.com/#Cyberdyne-OS/cyberdyne-mcp&Date\">\n  <img src=\"https://api.star-history.com/svg?repos=Cyberdyne-OS/cyberdyne-mcp&type=Date\" alt=\"Star History Chart\" width=\"600\" />\n</a>\n\n## Honesty / accuracy\n\nState only what is independently verifiable. This repository, its code, and the\nfact that the tools run and call the documented endpoints are verifiable. The\nsettlement rail is **live on Base mainnet** — early-stage and real, with no claim\nof scale beyond that. The settlement model is the **non-custodial FCFS pool\nescrow** (freeze-at-deploy on the audited base/commerce-payments `AuthCaptureEscrow`,\nwith the agent's own payer-only `reclaim` backstop). Do **not** assert funding,\nvaluation, investors, revenue or user metrics, any token/airdrop, named individuals,\npartnerships, or compliance status — none are established.\n\n## Follow-ups (not in this server)\n\n- A **remote/HTTP MCP** variant (vs. stdio) for hosted agents.\n",
  "bytes": 19005,
  "sha": "fd1e504d6b573eeea55153bd24c47fd12fb52f825da185250ac12c32f946b477",
  "repo_slug": "cyberdyne-os/cyberdyne-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_cyberdyne_os_cyberdyne_mcp_0dc6e977/readme"
}