Skip to main content
Glama
Cyberdyne-OS

cyberdyne-mcp

Official
by Cyberdyne-OS

CYBERDYNE MCP — the agent gateway

CYBERDYNE is the engagement marketplace for the agent economy, native to the Bankr ecosystem: AI agents and communities fund quests — follows, reposts, replies, quotes, original posts — and verified-X humans complete them for on-chain pay in USDC, BNKR, or any registered Bankr-launched token. Quest mechanics, agent-native and trustless: the budget is frozen in a non-custodial x402 auth-capture escrow on Base at deploy, and each approved action captures the full reward straight to the human. Real engagement from real people, never bots. Agents can also hire humans for ground-truthing, capture, evals, and expert review. Self-onboard: npx -y cyberdyne-mcp onboard

Communities and agents: grow your community with agent-funded quests — pay only for approved engagement from verified-X humans, never bots. Humans: complete quests, get paid by AI — full reward in USDC, on-chain, the moment you're approved.

This is the agent-facing side of CYBERDYNE. The app at app.cyberdyne-os.xyz is what a human sees; this is the door an AI agent walks through to post quests, verify and pay — no human clicking buttons required.

CYBERDYNE is one non-custodial FCFS bounty rail. There is no direct hire. Every task is an open first-come-first-served bounty: you freeze a budget, any eligible human submits, and you approve (pay one unit) or reject (reopen the slot) each submission. If CYBERDYNE's operator is ever down, you can reclaim your unfilled budget directly from the audited escrow yourself — the deepest non-custodial guarantee.

It's a Model Context Protocol server. Any MCP-capable agent (Claude Desktop, Claude Code, or a custom client) connects over stdio and the marketplace appears as tools. Each tool is a thin, typed wrapper over the live CYBERDYNE platform API — there is no in-memory demo state. The agent authenticates with its own API key.

Quickstart — zero-browser onboarding

An agent can go from nothing to wallet + API key + ready to post/pay with one command — no web dashboard, no manual key copy/paste:

npx -y cyberdyne-mcp onboard      # create a wallet (or import yours) + mint your cyb_ API key (no dashboard)
claude mcp add cyberdyne -- npx -y cyberdyne-mcp   # the MCP now auto-uses the saved key

onboard resolves a wallet, signs in to CYBERDYNE with it (SIWE — just a signature, no gas, no transaction), mints your cyb_ agent key, and saves both to ~/.cyberdyne/config.json (mode 0600). It prints your wallet address and the cyb_ key once. The same wallet is then used automatically for pool-budget signing and reclaim — zero env vars.

Import your own wallet, or create a fresh one:

# Import a private key or a BIP-39 mnemonic — pipe it (most private, off shell history):
echo 0xYOUR_PRIVATE_KEY            | npx -y cyberdyne-mcp onboard --import
echo "twelve word mnemonic …"      | npx -y cyberdyne-mcp onboard --import
CYBERDYNE_IMPORT_KEY=0xYOUR_KEY      npx -y cyberdyne-mcp onboard --import   # or via env
npx -y cyberdyne-mcp onboard --import 0xYOUR_KEY    # works too, but lands in shell history (you'll be warned)

# Generate a brand-new wallet:
npx -y cyberdyne-mcp onboard --create

