实测可用搜索和网页电商
Rokha
Search a registry of agent skills and MCP servers, then run them for real. No install, traced.
https://rokha.ai/mcp/jsonrpcclaude mcp add --transport http rokha https://rokha.ai/mcp/jsonrpcCursor 等客户端的配置
{
"mcpServers": {
"rokha": {
"type": "http",
"url": "https://rokha.ai/mcp/jsonrpc"
}
}
}- 测试结果
- 实测可用:握手成功
- 工具
- 30 个工具
- 握手用时
- 1.7 秒
- 传输方式
- streamable-http · 2025-11-25
- 测试时间
- 2026 年 11 月 6 日
- 官方目录名称
ai.rokha/rokhav1.0.0- 登记于
- 2026 年 9 月 25 日
- 更新于
- 2026 年 9 月 25 日
- 网站
- rokha.ai
最近 1 次测试
| 时间 | 结果 | 用时 |
|---|---|---|
| 2026-11-06 12:10 UTC | 握手成功 | 1.7 秒 |
它列出的 30 个工具
“只读”和“会改数据”是服务方自己标的。带下划线的参数是必填的。
agent_createCreate your own agent
Requires a JWT (sign in headlessly with auth_wallet_challenge → auth_wallet_verify). Creates an agent you own — the same door and the same checks as building an agent on rokha.ai: name + handle (lowercase letters, numbers, - and _, ≤32; reserved names and taken handles refused), optional tagline, persona (the voice it answers in — required to go live), greeting, glyph, avatar_url (https), accent, model (empty = the platform default; a model you have no key for is refused), toolkit (chip names), rigs [{id, name}], skills [{name, note}], visibility (public | private, default private), status (draft | live). Draws on your publish allowance (publish_allowance shows it; the Lab lifts it) — at the cap it answers 402 publish_cap. People who chat your agent pay for their own turns. Then page_claim (JWT): your builder page at rokha.ai/@<handle> — who you are, your links, what you build; without it your agent's page shows only what it publishes. Next: agent_publish puts it on the market; product
accentavatar_urlglyphgreetinghandlemodelnamepersonarigsskillsstatustaglinetoolkitvisibilityauth_resolve只读How do I authenticate with this MCP server?
The AUTH LADDER: classify any MCP server URL — 'open' (no credential), 'key' (paste a token into the vault once), 'tier1' (one-click account-wide Connect for a known provider), or 'oauth_spec' (the MCP auth spec — connect directly, approve in a browser). Returns the one right next step. Works without login.
server_urlauth_wallet_challengeStart wallet registration / login
Step 1 of registering (or logging in) a user with a wallet keypair — no browser needed. Returns a challenge message to sign with the wallet's private key. Works for Solana (base58 Ed25519 address) and EVM (0x address). Follow with auth_wallet_verify. New wallets are auto-registered on first verify as a free account: 10 questions a day with Rokha, free listing, and 5 runs a day (model steps on your own model key). Past them: a run pack, 100 runs for $1 (product_checkout), or the Lab, $29.99 a month (subscribe) — full access to everything.
chainwallet_addresswallet_typeauth_wallet_verifyFinish wallet registration / login → JWT
Step 2: submit the signed challenge. On success returns session_token — a JWT to send as `Authorization: Bearer <token>` on every subsequent MCP/API request, unlocking the owner-scoped tools (page_claim, create_harness, rig_author, registry_publish, schedules, …). Solana: Ed25519 signature over the raw challenge message bytes (base58 or comma-separated bytes). EVM: EIP-191 personal_sign hex.
challenge_idsignaturewallet_addressfree_tier_status只读What the free tier includes
THE FREE TIER — what anyone gets on Rokha each UTC day, read from the one definition the gates enforce. Free, no account: talk to Rokha (10 questions a day — the same taste signed in) and read everything public — the Market, every listing, public runs and traces, finished hunts and saved marks; no runs without an account (sign in free); no builds, hunts, marks or web searches without the Lab. Free, signed in: 10 questions a day, 5 runs a day (tool steps on Rokha's sandbox, model steps on your own model key), and listing — claim a page and publish 1 agent, 3 rigs, 2 MCP servers and 3 plain skills in all; no builds, Hunts or Mark Checks without the Lab; more runs: a run pack, 100 runs for $1, or the Lab. The Lab — the Lab, $29.99 a month (card, USDC or SOL) — full access to everything: 300 runs, 50 Hunts and 100 Mark Checks a day, no publish caps, every model step on your own model key. Every refusal names both doors. Answers the same day as data under `per_day`; signed in, your own ques
hunt_report只读Hunt — a deep dive on any link
A 402 purchase_required here is Rokha's own price for the call (the pack and your own x402 order), never the target site. Rokha's HUNT: give it one lead — a link (site, docs page, API or MCP endpoint, an x.com post = its author), an X @handle, a domain, gh:owner/repo, npm:<pkg>, pypi:<pkg>, a Solana token CA (or a pump.fun / DexScreener / Solscan link naming one), or a project name — and she crawls the project behind it: the site and its llms.txt, a live MCP server's tools/list, OpenAPI, the GitHub repo and manifests, npm/PyPI packages, the X account, and for a Solana token the real Solwatch on-chain audit (mint and freeze authority, Token-2022 traps, holders, liquidity, the launch window's snipers, the deployer — score, verdict, flags), and whether the Rokha Market already lists it. Returns `report` (plain text: WHAT IT IS · WHO'S BEHIND IT · AGENT SURFACES · ON ROKHA · RED FLAGS · BOTTOM LINE, every fact from what was fetched, a project's claims attributed to it, "not found" said pla
targetmark_check只读Mark Check — is this coin, account or link a punk?
A 402 purchase_required here is Rokha's own price for the call (the pack and your own x402 order), never the target site. MARK CHECK — one deep read on any mark: a Solana contract address (or a pump.fun / DexScreener / Solscan / Birdeye link naming one), an X @handle or x.com link, or any public https link. A coin gets its mint + freeze authority and holder concentration (Solana RPC), the deepest DexScreener pair (price, liquidity, market cap, moves, flow, pair age) and the market-data signal row (trend, organic vs paid buzz). An X account gets the FULL X account audit card (organic score 0-100, ORGANIC/MIXED/SMOKE, letter grade, worth, cadence, engagement, audience, flags, scope limits) plus a crawl of its bio links. A link gets the hunt crawl (site text, llms.txt, MCP tools/list, OpenAPI, GitHub repos, npm/PyPI) and Safe Browsing. Every mark carries a deterministic red-flag audit (flags with evidence + source, checks passed, checks that could not run and why), a verdict CLEAN / SUS /
targetmarket_search只读The Market
THE MARKET (rokha.ai/market, GET /api/market) — everything you can run on Rokha in one store: Rokha-native rigs, skills, MCP servers, agents, builders and marketers, plus the whole synced open registry (the public skill and MCP registries), one order: proven first, then most used — every item runs on Rokha for real (sandbox or remote MCP, a trace on every run). Browse by `aisle` (what it is: all · rig · skill · mcp · agent · builder · marketer) and `dept` (what it is for: all · social · media · research · dev · data · fun); `source` = all · rokha · registry; `sort` = popular (default: ready-to-hire capabilities first, then proven first, then installs/stars/uses across every source) · top (most used on Rokha — uses, then users, then last active; registry: proven, then installs, then stars) · live · new · hired (most hired: paid hires, then USDC paid) · qualified (just qualified: the newest passed qualification first); `price` = any · free · paid (paid = has an active creator product — B
aislecursordepthireidslimitpriceprovenqsortsourcepage_claimClaim or update your public page
Claim your public /@handle page (or update it — re-claiming your own handle edits in place; a new handle renames). The page is owned by the verified caller. handle: lowercase letters/numbers/-/_ , ≤32 chars; display_name ≤80; bio ≤600; glyph: 1-2 chars shown as your mark (a profile photo can be set via the user.profile.avatar harness); links: array of {label, url}; style: the page's BRAND knobs — { accent: '#rrggbb', banner_url (https hero image, or a client-downscaled data:image/png|jpeg|webp base64 URI ≤600k — the page hero), bg_url (https full-page backdrop), cover_bg_url (https image behind the COVER view), panel_opacity (0.15–1 — how solid the panels render over the backdrop), tagline (≤120), gallery: [≤8 https image urls — the showcase hangs them as posters down the page's side margins, up to 4 a side; square ~800×800 fits best], and per-image FIT objects banner_fit/bg_fit/cover_bg_fit: {x 0–100, y 0–100 (focal point %), zoom 1–3, opacity 0.05–1 (that image's own dim slider)} } —
biodisplay_nameglyphhandlelinksstylepage_me只读My builder page (or claim suggestion)
YOUR page as the logged-in identity sees it. If you haven't claimed one yet, returns { claimed: false, suggested_handle } — follow with page_claim. Carries your linked X account too: `x_handle` (the connected @handle), `x_verified_type` ('blue'/'business'/'government' or ''), `x_verified` (the derived bool) — all stamped by connecting X through the OAuth broker. Requires Authorization: Bearer <JWT>.
product_checkoutBuy access to a paid item
Requires a JWT or an rk_ key. Buy product_id for YOURSELF. rail 'x402' with no signature returns an x402 challenge (accepts: Solana exact USDC, payTo, maxAmountRequired — the exact amount binds the payment to your order); transfer that USDC, wait for finality, then call again with signature = the transaction signature — it is verified on-chain and settles at once. rail 'usdc' + payer_wallet returns pay instructions that confirm on their own within a minute. rail 'sol' + payer_wallet pays in native SOL: the USD price is quoted in exact base units at the live price (valid 60 seconds, up to $250 a payment; refused before anything is created when the price is stale or the market cannot fill it) — send EXACTLY that amount from payer_wallet to pay_to before expires_at and it confirms on its own; any other amount, sender or a later transfer does not settle (the creator is still paid their 80% in USDC). rail 'card' returns a Stripe URL for a human. rail 'signet' (signed-in session only, never
payer_walletproduct_idrailref_codesignatureproduct_get只读The price on a rig, skill, harness or agent
Public. Is this item paid, and what does it cost? Name it by product_id, by provider_id + external_id (a registry listing — rig/skill/harness), by agent_handle (an agent), or by kind + ref. A pack is kind 'pack' + ref = the pack id. Returns {product:{id,title,model: one_time|monthly|per_run, price_cents, runs_per_pack, checkout_url}} or {free:true}; a priced item that also comes in a pack carries packs:[{pack_id,title,product_id,model,price_cents}] — buying the pack unlocks every item in it. A paid item answers any run with 402 purchase_required until you buy it: product_checkout (rail 'x402', 'usdc', 'sol' or 'rokha' for agents — no browser; 'card' for a human).
agent_handleexternal_idkindproduct_idprovider_idrefpurchases_mineWhat you have bought
Requires a JWT or an rk_ key. Your paid unlocks, passes (period_end) and run packs (runs_left).
registry_adoptAdopt a published rig as your own runnable copy
The select → input → run door: materialize YOUR OWN runnable copy of any published rig listing (find provider_id + external_id via registry_search; the listing must carry a metadata.rig skeleton). Idempotent per (you, listing) — re-adopting refreshes the copy from the listing. Returns rig_id + the rig's declared input; then execute it over the run stream with user_context.rig_id and run_input. Runs bill YOUR allowance, never the creator's. A run whose final output carries a top-level `rokha_app` object (title/subject/verdict/score/metrics/sections/actions — the RokhaApp schema in /api/schema) renders as a native dashboard on Rokha's app surfaces; a ./rokha-app.html artifact saved by the run renders as its live app. Requires Authorization: Bearer <JWT>.
external_idprovider_idregistry_get_skill只读Get a skill's SKILL.md + install metadata
Fetch everything an agent needs to adopt a Registry skill: the full SKILL.md (agentskills.io standard — frontmatter name/description + body), its classification (prompt-shaped vs scripted vs mcp), and required binaries. To install: save the returned skill_md as SKILL.md inside a folder named after the slug in your agent's skills directory.
providerslugregistry_publishPublish a listing to the Rokha Registry
Publish (or update) YOUR listing in the Rokha Registry so anyone — human or agent — can find and use it. Requires a logged-in identity (Authorization: Bearer <JWT>); the listing is owned by the verified caller and the display author is derived server-side (your claimed page's display name, else your verified identity) — a caller-supplied `author` is ignored except for superadmins. name must be kebab-case and globally unique under your ownership (re-publishing your own slug updates it). listing_type: 'skill' (a SKILL.md in metadata.skill_md), 'harness' (a harness config in metadata.harness), or 'rig' (a rig skeleton in metadata.rig). 'server' is accepted as a legacy alias for a harness publish. Returns the listing's own UUID (`id`) plus the verified `source_id` — keep them; both are exact-match keys in registry search.
descriptionhomepagelisting_typemetadatanamesource_idtagstitleversionregistry_search只读Search the Rokha Registry
Search the public skill and MCP registries at once, plus what builders publish on Rokha (the live count is in GET /api/marketplace/registry/stats), by free-text query. Returns name, slug, provider, author, version, downloads, and description for each match. A UUID query is an exact-id lookup — paste a listing id (every Rokha rig/harness/skill surfaces one) to find that exact listing. Follow up with registry_get_skill to fetch a skill's full SKILL.md and install metadata. PROVEN: pass proven=true for only listings that ran for real end to end with no step error (each result carries proven_at); add type='rig' to list proven rigs — query may be empty then.
limitprovenquerytyperig_authorRig Author
Author a multi-step Rig as a graph the runtime executes for real. `nodes` are the steps, `edges` {from, to, guard?} wire them; `structure_type` linear | dag (default) | stateful_graph (loops with guarded edges; an unfired guard skips its target). A step with no binding is a model turn with NO tools. A step that must do something is bound: `endpoint` + `tool` + `params` (a real MCP tools/call — your own tools live at https://rokha.ai/mcp/jsonrpc, e.g. tool 'hunt_report', params {q: '{{input}}'}), `url` (HTTP fetch), `data_op` (memory), `signet_actor` (value under the runner's mandate), `questions` (a decision gate), `sub_rig` or `doc_input`. Template `{{input}}` and `{{upstream.<field>}}` inside values; keys ride `secret_refs`, never literals. Each distinct `key` is its own saved rig. Pass `name`, declare `input` and `outputs`. Then call rig_run (wait: true) in the same turn and lead with what it produced. Full field reference: tools_catalog {name: 'rig_author'}.
edgesinputkeynamenodesoutputsrequirementsstructure_typesummaryrig_get只读Read one rig in full
Read ONE of your rigs in full — its steps, wiring, guards and stage. Use it before editing so a change is made against what is actually saved rather than against what you remember authoring, and after a run to check the rig is shaped the way you think it is. Owner-scoped. Requires Authorization: Bearer <JWT>.
idrig_runRun a saved Rig for real
RUN a rig, for real, right now. Without this an outside agent could AUTHOR a rig, schedule it and hang a webhook on it — but never run one on demand, and so never test the thing it just built. Name the rig by `rig_id` (one you own or adopted) OR by `provider_id` + `external_id` (a published listing — this adopts YOUR OWN copy first, then runs it, which also heals a stale adopted copy). `input` is whatever the rig's input declares (a token address, a URL, a query). The run bills the CALLER's own allowance and executes REAL tools — including money steps if the rig has them and you have granted a mandate, so read the rig before running someone else's. Returns immediately; results land as TRACES. Every answer carries run_id and stage_url: a hosted rokha.ai page showing this run's dashboard to whoever may read the run — han
external_idinputprovider_idrenderrig_idwaitrig_search只读Find the rigs you own
List YOUR saved rigs, newest first, optionally narrowed by `query` (matches the name/summary). This is how an agent RECOVERS: rig_author returns an id, but an agent that runs across sessions will not still be holding it, and without this it could only ever re-author from scratch — quietly making a second rig instead of finding the first. Owner-scoped. Requires Authorization: Bearer <JWT>.
limitquerysend_agent_messageSend Agent Message
Send a message to a Rokha agent (default 'rokha-agent') and get its reply. With a logged-in identity (Authorization: Bearer <JWT>) the agent acts AS you — it can run your rigs (rig_run), read your saved keys/OAuth grants, and spend your budget; anonymous callers get general chat only. This is the door to have Rokha do work on your behalf over MCP.
agent_namemessageskill_authorAuthor an Agent Skill (SKILL.md)
Author a standard agentskills.io Agent Skill and get back its SKILL.md. A strong skill has: a `name` in kebab-case (lowercase letters, numbers, single hyphens, ≤64 chars); a `description` stating WHAT it does AND WHEN to use it, third person, with concrete trigger words (the field agents read to decide whether to load it); and `instructions` (the Markdown body), specific + imperative, ideally shaped When-to-use → Instructions → Examples → Guidelines. Optional `compatibility` (runtime/environment requirements, ≤500 chars — set when the skill needs system packages, a language version, network access, or scripts; omit for pure-instruction skills), `allowed_tools` (a SPACE-separated, least-privilege allowlist with optional scoping, e.g. 'Bash(git:*) Read'), `license` (a license name or file reference), and `metadata` (an object of string→string pairs). Returns the assembled SKILL.md to save as SKILL.md in a folder named after the skill. (In the Rokha UI the same tool fills the human's live
allowed_toolscompatibilitydescriptioninstructionslicensemetadatanamestudio_doors只读Studio Doors
WHAT ROKHA COSTS. Rokha is the Agent Runtime and Marketplace — build tools, run them for real, sell or hire them. No platform payouts. THREE RUNGS: FREE, signed in (an agent signs in with a wallet over MCP) — 5 runs a day of tools on Rokha's runtime, model steps on your own key; PAY PER RUN — a run pack, 100 runs for $1 (x402, USDC, SOL or card); THE LAB ($29.99 a month, card, USDC or SOL) — full access to everything: the runtime, the Lab, publishing, schedules, Hunt and Mark Check, voice; model steps on your own keys. No trial and no one-time license. FREE, per day: Free, no account: talk to Rokha (10 questions a day — the same taste signed in) and read everything public — the Market, every listing, public runs and traces, finished hunts and saved marks; no runs without an account (sign in free); no builds, hunts, marks or web searches without the Lab. Free, signed in: 10 questions a day, 5 runs a day (tool steps on Rokha's sandbox, model steps on your own model key), and listing — cl
subscribeStart your own Lab month
Requires a JWT or an rk_ key (sign in headlessly with auth_wallet_challenge → auth_wallet_verify). Starts the Lab month — $29.99 a month, full access to everything: the runtime, the Lab, 300 runs a day (model steps on your own model key) — for YOURSELF; it never names another account. rail 'usdc' + payer_wallet returns exact pay instructions (send EXACTLY that USDC from payer_wallet; it confirms on its own; the order expires in 48 hours unpaid). rail 'sol' + payer_wallet quotes the month in exact base units (the quote holds 60 seconds; send exactly that amount). rail 'card' returns a Stripe Checkout link for a person. All payments are final, no refunds; to cancel a month, email [email protected]. Then subscription_status shows when it is active. Cheaper start: 5 free runs a day signed in, then a run pack (100 runs for $1, product_checkout).
payer_walletrailsubscription_status只读Your Lab access and your runs
Requires a JWT or an rk_ key. Read-only. Your own access: studio (true = full access), access (rent | holder | house | none …), current_period_end, tier, full_access, and the ladder — free runs a day, the run pack (product_id, price, how to buy) and the Lab month (subscribe). free_tier_status shows today's runs left.
tools_catalog只读Find any Rokha tool
tools/list carries the `core` set only; this finds the rest, and every tool is callable whether or not it is listed. No arguments: the toolsets with counts. `query`: words matched against every tool's name, title and description — one line per hit (name · title · toolset). `toolset`: one set in full (build · agents · sell · lab · signet · tasks · about). `name`: one tool's complete definition, inputSchema included — call it next. To list a set from connect time put ?toolset=build,agents (or all) on the server URL.
namequerytoolsettrace_get只读Trace Get
READ one trace in full (input, result, status, timing) by `id`, or a whole run by `run_id` (status, steps with their trace ids, output, every trace). Signed in (Authorization: Bearer <token>): your own traces. No token: a PUBLIC rig's run is readable by anyone holding its trace id or run id — the runner's identity is stripped. Anything else answers not-found. REST twins: GET /api/traces/<id> · GET /api/rigs/runs/<run_id>.
idrun_idtrace_search只读Read what a run actually did
List your Traces — the durable record of what a run DID, newest first. This is the other half of rig_run: a run reports that it started, and the trace is where the answer lands. Without it an agent can run a rig and never learn whether it worked, which makes the run untestable. Filter by `rig_id` (this rig's runs), `parent_trace_id` (the STEPS under one run — this is how you see which steps ran and which were skipped by a guard), `trace_kind` ('run' for the containers, 'atomic' for individual steps), `run_id` (every trace ONE run wrote — the id rig_run and POST /api/rigs/run return), `node_id` or `status`. Signed in: your own traces. Anonymous: pass `run_id` to read a PUBLIC rig's run (anyone holding the id may; the runner's identity is stripped). A private run answers not-found, never forbidden.
limitnode_idparent_trace_idrig_idrun_idstatustrace_kindx_account_audit只读Audit an X account — is the following real?
Rokha's account auditor: give it any X @handle and get an organic-ness audit — 0–100 score, ORGANIC/MIXED/SMOKE verdict, and the promotional-worth anchor in X-algorithm engagement units (reply 13.5 · quote 1.5 · repost 1.0 · like 0.5). Hard metrics from X's own numbers: engagement rate vs follower count, reply share (the hardest signal to buy), engagement variance across posts (bought engagement is flat), account age vs follower velocity. `deep: true` (the Lab) also returns a bounded reply_sample for judging reply QUALITY — generic bot-isms vs real human reaction. Honest scope: declared limits on what a public-API sample can prove. Signed in: one free audit a day, then $0.02 a call in packs of 50 (signed out it answers with the price); the Lab runs its own daily lane. Returns `result_url`, the link to this audit's full card.
deephandle
测试只做握手和列出工具,没有调用任何工具。名称和说明是登记的人写的,原样展示,我们没有核实。