With no flag in a terminal, onboard asks: paste an existing key/mnemonic, or press enter to create a fresh wallet. In a non-interactive/CI shell with no flag or CYBERDYNE_IMPORT_KEY, it defaults to create. A mnemonic derives account index 0 (m/44'/60'/0'/0/0). An imported key is validated (0x + 64 hex, or a valid BIP-39 mnemonic) before any network call. CYBERDYNE_EVM_PRIVATE_KEY (env) still works as a no-flag default and overrides the saved wallet.

An agent already running inside an LLM with this MCP connected can self-onboard with zero web interaction by calling the onboard tool — it's the one tool that works without an existing key and bootstraps everything else. (The onboard tool generates/reuses a wallet; to import your own, use the --import CLI.) After that, fund the agent's OWN wallet with USDC (or BNKR, or any registered Bankr-launched token) plus a little ETH for gas on Base — the non-custodial pool freezes each budget directly from that wallet at deploy; there is no platform treasury to deposit into.

Mirrors the Bankr CLI UX (bankr login → wallet + API key in one shot). The human submit-proof step is intentionally still in the app (human-only); every agent-side action — onboard, fund, post, authorize, review, close, reclaim — is headless.

Related MCP server: agentshield-mcp

CLI

Beyond onboard/login, the package ships Bankr-style convenience subcommands — each runs once, prints a summary, and exits (no MCP needed). They use the wallet + cyb_ key saved by onboard.

npx -y cyberdyne-mcp onboard                       # generate a wallet + mint your cyb_ key (run this first)
npx -y cyberdyne-mcp post --title "Like our launch tweet" --token BNKR --reward 100 --quantity 1
npx -y cyberdyne-mcp tasks                          # list your posted tasks + status

Command

Usage

What it does

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).

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.

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.

tasks

cyberdyne-mcp tasks

Lists your own posted tasks: id, title, token, quantity, filled/remaining, status.

Flags accept both --flag value and --flag=value. --title and --reward (per unit, in the pay token) are required for post; everything else has a default (--token USDC, --quantity 1, --category social). The pool rail needs the saved signing wallet — if none is present, post tells you to run onboard first.

The human submit-proof step still happens in the app (human-only). After a pool launch, humans claim + submit FCFS; review each submission (via the review_submission MCP tool) to capture a unit.

Configuration (environment)

stdio MCP servers take their credentials from the environment. Set:

Env var

Required

Default

What it is

CYBERDYNE_IDENTITY_TOKEN

yes (for any networked tool)

The agent's API key (cyb_…).

CYBERDYNE_API_URL

no

https://app.cyberdyne-os.xyz

Base URL of the platform API.

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.

No key is hardcoded anywhere. list_categories and onboard work without a token (onboard mints one); every other tool returns a clear error until a key is set — via CYBERDYNE_IDENTITY_TOKEN, a saved onboard/login, or the onboard tool.

The flow

An agent cannot submit proof on a human's behalf — the submit-proof step is human-only and happens in the app/UI. Funding is non-custodial: hold the pay token (USDC, BNKR, or any registered Bankr-launched token) and a little ETH for gas in your own wallet on Base — the budget is frozen straight from it at authorize_task.

There is one settlement model: the non-custodial FCFS pool bounty. You freeze a budget once; any eligible human submits first-come-first-served; you approve each unit (pay one) or reject it (the slot reopens). post_task returns an authIntent (the whole-budget authorization to sign) plus a separate deployFee (a non-refundable 2.5% USDC / 5% other-token fee tx).

post_task ({ …, quantity })                      → { task, authIntent, deployFee }
  → authorize_task ({ task_id, auth_intent, deploy_fee })   (sign the budget + pay the deploy fee; freeze the whole budget on the audited escrow)
  → humans submit FCFS → poll get_task
  → review_submission per pending submission          (approve → capture one unit, full reward in-token; reject → slot reopens)
  → close_task                                        (operator voids the unfilled budget back to you; the deploy fee is non-refundable)

Trustless backstop — reclaim

close_task asks CYBERDYNE's operator to void the unfilled budget. If the operator is ever down, you don't need it: after the on-chain authorization deadline, your own wallet (the budget's payer) calls the audited escrow's payer-only reclaim(paymentInfo) directly, with zero platform involvement, and recovers the unfilled budget itself. This is the deepest non-custodial guarantee.

reclaim ({ task_id })   → your MCP wallet reads escrow_payment_info, reconstructs the exact
                          PaymentInfo struct, and calls reclaim() on the audited escrow on Base.
                          Errors clearly if it's too early, already settled, or you're not the payer.

Tools → live endpoints

Tool

Endpoint

What it does

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.

list_categories

— (static)

The seven task categories. No network.

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.

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.

get_task

GET /api/tasks/[id]

Task + the submissions/claims the poster may see. Poll for a pending submission.

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.

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.

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 }.

The settlement model is the non-custodial FCFS pool escrow (freeze-at-deploy on the audited base/commerce-payments AuthCaptureEscrow): at authorize_task the whole budget is frozen; review_submission captures one unit to the human (full reward, in-token); close_task voids the unfilled remainder via the operator, and reclaim is your own payer-only on-chain recovery if the operator is ever unavailable.

Run it

cd cyberdyne-mcp
npm install
npm run build                # tsc → dist/

export CYBERDYNE_IDENTITY_TOKEN=cyb_…           # your agent key
export CYBERDYNE_API_URL=https://app.cyberdyne-os.xyz   # or http://localhost:3000

npm start                    # serves on stdio

Example: a trading agent hires a human for a founder liveness check

A trading agent runs every on-chain check itself — but it can't tell whether a real person is behind a token (fake / deepfaked founders are the #1 scam). Before a risky buy it hires a human through this gateway to video-verify the founder, then releases payment on verify. The pattern behind x402-native traders like Bankr (see BANKR.md). Run it end to end:

CYBERDYNE_IDENTITY_TOKEN=cyb_… npx -y cyberdyne-mcp post --title "Founder liveness video check" --token USDC --reward 25

Install

Published on npm.

Fully autonomous (recommended) — no dashboard:

npx -y cyberdyne-mcp onboard                   # generate a wallet + mint your cyb_ key, save both (0600)
claude mcp add cyberdyne -- npx -y cyberdyne-mcp

Already minted a key in the app's Agent Console? Save it instead:

npx cyberdyne-mcp login cyb_YOURKEY            # save your key once (~/.cyberdyne/config.json, 0600)
claude mcp add cyberdyne -- npx -y cyberdyne-mcp

(Prefer not to save a login? Pass it inline instead: claude mcp add cyberdyne -e CYBERDYNE_IDENTITY_TOKEN=cyb_… -- npx -y cyberdyne-mcp. Or skip the CLI entirely and call the onboard tool from inside the agent.)

Works with any MCP agent

cyberdyne-mcp is a standard stdio MCP server, so it drops into any MCP-capable agent. Same server, same tools, any client:

Agent / client

Install one-liner or config

Claude Code

claude mcp add cyberdyne -- npx -y cyberdyne-mcp

OpenClaw

openclaw mcp add cyberdyne -- npx -y cyberdyne-mcp

OpenClaude

Add the JSON config block below to its mcpServers.

Cursor

Add the JSON config block below to ~/.cursor/mcp.json.

Cline

Add the JSON config block below to its MCP settings.

Any MCP client

Run npx -y cyberdyne-mcp over stdio, or add the JSON config block below.

{
  "mcpServers": {
    "cyberdyne": {
      "command": "npx",
      "args": ["-y", "cyberdyne-mcp"],
      "env": { "CYBERDYNE_IDENTITY_TOKEN": "cyb_YOURKEY" }
    }
  }
}

Mint the key first with npx -y cyberdyne-mcp onboard (or the onboard tool). Same server, same tools, any agent — your agent can now hire and pay verified humans.

Fund quests in your OWN Bankr token

Quests aren't limited to USDC or BNKR. pay_token accepts any registered Bankr-launched token — pass it by 0x contract address and the dynamic registry resolves on-chain decimals, runs a fee-on-transfer probe, and applies a safety gate:

npx -y cyberdyne-mcp post --title "Quote-repost our launch" --token 0xYourBankrToken --reward 100 --quantity 5

The budget is frozen on the audited escrow at deploy in your token, and each approved human captures the full reward in that same token. Pay your own community, in your own coin, straight from your agent.

Use with the full Bankr stack

CYBERDYNE is native to the Bankr ecosystem and consumes it where it helps — the core (non-custodial escrow + auth-capture signing) stays in CYBERDYNE; Bankr is a convenience

  • distribution layer around it:

Capability

How

Status

Pay in any Bankr token

--token USDC|BNKR|0x… — humans paid in-token from the audited escrow

live

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¹

Headless Bankr key

bankr-login — SIWE mint a bk_ with your wallet (no browser/OTP)

built

Discoverable by Bankr agents

an x402 "front door" published to Bankr's x402 Cloud discovery index

platform-side

LLM proof-grading on Bankr

submission grading routes through the Bankr LLM gateway (Anthropic-compatible, Anthropic fallback)

platform-side

¹ USDC (EIP-3009) funds custodially with no allowance; ecosystem tokens (BNKR / any Permit2 ecosystem token) also need a one-time ERC-20→Permit2 approval from the Bankr wallet first. BETA: the local-wallet path (post without --bankr-wallet) is the certified default.

…or install the plugin (skill + MCP together)

/plugin marketplace add Cyberdyne-OS/cyberdyne-mcp
/plugin install cyberdyne@cyberdyne-os

Bundles the MCP gateway and the usage skill. Once connected, run /mcp__cyberdyne__quickstart for the full fund → post → pay walkthrough.

Then ask the agent, e.g.:

Post a $3.50 FCFS bounty for humans to quote-repost our launch post, freeze the budget, then verify the first valid submission and pay it.

The agent chains post_task → authorize_task → get_task → review_submission → close_task on its own. If CYBERDYNE's operator is ever down, it can reclaim the unfilled budget directly from the escrow after the authorization deadline. There is no direct hire — every task is an open FCFS pool bounty.

Star History

Honesty / accuracy

State only what is independently verifiable. This repository, its code, and the fact that the tools run and call the documented endpoints are verifiable. The settlement rail is live on Base mainnet — early-stage and real, with no claim of scale beyond that. The settlement model is the non-custodial FCFS pool escrow (freeze-at-deploy on the audited base/commerce-payments AuthCaptureEscrow, with the agent's own payer-only reclaim backstop). Do not assert funding, valuation, investors, revenue or user metrics, any token/airdrop, named individuals, partnerships, or compliance status — none are established.

Follow-ups (not in this server)

  • A remote/HTTP MCP variant (vs. stdio) for hosted agents.

Available Tools

8 tools
authorize_taskA

Freeze the bounty budget on-chain (the second step of the FCFS flow). REAL-TOKEN POOL rail: pass BOTH auth_intent (the authIntent from post_task) AND deploy_fee (the deployFee object from post_task) — with CYBERDYNE_EVM_PRIVATE_KEY set, the MCP signs the whole-budget authorization AND pays the separate 2.5% USDC / 5% other-token deploy fee tx from its wallet, then freezes the budget on the audited escrow; or pass a pre-signed signed_payment and a pre-paid fee_tx_hash. After this, any eligible human submits FCFS and you review_submission each. The non-custodial POOL escrow is the only rail; a non-real token / non-live config returns 409 settlement_unavailable. Idempotent once frozen.

ParametersJSON Schema
NameRequiredDescriptionDefault
task_idYes
deploy_feeNoPOOL rail: the deployFee object {usd,recipient,token} from post_task — the MCP auto-pays it.
auth_intentNoThe authIntent from post_task — required for MCP wallet auto-signing.
fee_tx_hashNoPOOL rail: hash of an already-paid deploy-fee tx (skips auto-pay).
signed_paymentNoPre-signed base64 auth-capture payload (external/Bankr signer).

TDQS

A4.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and largely succeeds: it discloses that the MCP signs the authorization and pays a separate deploy fee, that the budget is frozen on an escrow, that the operation is idempotent once frozen, and that unsupported configs return 409. Minor gap: it does not describe the response shape or what happens if the task is already frozen (beyond idempotency).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but every clause earns its place: it front-loads the core action and then packs in rail restrictions, fee percentages, execution modes, error conditions, and idempotency in three sentences. There is no filler or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity and no output schema, the description covers the flow position, both invocation modes, fee details, a specific error case, and idempotency. It is missing a description of what the function returns and any state prerequisites beyond being the second step, but it is still remarkably complete for a tool of this depth.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds essential relational semantics not present in the schema: it specifies that auth_intent and deploy_fee must be passed together for MCP auto-signing, and that signed_payment with fee_tx_hash is the alternative. This transforms the schema's flat property list into actionable call patterns, going far beyond the 80% schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb+resource ('Freeze the bounty budget on-chain') and explicitly identifies the tool as the second step of the FCFS flow. This clearly differentiates it from siblings like post_task (creation) and review_submission (reviewing), making its purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit flow context: it is the second step after post_task and before review_submission. It also states the only supported rail (non-custodial POOL escrow) and the 409 error condition for unsupported configs, giving clear when-to-use and when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

close_taskA

Close your FCFS pool bounty (poster-only): refund the unfilled budget back to your wallet on-chain (the uncaptured remainder = unfilled units × per-unit reward) and stop further submissions. The deploy fee is non-refundable. Idempotent on an already-closed task. (close_task goes through CYBERDYNE's operator; if the operator is ever down, use reclaim to recover the budget yourself after the authorization deadline.)

ParametersJSON Schema
NameRequiredDescriptionDefault
task_idYes

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full responsibility and excels: it discloses the refund calculation (unfilled units × per-unit reward), non-refundable deploy fee, idempotency on already-closed tasks, operator dependence, and fallback behavior. This goes far beyond basic side-effect disclosure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact (about 70 words) and front-loaded with the primary action, followed by critical details. Every sentence adds value—refund math, fee policy, idempotency, and operator fallback—without fluff. The parenthetical is effective for the alternative tool reference.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no annotations and no output schema, the description is remarkably complete. It covers what, who, when, and what happens next, including edge cases (idempotency, operator downtime). No critical gaps are apparent for a single-parameter mutation tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has only 'task_id' with no description (0% coverage). The description compensates by clarifying that the tool operates on an FCFS pool bounty, making it clear that task_id is the unique identifier of that bounty. While not explicitly mapping the parameter, the context strongly implies its role, adding some meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('Close'), the resource ('your FCFS pool bounty'), and the scope ('poster-only'), along with the key effects (refund unfilled budget, stop submissions). It also distinguishes itself from sibling tools by directly naming 'reclaim' as an alternative, making the purpose unmistakable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says 'poster-only', indicating who should use it, and provides an alternative path: 'if the operator is ever down, use `reclaim`'. It also implies the timing ('after the authorization deadline') for the fallback, giving clear decision-making context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_taskA

Get the live state of a task: the task row plus the submissions and per-unit claims the agent (as poster) may see. Poll this after authorize_task until a submission with status 'pending' appears — that is the human's proof, ready for review_submission (approve pays one unit; reject reopens the slot).

ParametersJSON Schema
NameRequiredDescriptionDefault
task_idYes

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description discloses behavioral traits such as the polling behavior, the significance of the 'pending' status, and the visibility scope ('as poster'). It does not detail error handling or side effects, but 'get' implies read-only, and the workflow context adds value beyond a bare 'get'.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the primary purpose and followed by actionable usage context. Every word earns its place with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, but the description explains the return contents at a high level and provides the essential workflow context. It lacks edge-case details like error behavior, but the agent can correctly invoke and use the tool based on the description alone.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has one parameter (task_id) with no description coverage. The description implicitly references the task_id in the workflow ('after authorize_task') but does not explicitly define the parameter beyond its name. Since the parameter is self-explanatory and the workflow context adds meaning, this is adequate but not enhanced.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Get the live state of a task' including the task row, submissions, and per-unit claims. It specifies the agent's visibility and distinguishes it from siblings by tying it to the authorize_task and review_submission workflow.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit guidance is given: 'Poll this after authorize_task until a submission with status pending appears' and then proceed to review_submission. This provides precise when-to-use context and names the follow-up tool, making the alternative clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_categoriesA

List the kinds of quests CYBERDYNE humans can complete — engagement quests (follow, repost, reply, quote, original posts) plus ground-truthing, capture, agent evals, demos, and expert review. Static (no network). Use this to learn the valid category values before posting a quest.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden. It discloses that the operation is static and makes no network calls, reducing risk perception. It also specifies the content returned (categories), which is valuable behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loading the main purpose and adding usage guidance. No redundant information; every sentence serves a purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with zero parameters and no output schema, the description provides all necessary context: what it lists, examples, and when to use it. Completely sufficient for an agent to invoke correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the schema is empty. The description adds meaning by explaining what the output contains, which is more than the schema provides. Baseline for zero parameters is 4, and the description meets this baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists kinds of quests humans can complete, with specific examples. It distinguishes itself from sibling tools by focusing on the valid category values rather than task operations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly says to use it to learn valid category values before posting a quest, giving a clear usage context. Does not mention alternatives, but the purpose is distinct enough that no exclusion is necessary.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

onboardA

BOOTSTRAP (works WITHOUT an existing key — the one tool that self-onboards). Zero-browser: generates a fresh wallet if you don't have one, signs in to CYBERDYNE with it (SIWE), mints your cyb_ agent API key, and saves both to ~/.cyberdyne/config.json (0600) so every other tool here authenticates automatically. No web dashboard, no env vars. Returns your wallet address, the cyb_ key (shown once), and the next steps (fund your WALLET with USDC + a little ETH for gas on Base → post_task → authorize_task → review_submission → close_task). The non-custodial pool freezes the budget directly from your wallet at deploy — there is no platform treasury to deposit into. The same generated wallet auto-signs pool budgets. To bring your OWN wallet instead, use the CLI: npx cyberdyne-mcp onboard --import <0xKEY | mnemonic> (or --create for a fresh one). Idempotent-ish: re-running with a saved wallet reuses it and mints a fresh key.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description fully discloses side effects: generates a wallet, writes config with 0600 permissions, mints a key shown once, and notes idempotency behavior. It also explains the non-custodial budget freezing, providing deep behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but every sentence adds unique value: purpose, process, security, return values, alternatives, idempotency. It is front-loaded with the key 'BOOTSTRAP' identifier and structured logically.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, the description explicitly states what is returned (wallet address, key, next steps). It covers prerequisites, workflow, security, and idempotency, making it fully self-contained for a complex setup tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the schema already provides complete coverage. The description mentions CLI flags (--import/--create) but these are external, not for this tool, so baseline 4 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with 'BOOTSTRAP' and explicitly states it works without an existing key, being the one tool that self-onboards. It details the full onboarding sequence (wallet generation, SIWE, key minting, config save) and clearly differentiates from sibling task-oriented tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly specifies when to use (when no existing key) and provides next steps (post_task → ...), making the intended workflow clear. It also names the CLI alternative for users wanting to import their own wallet, satisfying the when/when-not guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

post_taskA

Fund a quest on the engagement marketplace (an FCFS pool bounty). There is NO direct hire and NO agent-picks-human — every quest is an open bounty: you freeze a budget, ANY eligible verified-X human submits first-come-first-served, and you approve/reject each submission. Funds are NOT charged at post — the budget is frozen later at authorize_task. reward_usd is the total budget; quantity is how many identical units (humans) it pays — each unit holds reward_usd/quantity (each unit must be >= $0.01). Returns the created task (with its id) plus authIntent (the budget authorization to sign) and deployFee { usd, bps, recipient, token } (a SEPARATE non-refundable fee tx) — pass BOTH to authorize_task. The non-custodial POOL escrow (USDC/BNKR/GITLAWB on Base) is the only settlement rail; a non-real token (CYOS) or non-live config has no rail and returns 422 settlement_unavailable.

ParametersJSON Schema
NameRequiredDescriptionDefault
stepsNoOrdered steps / acceptance criteria.
titleYesShort task title.
categoryYes
quantityNoNumber of identical units (default 1).
pay_tokenNoSettlement token: USDC, BNKR, GITLAWB, or a 0x… address for any registered Bankr-launched token (default USDC).
difficultyYes
reward_usdYesTotal reward budget in USD.
descriptionNoWhat you need the human to do.
duration_minYesEstimated minutes to complete.
social_actionNoFor category 'social': the X action a human must perform.
deadline_hoursNo
social_target_urlNoFor category 'social': the x.com post/profile URL the action targets.

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses that funds are NOT charged at post, that budget is frozen later at authorize_task, that deployFee is a separate non-refundable fee tx, that settlement is limited to a non-custodial POOL escrow, and the specific 422 settlement_unavailable error for non-real tokens.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a dense single paragraph with front-loaded purpose, structured qualifiers, and backticked param names. Every sentence contributes essential information—funding model, timing of charges, return payload, fee structure, and settlement constraints—without fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having no output schema, the description fully covers return values (task id, authIntent, deployFee), the required next step (authorize_task), fee details, and error conditions. It also explains the FCFS bounty model and settlement rails, making it complete for a complex 12-parameter tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Description adds significant meaning beyond schema for key params: reward_usd is the total budget while quantity is the number of identical units, each unit holding reward_usd/quantity with a per-unit minimum of $0.01. It also explains pay_token settlement options (USDC/BNKR/GITLAWB) and invalid tokens. Schema coverage is 75%, so remaining params are already documented, but these enrichments are valuable.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb+resource: 'Fund a quest on the engagement marketplace (an FCFS pool bounty).' It clearly differentiates from siblings by noting 'NO direct hire and NO agent-picks-human — every quest is an open bounty,' and clarifies the action is creating a task that returns an id.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit when-to-use context: 'you freeze a budget, ANY eligible verified-X human submits first-come-first-served.' It excludes direct hire/agent-picks flows and explicitly directs the follow-up step: 'pass BOTH to authorize_task.' It also warns about invalid token/config returning 422, which is a clear usage constraint.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

reclaimA

Trustless self-recovery — if CYBERDYNE's operator is ever down, after the authorization deadline you can reclaim your unfilled budget directly from the audited escrow yourself, no platform involvement. This is the DEEPEST non-custodial guarantee: your MCP wallet (the payer) calls the audited AuthCaptureEscrow's payer-only reclaim(paymentInfo) ON-CHAIN itself — CYBERDYNE never touches it. Normally you close_task (operator voids the unfilled remainder back to you); reclaim is the backstop that needs no operator. Requirements: this MCP wallet MUST be the budget's payer (the wallet that froze it), and the on-chain authorizationExpiry must have passed (errors clearly if it's too early, already settled, or you're not the payer). Reads escrow_payment_info from GET /api/tasks/[id], reconstructs the exact PaymentInfo struct, signs+sends on Base, and waits for the receipt. Returns { ok, tx_hash, reclaimed }.

ParametersJSON Schema
NameRequiredDescriptionDefault
task_idYes

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description fully discloses the on-chain behavior: the wallet calls AuthCaptureEscrow's payer-only reclaim(paymentInfo) directly, signs and sends on Base, and waits for receipt. It also mentions what could go wrong (too early, already settled, not payer) and the return shape, giving complete behavioral transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Although lengthy, the description is packed with necessary operational details and is front-loaded with the core promise. Every sentence adds critical context (how it works, requirements, error cases, return value), so it earns its length without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a complex on-chain recovery tool with no output schema, the description covers all essential aspects: mechanism, prerequisites, error conditions, network (Base), and the return structure. It is complete enough for an agent to both select and safely invoke the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema only defines task_id with no description, and schema coverage is 0%. The tool description compensates by explaining that it reads escrow_payment_info from GET /api/tasks/[id], making it clear that task_id identifies the task whose escrow info is needed. It does not explicitly state 'task_id is the task's UUID', but the context strongly implies it, which is sufficient for a single parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('reclaim') with a clear resource (unfilled budget from audited escrow) and distinguishes itself from close_task by framing it as a backstop requiring no operator. The purpose is unmistakable and well differentiated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly states when to use this tool (only after authorization deadline, operator down, as backstop) and contrasts it with close_task as the normal path. It also lists hard requirements (must be payer, expiry passed) and error conditions, providing excellent usage guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

review_submissionA

THE settle tool (poster-only): approve or reject ONE submission on your FCFS pool bounty — this is how you pay humans (there is no direct hire). approve:true → CAPTURE one unit from the frozen budget to the human (full reward, in-token) and consume a slot; approve:false → reject (the slot reopens for the next submitter — no spot-blocking). Poll get_task for pending submissions and review each one. When the budget is consumed (or you're done) call close_task to refund the unfilled remainder.

ParametersJSON Schema
NameRequiredDescriptionDefault
scoreNoRating of the human's work (1–5).
approveYestrue = proof meets criteria → capture one unit; false = reject (slot reopens).
commentNoOptional feedback note on the human.
reject_reasonNoWhy the proof was rejected (approve:false).
submission_idYesThe pending submission to review (from get_task).

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It discloses the key state-changing effects: approve:true captures one unit and consumes a slot; approve:false reopens the slot, preventing spot-blocking. It does not mention idempotency or error handling, but covers the critical consequences.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single dense paragraph that front-loads the purpose and packs in workflow and behavioral detail. No wasted words, though a bit long; the structure could be slightly improved with line breaks but remains effective.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the absence of an output schema, it provides very useful workflow context (how to handle pending submissions, when to close). It doesn't explain return values or failure scenarios, which would round it out, but it is largely complete for a settlement action.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema covers 100% of parameters with descriptions. The description reinforces approve semantics and submission_id source, but adds no new parameter details beyond schema, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states this is 'THE settle tool' for approving/rejecting a submission, with a specific verb and resource. It distinguishes itself from siblings by explaining it is the payment mechanism and referencing get_task/close_task for workflow.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly says poster-only, describes when to use (poll get_task, review each submission) and when to use alternatives (call close_task when budget consumed). It also states 'there is no direct hire' to prevent misuse.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

A4.6/5.0
Disambiguation5/5

Each tool targets a distinct phase of the bounty lifecycle (setup, create, fund, monitor, review, close, recover), with no overlapping purposes. Even close_task and reclaim, both returning funds, are clearly differentiated as operator-mediated vs trustless fallback.

Naming Consistency4/5

Most tools follow a consistent verb_noun pattern (close_task, post_task, get_task, authorize_task, review_submission, list_categories), but reclaim and onboard are single verbs, creating a minor inconsistency. The style is still readable and predictable.

Tool Count5/5

8 tools is well-scoped for a non-custodial bounty workflow, covering the full journey from wallet onboarding to task creation, funding, review, closure, and recovery. Each tool earns its place without being overwhelming.

Completeness5/5

The tool surface covers the entire lifecycle: onboard (setup), list_categories (discovery), post_task (create), authorize_task (fund), get_task (read), review_submission (approve/pay), close_task (close), and reclaim (recovery). No obvious gaps or dead ends for the intended workflow.

Maintenance

ActivityStale
ResponsivenessUnresponsive

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    AI-to-AI economic marketplace with on-chain USDC escrow on Base L2. Agents browse skills, hire each other, manage jobs, release payments, and handle disputes via AI Judge. 15 MCP tools, reputation scoring.
    15
    3
    MIT
  • F
    license
    A
    quality
    Not graded
    maintenance
    Trust infrastructure for AI agents on Base. DEX Spread Oracle (live Uniswap V3 prices), on-chain escrow, insurance pool, and collective knowledge base. 7 smart contracts. Pay-per-query via x402 micropayments in USDC.
    6
  • F
    license
    Not graded
    quality
    B
    maintenance
    Settlement rails for AI labor — USDC escrow on Base Mainnet, 1% protocol fee, designed for autonomous agents. 10 MCP tools covering the full escrow lifecycle: * Quoting calldata for create-intent, submit-proof, release-funds (broadcast gated) * Single-call x402 payment binding (replaces the 5-step x402 dance with one HMAC-signed POST) * Server-side reputation from on-chain event scan * Li

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Cyberdyne-OS/cyberdyne-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server