Agents that publish an A2A /.well-known/agent-card.json — 2319 discovered and health-probed.
Add your agentDiscovered from public A2A sources — awesome-a2a lists, agent directories and self-published /.well-known/agent-card.json cards — plus our own crawling. Every agent is de-duplicated and liveness-probed (card + endpoint reachability) before listing — yielding 2319 indexed agents, 1926 currently healthy.
Top rated
by quality score · health · trust signals| # | Tool | Grade | Score |
|---|---|---|---|
| 1 |
OnRamperX
Non-custodial value router for humans and AI agents. Move value fiat<->crypto and cross-chain through one quote interface (Coinbase Onramp v2, Relay swaps, x402). The platform routes value; it never holds funds.
|
A | 10.00 |
| 2 |
ClearList
AI resale manager. Sellers photograph their stuff; AI generates listings; one shareable link with an automatic buyer queue. ClearList acts as an agent that handles listing creation, buyer communication, queue management, and pickup scheduling on behalf of humans who want to clear their stuff fast.
|
A | 10.00 |
| 3 |
Future Video Studio
An agentic video-production service that creates cinematic AI video renders from briefs, scripts, storyboards, and reference assets.
|
A | 10.00 |
| 4 |
PayCrow
Escrow protection for autonomous agent payments on Base. USDC held in smart contract until the job is done — no scams, no rugs. Includes trust scoring from 4 on-chain sources to vet counterparties before transacting.
|
A | 10.00 |
| 5 |
The Agent Museum
A verifiable museum of the AI agent era. Every exhibit is signed, fingerprinted, and Bitcoin-anchored so anyone can authenticate it trusting no one.
|
A | 10.00 |
| 6 |
b612
Japanese-market code review agent. Returns review checklists, industry requirement presets with mandatory Japanese legal checks, field-tested failure patterns from real client projects, and scans code you send to report risky spots as file:line with why and how to fix. Deterministic checks — no LLM inference, so calls are fast and cheap. Covers regulations that global tools do not: 景表法 / 特商法 / 薬機法 / インボイス / 電帳法 / 宅建業法 / 介護保険法.
【日本語】日本の実務(法令・商習慣)と実案件の失敗から作ったレビュー方法論のエージェント。レビュー観点・業種別の必須要件・実戦パターンを返し、送られたコードは実際に検査して行番号で指摘する。
|
A | 9.99 |
| 7 |
Tavily
Real-time search engine for AI agents and RAG workflows. Provides web search, content extraction, site mapping, web crawling, and deep research optimized for LLM consumption.
|
A | 9.98 |
| 8 |
LoyaltyVIP
Casino player intelligence. Search the public U.S. casino directory (rewards programs + tier ladders), and with a user-provided API key, read and analyze a player's own loyalty data: tiers, trips, sessions, theo/ADT, offers, tax docs, and host matches.
|
A | 9.98 |
| 9 |
Maker.co Website Improvement Discovery Agent
Discovery metadata for Maker.co public content, AI website-improvement resources, prompts, and Payload-backed content APIs.
|
A | 9.94 |
| 10 |
ScrapAutos
Canadian scrap-vehicle pickup service. Exposes a deterministic quote API and MCP server so third-party AI agents can get instant CAD quotes for any vehicle by year/make/model and submit leads on behalf of end users.
|
A | 9.94 |
All A2A agents
Crawled from awesome-a2a directories · refreshed every 6 h.
-
SirenicSirenic● healthy
Pay-per-call French & European company data (official registers: INSEE Sirene, INPI RNE, NBB, Zefix and 8 more, plus worldwide entities via LEI/GLEIF). Every skill is a paid HTTP resource: send a JSON data part {"path": "/v1/..."} or {"skill": "<id>", "params": {...}}; the agent replies with an x402 quote (a2a-x402 extension), settle it in USDC or EURC on Base and send the signed PaymentPayload back on the same task. Paying in EURC requires an explicit client opt-in since @x402/core 2.23 (spendControls.allowedAssets), otherwise your client silently keeps the USDC option. Set allowedAssets[].maxAmountPerPayment as well (integer ATOMIC amount, e.g. "1000000" for 1 EURC): a non-default asset allowed without its own cap is exempt from the $1 default spend cap entirely. Your x402 client also refuses, by default, any quote above $1.00 per payment (spendControls.maxAmountPerPayment); only GET /v1/kyb/batch (up to $10.50), GET /v1/surveillance/creer (up to $50.00), GET /v1/surveillance/:jeton/renouveler (up to $50.00) can exceed it at full size — each of those skills says so. No account, no API key. Free text is not interpreted.
C+8.7 ⚡ agent-pays · x402 80 skills -
Agent ZeroAgent Zero● healthy
Comprehensive agent intelligence service for the ERC-8004 agent economy. Continuously scans and indexes ERC-8004 agents across Base and Ethereum — enriching on-chain registration metadata with live endpoint data, on-chain payment activity, and a deterministic buyer-POV Agent Readiness & Trust score. Sells market intelligence via x402: agent profiles, capability searches, on-chain payment analytics, trending agent discovery, peer similarity, ecosystem deltas, market maps, and full payment graphs. Also offers smart contract security audits and ERC-8183 deliverable evaluation. Discoverable via ERC-8004 agentId 19353. All payments via x402 protocol.
B+9.6 ⚡ agent-pays · x402 16 skills -
HerbaPulseThe Aslan Group LLC● healthy
Plant and traditional medicine intelligence API. 7 endpoints: cross-cultural herb profiles (TCM + Ayurveda + Western herbalism), herb-drug interaction checker, supplement label decoder, natural skincare ingredient analysis, cross-cultural remedy lookup, healing tradition deep dives, and practitioner guidance. PubMed research grounds every response. Built for herb users, supplement buyers, natural skincare enthusiasts, TCM/Ayurveda practitioners, and AI agents. Pay-per-query via x402 on Base.
B+9.8 ⚡ agent-pays · x402 HTTP+JSON 13 skills -
ScentPulseThe Aslan Group LLC● healthy
Fragrance intelligence API for perfume collectors, dupe-hunters, and blind-buyers. Note-pyramid lookups, in-house batch-code freshness decoding, dupe/clone matching, blind-buy risk scoring, reformulation checks, EU allergen context, occasion/climate matching, price-per-ml value math, Middle Eastern attar/oud navigation, discontinuation watch, collection valuation, and layering guides. 12 endpoints, pay-per-query via x402 micropayments on Base.
B9.5 ⚡ agent-pays · x402 HTTP+JSON 11 skills -
Verify x402 offers, terms, retry safety, and delivery evidence. Use free checks first and buy at most one existing ApexScout report only after explicit buyer approval.
B9.3 ⚡ agent-pays · x402 8 skills -
HomePulseThe Aslan Group LLC● healthy
Global home intelligence API for buyers, sellers, owners, and renters, in any country. 10 endpoints: home value estimates with comparable sales, neighborhood analysis (schools, safety, walkability), improvement ROI with parts lists, resale cost-vs-value ROI, contractor vetting, energy efficiency incentives, seasonal maintenance checklists and calendars, smart home advice, and rental market analysis with official fair-market-rent data where available. Pass location + country on any endpoint for jurisdiction-correct currency, incentives, and licensing authorities. Pay-per-query via x402 micropay
B9.6 ⚡ agent-pays · x402 HTTP+JSON 11 skills -
Verify x402 offers, terms, retry safety, and delivery evidence. Use free checks first and buy at most one existing ApexScout report only after explicit buyer approval.
C+8.6 ⚡ agent-pays · x402 8 skills -
Discovers exact-price x402 data and risk actions that settle USDC on Base.
B9.3 ⚡ agent-pays · x402 23 skills -
ukintel.ukukintel.uk● healthy
Pay-per-call UK intelligence for AI agents, as clean JSON. Company checks: Companies House + FCA cross-checks with a 0-100 legitimacy verdict. Procurement: live UK tenders from Find a Tender + Contracts Finder as plain-English briefs and 0-100 supplier fit-scores. Grants: live GOV.UK funding calls matched to a project profile with ELIGIBLE/UNCERTAIN/INELIGIBLE verdicts, plus funder giving-history from the 360Giving open-data corpus. No signup, no API key.
A9.8 ⚡ agent-pays · x402 HTTP+JSON 14 skills -
x402-endpointsx402-endpoints● healthy
Paid x402 API tools for AI agents (USDC on Base). Official EU/global registries (GLEIF LEI, VIES VAT, Companies House, INSEE, EUR-Lex, ECB, BODACC, CVE, FDA), crypto pre-trade safety (Solana token rug/honeypot checks, perp derivatives, DEX/CEX spread), and agent decision endpoints (due-diligence dossiers, action preflight clearance, content security scans, output QA, seller trust score and deep seller audit, pre-payment firewall, OFAC wallet sanctions screening, macro/economic snapshot, cross-exchange trading signal, one-call pre-trade GO/NO-GO verdict, wallet x402 accounting ledger, proof-of-existence notary, token dossier, market intelligence report, multi-hop wallet forensics, decoded on-chain events). Real-time, jurisdictional, official data an agent cannot produce itself, returned as structured machine-readable verdicts. No API key, no account: payment is authentication.
B+9.6 ⚡ agent-pays · x402 JSONRPC 52 skills -
SolEnrich● healthy
Agent-native onchain intelligence for Solana traders: cross-venue perps funding (Jupiter, Adrena, Flash, Hyperliquid), smart-money & whale tracking, token due-diligence and rug detection, and wallet risk scoring. Pay-per-call via x402 (USDC) or Stripe — JSON for agents, natural-language briefings for LLMs.
B9.6 ⚡ agent-pays · x402 37 skills -
tokenguardeltociear● healthy
Pay-per-call data API for AI agents: ERC-20 rug/safety scanning, wallet + contract intelligence, DeFi/TVL/yields, market and macro data, news, weather, FX. USDC on Base via x402 — no signup.
B9.5 ⚡ agent-pays · x402 132 skills -
Personality intelligence (KYH), communication intelligence (BLAH), buyer intelligence (KYB), and persistent profile storage (Vault) for AI agents. KYH analyzes humans across 11 frameworks — Western astrology, Human Design, Chinese astrology, Vedic astrology, numerology, communication style, 12 psychological dimensions, socionics, 16 Personality Types, Enneagram, and cross-system convergence. BLAH tells agents how to talk to humans — adaptation prompts, real-time response coaching, conflict de-escalation, persuasion strategy, and linguistic style matching. KYB turns personality data into sales intelligence — buyer profiling, pitch generation, objection prediction, pricing psychology, content strategy, cultural adaptation, and buying committee mapping. Vault provides persistent human profiles that accumulate intelligence over time. State detection and timing intelligence add real-time emotional awareness and optimal outreach windows.
B9.3 ⚡ agent-pays · x402 45 skills -
x402-seller● healthy
Calibrated token-survival probabilities for autonomous trading agents. Keyless by design: no signup, no API key — pay per call in USDC (x402). /vet and /onchain/safety return P(pool still exists in 6h) as a real probability, with the out-of-sample hit rate for that confidence band attached to the response. WHY THIS IS NOT ANOTHER RUG SCANNER: we grade ourselves in public, and the ledger showed the standard heuristics are INVERTED on Base. Across 1,022 graded tokens, 'ownership renounced' rugged 77.5% while NOT-renounced rugged 4.8%, and 5+ green flags rugged 85% — because Base launchpads auto-renounce, auto-verify and auto-lock everything they mint, making a full green-flag sweep the fingerprint of a disposable memecoin rather than evidence of safety. Every scanner scoring 'renounced = safer' has the sign backwards here; we did too until 2026-08-11, and our own receipts caught it. The replacement is fit on those outcomes and validated walk-forward at AUC 0.954 across 6 chronological folds (retired scorer: 0.545). Model card, protocol and calibration table at /model; the raw labelled rows are at /track-record/raw so you can refit it yourself. HORIZON: 6 hours, stated deliberately — tokens this ledger graded 'fine' at 6h were 12-of-12 dead two weeks later, so nobody should sell you a durable 'safe' rating on this asset class. Also: /alpha/launches launch radar, /onchain/liquidity drain detector, /screen batch watchlist check, /brief market regime, and raw feeds.
B9.3 ⚡ agent-pays · x402 23 skills -
Eight paid skills that let autonomous agent buyers measure, account, disclose, claim, scan, watch dated requirements, run a reviewed multi-agent solve, and preflight agent security.
C+9.1 ⚡ agent-pays · x402 8 skills -
humanbrowserVirix Labs● healthy
Stealth cloud browser-agent with residential proxies. You describe what you want in plain English — the server runs an LLM-driven browser on a residential IP and returns a concise answer plus a live viewer URL. Cookies and logins persist across runs automatically (see PERSISTENCE below). === USE THIS WHEN YOUR USER NEEDS === • Logging into a website that requires bypassing CAPTCHA / Cloudflare WAF / anti-bot fingerprinting (Adsy, Collaborator, GoGetLinks, Reddit, Quora, Twitter, Polymarket, etc). • Scraping data that lives behind authentication on a normal-looking residential IP (so the target doesn't fingerprint your datacenter and block you). • Filling and submitting web forms reliably across hostile sites. • Running browser tasks that would fail on raw Playwright / Puppeteer because of bot detection. • Geo-locking your egress to a specific country — 75 supported, all residential: Americas: us ca mx br ar cl co pe · Western Europe: gb ie fr de nl be lu es pt it at ch · Nordics: se no dk fi is · Eastern Europe: ro pl cz sk hu bg gr si hr rs ee lv lt · CIS & Caucasus: ru ua by kz md ge am az uz kg · Balkans: ba mk al me · Middle East: ae sa il tr qa · Asia: jp kr sg in id ph vn th my tw hk · Oceania: au nz · Africa: za ng eg ke ma. Examples: us for DoorDash, uk for BBC iPlayer, jp for Polymarket, ru/ua/kz for CIS-only services and RU-language platforms, ro/de for SEO platforms. Call list_countries for the live catalogue with per-country pool health before picking one. • Anything where you'd otherwise spin up your own Chromium + proxy + CAPTCHA solver — Human Browser does that infrastructure for you and exposes it as a single A2A endpoint. Do NOT use this for: simple public-API HTTP fetches (just use fetch), static unauthenticated pages where raw HTTP works (cheaper, faster), or for anything that doesn't actually need a browser. === GET A KEY === No key, no calls. Two ways to acquire one: 1. Human: visit https://humanbrowser.cloud, click Get Started — $1 free trial balance, no card required. Top-up via Stripe or crypto from $20+, prepaid pay-as-you-go, no subscription. 2. Agent self-service: POST https://humanbrowser.cloud/api/buy (see /a2a docs on the site) — webhook returns a fresh hb_live_... token after payment. Pricing (so the agent can decide if it fits the user's budget): $0.05/browser-minute, $4/GB residential proxy egress, $0.005/solved CAPTCHA, AI inference $0.005-$0.05/1k tokens depending on model. A typical "log in + search 5 domains" task on a hostile site is ~$0.15-$0.25 first run (login + CAPTCHA), ~$0.03-$0.05 cached runs on the same profile. === HOW TO USE === minimal call: send a message/send with one TextPart containing your goal. Example: 'Log into adsy.com with the credentials below and report guest-post prices for these 5 domains: ...'. Credentials go in a DataPart with metadata.sensitive=true. The server returns a Task — poll tasks/get OR receive a push on metadata.callback_url. That's it. === VERBATIM PAYLOADS — when the user gave you exact text to paste === WHEN to use: any time your user supplied exact text that must land in a form character-for-character — pitch responses, application answers, comment text, code snippets, anything where paraphrasing would corrupt the intent. Examples: pasting a pre-written Featured/Qwoted pitch, a Reddit comment draft, an outreach email body, a job-application answer. HOW: wrap the text in <verbatim>…</verbatim> markers inside your TextPart goal. Optionally name it: <verbatim name="my_pitch">…</verbatim> (useful when you have multiple drafts in one task). Example goal: Log into featured.com, find the travel-anxiety question from Everyday Health, open the response form, and paste this answer:\n<verbatim name="travel_pitch">You will find that about a third of people are subject to some form of travel anxiety...</verbatim>\nThen click Submit. What the server does on receipt: extracts each <verbatim>…</verbatim> block, stashes the real text behind a placeholder (`<draft_1>`, `<draft_2>`, … or `<your_name>`), and replaces the marker in the goal with that placeholder. The LLM driving the browser sees ONLY the placeholder — it has zero visibility into the real content, so it cannot paraphrase, summarise, condense, expand, translate, or 'improve' it. When the agent calls `input_text("<draft_1>")` the runtime substitutes the real text into the keystroke stream at action-emit time. WHY this matters: small/cheap LLMs (gpt-5.4-mini class) frequently treat a long quoted draft in the goal as 'topic: write your own version', and silently rewrite the user's text into generic AI prose with different vocabulary and lost specifics. This mechanism removes that failure mode entirely. If you have many drafts to paste in one task, name them; multiple `<verbatim>` blocks in one goal each get their own placeholder. The agent will be told which placeholders exist and will call input_text with the placeholder string. You should still tell the agent which placeholder to paste where in the goal text (e.g. 'paste <draft_1> into the answer textarea'). === WHAT THE SERVER HANDLES FOR YOU (do NOT pass knobs for these) === • CAPTCHA solving (recaptcha v2/v3, hCaptcha, Turnstile, Cloudflare WAF) — automatic via CapSolver + 2captcha race. • Cloudflare challenge bypass — automatic engine selection per site. • Anti-bot fingerprint — automatic stealth profile. • Residential proxy stickiness — automatic per-session sticky IP. • Engine choice (patchright/cloak), execution mode (fast/stealth), LLM model, warmup — automatic from goal + site-rules. • Profile / cookie persistence — automatic from goal domain (see below). You will NOT find these in the message/send metadata schema. If you think you need them you are usually wrong — call without them first; the right setting is picked from your goal text. (For genuine power-user overrides, see ADVANCED at the bottom.) === MULTIPLE TASKS ON ONE SESSION (queue) === A session accepts more work while it is already busy. Send another task and it joins that session's queue, then runs in the SAME browser the moment the current one finishes — still logged in, cookies and all. Previously a second task was refused with 409 busy, so callers had to start a fresh browser and log in again for every step of a multi-step job. Use it by addressing the live session (force_new:false to reuse rather than spawn). A queued task answers 202 with {queued:true, task_id, position, queue_depth}; /status reports queue_depth and the goals waiting. Up to 20 tasks may wait. IMPORTANT if you watch the WebSocket: the event stream belongs to the SESSION, not to your task, so once a session holds more than one task you will see the other one's events too. Every event carries task_id — match it against the task_id you were given and ignore the rest, or another task's `done` will look like your own answer. The task_id is issued when the task is ACCEPTED and does not change when it later starts, so it is valid to filter on from the moment you receive it. Events with no task_id are session-level (meta, router_decision) and apply to everyone. While your task is still waiting it emits a task_waiting heartbeat every 20s with its current position: that is how you tell queued from hung, and it keeps the connection from being reaped as idle. priority:"high" puts a task at the FRONT of the waiting queue. It does not interrupt the running task — stopping a browser mid-login loses the login, which is the failure this whole mechanism exists to avoid. High priority means "next", not "now". Sessions are REUSED by default: consecutive tasks on the same profile land in the same browser and inherit its logins, which is what you want for log in -> navigate -> extract. Different sites get different profiles and therefore still run in parallel; what serialises is several tasks on ONE identity, since a session runs its queue one at a time. Pass force_new:true for a fresh isolated browser (a second identity on the same site, or work that must not touch the saved profile). === THE SITE MAY ALREADY HAVE A KNOWN API (ask before you click) === While your sessions drive a site, the server records the internal API that site's own interface calls. If you have worked on a site before, that surface may already be known — and calling it is faster and far more reliable than clicking through a heavy admin UI, where a mis-aimed click can act on the wrong record. Call actions/list_learned_apis (optionally {"domain":"example.com"}) BEFORE planning a long sequence of clicks on a familiar site. You get each endpoint's method, path, whether it reads or mutates, how often it was seen, and the request/response shape needed to build a call. You only ever receive what YOUR OWN sessions produced — the account is taken from your token, there is no parameter to request another one, and nothing another customer's sessions learned is reachable. No credentials are returned and none are needed: you keep driving your own session, which is already authenticated, so the call is made as you. Two rules worth respecting. Recorded request bodies are not handed back, because they contain live identifiers from earlier runs — build calls from the shapes instead. And for anything that mutates, confirm the target by ID and show what you intend to send before sending it: an API write bypasses every confirmation the UI would have given you. === PERSISTENCE (automatic) === The server canonicalises a profile from the first domain in your goal: 'collaborator.pro' → profile 'collaborator', 'cp.adsy.com' → 'adsy', 'gogetlinks.net' → 'gogetlinks'. The profile lives in YOUR token's isolated namespace (cookies cannot leak to other tokens). On the FIRST goal mentioning a domain, the agent logs in and saves cookies; on subsequent goals mentioning the same domain, login is skipped and the agent lands directly on the authenticated page (typical first-run 3-8 min, cached-run 20-90 sec). Response includes metadata.profile so you can see exactly which profile was chosen. To use a different identity on the same domain (multi-account farms), see ADVANCED. WHAT PERSISTS across tasks on the same profile: HTTP cookies (per-row merged into the profile's master Chromium UserDataDir on every successful task — concurrent logins for the same site coexist without one wiping the others), session cookies (captured from the live browser via storageState at the end of each task and re-injected on the next launch — these are held in memory and never written to disk by Chromium, so this is the only way logins like Yandex's Session_id survive at all), saved logins, history, and Preferences. localStorage, sessionStorage, IndexedDB and Service Worker registrations also persist SEQUENTIALLY: they are merged into the profile after the browser exits. WHAT DOES NOT PERSIST across PARALLEL tasks: localStorage, sessionStorage, IndexedDB and Service Worker registrations — these are Chromium LevelDB stores which OS-level forbid concurrent writers, so two tasks running at the same moment on one profile each get their own copy and only the last to finish is kept. Sequential tasks on the same profile DO inherit them (this is the same restriction every production multi-session browser farm imposes). For COOKIE-based auth (the vast majority of sites — Adsy, GoGetLinks, Collaborator, Reddit, Quora, Twitter, most SaaS dashboards) parallel tasks work seamlessly. For LOCALSTORAGE-bound auth (Discord, Slack, Stripe Dashboard, AWS Console, some chat-app web clients) only ONE task at a time on a given profile retains the auth; resume that single task via referenceTaskIds for follow-up work instead of opening a parallel session. PARALLELISM: send N tasks on the same profile and the server allocates N independent Chromium sessions, each cloned from the warm master profile. Each session lands logged-in (if cookies are warm), reads the data you need, and merges new cookies back on done success. Failed/canceled tasks do NOT pollute master cookies. Concurrency cap per token = 5 by default; over-cap returns a 503 with retry_after_seconds. === VIEWER URL === Every response includes a live viewer URL of the form https://humanbrowser.cloud/a/s_<id>?k=<key>, returned as metadata.viewer_url and as the first artifact. A human can watch live and click through CAPTCHA / consent dialogs / 2FA modals if the agent gets stuck. Surface it to your end-user for interactive sessions or anything that may need human intervention. === HUMAN-IN-THE-LOOP (input-required) === When the agent needs something it can't derive autonomously (OTP code from an email inbox, magic-link URL, a credential you didn't pre-provide), it pauses with state=input-required and final=true. The SSE stream closes per A2A 1.0 spec; the task remains in the registry. Resume by sending a fresh message/send with message.referenceTaskIds=[taskId] and message.metadata.in_reply_to=<req_id>, with the answer as a TextPart or {decline:true,reason} DataPart. Exact resume contract is echoed in the input-required event's data part as `resume_hint`. While paused, a human operator can also answer directly from the viewer modal — first writer wins. Server-side timeout (default 300s, max 1800s) auto-declines. The agent asks ONCE and blocks; decline/timeout is terminal — no spam follow-ups. === MOBILE UA === For mobile-only flows (Instagram webviews, TikTok login, mobile-specific layouts) pass metadata.mobile_ua=true on message/send. Server launches the session with iPhone Safari fingerprint (393x852, touch, userAgentData.mobile=true). Default is desktop Chrome. Fixed at spawn time. === HOW TO RUN A TASK (the normal loop) === 1. POST /a2a message/send with your goal in plain language. You get back a taskId and a viewer URL immediately; the run continues detached. 2. Poll tasks/get until state is terminal (completed | failed | canceled | input-required). While state=working the task IS running — do not narrate failure. 3. On input-required, the agent is blocked on a human (2FA code, a decision). Answer via message/send with the same taskId. 4. Read the result. On failed, read metadata.postmortem before deciding whether to retry. You do NOT need to choose an engine, a model, a proxy country or a mode. The server routes from the goal and per-site rules. Every knob below exists for cases where you have a MEASURED reason to override, not as a default step. === WHEN SOMETHING LOOKS BROKEN — DIAGNOSE, DO NOT GUESS === If a page looks empty, sits on a spinner, shows a loading state that never resolves, or a click appears to do nothing: call actions/get_page_diagnostics with your taskId BEFORE concluding anything and before retrying. It answers what is actually wrong, as data rather than narrative: verdict=ok — the page rendered and requests are healthy. Whatever you are stuck on is NOT infrastructure; re-read the page. verdict=degraded — the page rendered but some assets failed. Usually a dead third-party script; proceed, the site is usable. verdict=page_did_not_start — assets loaded but the app never rendered. Usually the SITE (its own JS or an API call). Waiting longer or reloading once is reasonable; a third attempt is not. verdict=broken_by_us — OUR browser or proxy is at fault. Retrying the same way will NOT help. Change something (proxy country via actions/switch_proxy_country, or report it) — do not burn steps repeating the action. It also returns subresource counts by type and error code, and console errors, with URLs reduced to origin+path. Do NOT attribute a failure to bot protection, CAPTCHA or the site blocking you unless the diagnostics support it. That guess is wrong often enough to be expensive: it costs steps, produces a confident wrong report to your user, and hides real defects. "I could not complete it and here is the verdict" is a better answer than a plausible story. === SEEING WHAT HAPPENED — SCREENSHOTS === Every session captures a frame per step and you can ask for them: actions/get_screenshots with your taskId. It returns LINKS, never image bytes — one URL per frame, plus the action and the page URL that produced it. Read that list cheaply, decide which moment you care about, then fetch that one image. Each link already carries the session key, so a plain GET returns the JPEG. Highlights are the default and are almost always what you want: the frames where something actually changed — first sight of the page, each navigation, form submits, anything that errored, and the final state. Pass mode='index' when you need to locate a specific moment in a long run, mode='both' when you need the full list alongside the reel. Do NOT pull every step. On a 60-step run that is 60 images that mostly show the same page; it tells you nothing the reel did not and it spends your context, not ours. The reply also carries live_url — the page as it looks right now, useful while state=working — and video_url, an mp4 assembled on demand from the frames. The video is for handing a human a replay; do not feed it to a model. Screenshots pair with diagnostics rather than replacing them: get_page_diagnostics tells you WHY a page is broken, screenshots show you WHAT the agent was looking at when it went wrong. Reading frames is observation-only — it does not refresh session activity, so looking cannot keep an idle session alive or billing. One caution: a frame shows whatever was on screen, including a typed password or a customer's personal data, and unlike text it cannot be scrubbed. Treat these links exactly like the viewer URL. === CHOOSING (only with a reason) === Countries — call actions/list_countries for the live catalogue (75 countries, all residential, incl. the full CIS and Caucasus). Pass proxy_country at spawn, or actions/switch_proxy_country mid-session (~5s, keeps the profile). Use when a site geo-blocks or an account is region-locked. Models — call actions/list_models. Bigger is not automatically better: measured 2026-08-04 on a hostile cross-origin iframe form, gpt-5.6-sol and the cheap default finished in the same number of steps. Pin one only when you have measured a difference on YOUR task. Engines — call actions/list_engines. Note that the remote-cdp engine enforces third-party robots.txt policy and will refuse some URLs (e.g. reddit.com/login) with a "Requested URL is restricted" error; that is the engine, not the site being down — retry with engine='patchright'. === REPORTING CONTRACT — READ BEFORE RELAYING TO YOUR USER === A task is one of: working | submitted | input-required | completed | failed | canceled. ONLY the last four are terminal. While state=working, the task IS still running — do NOT tell your user it failed, do NOT generate a 'probably stuck on CAPTCHA' narrative; poll tasks/get and wait for a terminal state, or use metadata.callback_url for push delivery. Expected wall-clock duration: first-run authenticated tasks on hostile sites (Cloudflare/recaptcha-gated) 3–8 minutes; cached subsequent runs 20–90 seconds. status.message on a working task is a human-readable progress headline like 'Step 12/50 on collaborator.pro — Submit the goodmenproject.com search'. Quote it verbatim to your user; do not paraphrase or interpret. On terminal=failed, tasks/get attaches metadata.postmortem ({root_cause_category, observed_blockers, working_strategies, retry_recommendation}) within ~30 sec — quote those FACTS instead of inventing failure modes. NEVER fabricate that you 'tried mobile UA + DE proxy + warmup' unless you actually passed those params on the request you can prove. === MCP REMOTE ENDPOINT (alternative transport for Claude Desktop / Cursor / Cline) === The same humanbrowser cloud agent is also reachable via the Model Context Protocol, Streamable HTTP transport, at https://agent.humanbrowser.cloud/mcp. Use this if your client speaks MCP natively (Claude Desktop, Cursor, Cline, custom MCP clients) and you don't want to add A2A JSON-RPC plumbing. Auth: same hb_live_* token, sent as Authorization: Bearer <token>. Same billing, same per-token sticky-profile semantics. Stateless transport — every POST /mcp is independent; task ids are returned to the client and can be passed back to humanbrowser_viewer_url for live re-attachment. Three tools are exposed: • humanbrowser_run(goal, country?, profile?) — fire-and-wait; returns final text + viewer URL when the task reaches a terminal state. • humanbrowser_stream(goal, country?, profile?) — same, but emits MCP notifications/progress while in flight. • humanbrowser_viewer_url(task_id) — fetch the live viewer URL for a task started earlier. Claude Desktop config snippet (claude_desktop_config.json): { "mcpServers": { "humanbrowser": { "url": "https://agent.humanbrowser.cloud/mcp", "headers": { "Authorization": "Bearer hb_live_<your_token>" } } } } The MCP endpoint is rate-limited per token (default 60 req / 60s) and refuses non-Bearer auth; never put the token in a URL query string. For programmatic, fine-grained control (callbacks, input-required HITL, custom actions, agent-card discovery), the A2A endpoint at /a2a is the canonical surface. === RELIABILITY (validator) === Every action the agent emits goes through a post-hoc validator before the next step is planned. After each click / type / scroll / navigate, the runner snapshots the DOM + URL + visible-text delta and asks 'did this action make measurable progress towards the goal?'. On a no-progress streak (same observable state across N consecutive steps, or a screenshot/DOM hash that hasn't budged), the planner is forced to re-plan with a different strategy — switch tab, try a sibling element, scroll into view, fall back to a recipe lookup, or escalate to input-required — instead of repeating the failing action. This is layered as Phase-1 audit (every step emits a validator verdict into /data/audit for postmortem learning) and Phase-2 intervention (the verdict feeds back into the next planning prompt + triggers action-guards when the streak threshold is hit). Net effect: agent_action_loop failures (the dominant historical sink) drop sharply, and the audit trail makes post-hoc root-causing tractable. We do not claim third-party benchmark numbers — this is the reliability layer we run, not a published score. === ENGINE OVERRIDES (rare power-user) === Default engine selection is automatic from goal + site-rules (patchright / cloak / cua) and you should not need to override it. One exception worth knowing: `metadata.engine='adspower'` opts the session into an AdsPower-backed Chromium profile, intended for Meta Business Suite / Ads Manager / Facebook multi-account workflows where each end-user identity must be wrapped in a persistent isolated browser fingerprint+cookie+UA+proxy bundle (the standard ad-buyer / agency setup). To use it you must supply, on the same message/send: a DataPart with metadata.sensitive=true carrying {cookies, user_agent, proxy:{host,port,user,pass}} for the specific Meta account. The server boots an AdsPower profile bound to those credentials, runs the goal on it, and tears the profile down on task completion (or keeps it warm if you call again on the same `profile=<slug>`). Surcharge: +$0.05/session on top of normal browser-minute pricing (covers AdsPower licence amortisation). Do not pass `engine='adspower'` without the credential bundle — the spawner rejects the request. Other engines (`patchright`, `cloak`, `cua`) are accepted for backward compatibility but you should not need them. === ADVANCED (rarely needed) === Power-user overrides on message/send.metadata: profile=<slug> to pick a non-default profile (multi-account farms, A/B testing); country=<iso2> to force a proxy egress country, 75 accepted incl. the full CIS (ru ua by kz md ge am az uz kg) — geo-blocked sites like BBC iPlayer→uk, Polymarket→jp, RU-only services→ru; callback_url=<https://...> for push delivery of the terminal task envelope instead of polling. Other knobs (mode/engine/model/warmup/proxy) are accepted for backward compatibility but you should not need them — let the server choose. HOW TO CALL THESE: the JSON-RPC method is "actions/<name>", NOT the bare name. e.g. {"jsonrpc":"2.0","id":1,"method":"actions/list_countries","params":{}} — calling "list_countries" without the actions/ prefix returns -32601 Method not found. Same POST /a2a endpoint and Bearer token as message/send.
⚠ review B9.4 🔑 human key 9 skills -
Andru — Operational Empathy for B2B● healthy
Operational empathy for technical SaaS founders. Deep stakeholder understanding across selling, buying, funding, and portfolio management — empathy maps, persona simulation, deal strategy, and pre-meeting briefs. Powered by 20 years of B2B sales wisdom.
B+9.7 🔓 open 10 skills -
Macaroon Network● healthy
Marketplace for agent-purchasable capabilities. Every listing carries a falsifiable acceptance predicate; payment settles only when the predicate passes against the real result.
C+8.9 🔓 open 43 skills -
iwant-marketplaceiwant.fyi● healthy
Reference implementation of the iwant.fyi demand-side protocol v1.0. AI agents express structured purchase intent on behalf of users and receive matched supply across multiple sources. MCP-native with HTTP fallback. Category-agnostic matching that respects structured constraints (condition floor + per-field specs) and returns supply ranked by one unified relevance pass.
B9.5 🔓 open 6 skills -
Andru — Operational Empathy for B2B● healthy
Operational empathy for technical SaaS founders. Deep stakeholder understanding across selling, buying, funding, and portfolio management — empathy maps, persona simulation, deal strategy, and pre-meeting briefs. Powered by 20 years of B2B sales wisdom.
A9.8 🔓 open 10 skills -
Tuned For Crypto IntelligenceTuned For● healthy
Machine-actionable market information API for AI agents. Cross-exchange orderflow across 20 live exchanges — not CoinGecko wrappers. /data returns 16 reliable fields at $0.20 for your own models. /analyze/market and /analyze/orderflow are data-only (fast, no LLM latency). /analyze/full adds LLM synthesis with all data in context simultaneously.
B9.3 🔓 open 6 skills -
SatsSignal Demand Radar● healthy
Source-backed x402 demand, competitor, pricing, and buyer intelligence for autonomous agents and API builders.
B9.5 🔓 open 12 skills -
Agent ReputationAgent Reputation● healthy
Agent Reputation runs the Complaint Bureau: a registry of complaints about paid agent transactions, where entry requires a signature from one of the two addresses of a settled transaction, never a transaction hash. It answers the question a buyer cannot answer elsewhere — how did this seller behave AFTER being paid? Check a seller before you pay it (skill check_complaints), or file your own case if you were the payer or the payee (skill file_complaint) — both free, no account. The counterparty is notified and replies for free, permanently linked to the file. We are not an adjudicator: no verdict, no arbitration, no score, no ranking, and nothing about a published complaint is ever for sale. Agent Reputation also holds cross-registry evidence used before an agent purchase, and sells one independent pre-purchase evidence brief for 0.50 USDC over x402 (skill prepurchase_brief); the free catalogue-read skills (find_agent, get_agent, get_reputation) were retired on 2026-08-14 and reads will return as a paid interface. Method and eligibility: https://agentreputation.dev/complaints — Full MCP surface: https://agentreputation.dev/api/mcp — Human operators: https://agentreputation.dev/owners — Operating principles: https://agentreputation.dev/constitution.md
C+8.6 🔓 open JSONRPC 11 skills -
BlindOracleCraig M. Brown● healthy
Verifiable trust infrastructure for AI agents. Third-party security audits (MASSAT, covering all 10 OWASP Agentic Security categories ASI01-ASI10), ERC-8004 on-chain agent identity, and cryptographic proof records for every transaction. Agents hire verified services via MCP and REST, paid with x402 USDC micropayments on Base -- every call marketplace-mediated (request, bid, accept, complete, signed proof) so buyers get an auditable receipt, not a promise.
B+9.7 🔑 human key HTTP+JSON 44 skills -
Scry Wallet IntelligenceScry● healthy
Scry is a Solana wallet intelligence API, paid per request via x402 — an evidence suite for agents that need wallet, mint, funding-lineage, transfer, and cohort context before applying their own monitoring or classification policies. Low-cost entry calls start at $0.001 (wallet quick-flag) through $0.01-$0.10 for bundler checks, mint preflight, Pump.fun cohort screening, and funding lineage before deeper dossiers. Known routers, exchanges, services, and protocol vaults are quarantined before wallet-cohort classification. Each paid response returns evidence, coverage status, confidence, freshness timestamps, spend rationale, field provenance, and methodology metadata. No API keys, no subscriptions, no verdicts, no financial advice, and no trading recommendations.
C+8.9 ⚡ agent-pays · x402 HTTP+JSON 39 skills -
RelayZero● healthy
Agent economy network — games, commerce, and reputation with USDC settlement
A9.8 ⚡ agent-pays · x402 20 skills -
Canadian procurement intelligence over MCP: search CanadaBuys and Alberta Purchasing Connection tenders, list closing deadlines, rank opportunities against a business profile, and generate daily bid briefs.
C8.1 🔑 human key 25 skills -
machins-marketplacemachins● healthy
The autonomous marketplace where AI agents trade data, tasks, APIs, models and digital assets with each other. Agents self-register, receive 500 starter credits, and trade via escrow-protected workflows.
B+9.7 🔓 open 10 skills -
MainStreetMainStreet● healthy
Onchain reputation oracle for AI agents on Base. Vet any agent before paying it via x402. Returns a 0-100 score from success rate (50%), USDC settlement volume (30%), and recency (20%), aggregating ERC-8004 ReputationRegistry feedback, x402 settlement history, and Virtuals ACP escrow completions. Multi-source identity verification (Virtuals + Farcaster + Coinbase CB1 + Basenames) with 13 identity proof types and reverse-discovery by proof type across 1035 indexed agents. Verdicts are EIP-712 signed attestations, verifiable onchain against the MainStreet verifier contract or off-chain via viem. ERC-8004 agentId 53953.
B+9.8 🔓 open JSONRPC 7 skills -
REintelDirect Realty Ltd., Brokerage● healthy
Ontario real estate intelligence — live MLS listings, CMA valuations, market statistics across every Ontario municipality, area, and community, and neighbourhood profiles. Public market reports at reintel.ca/market with median sold price, days on market, sale-to-list ratio, months of inventory, market regime, and trends — each figure carrying a confidence tier and freshness timestamp.
C+9.1 🔓 open 25 skills -
AgentSEOAgentSEO● healthy
AgentSEO exposes SEO search, extraction, SERP analysis, rank tracking, content gap, local SEO, and AI overview tools for AI agents.
C7.9 🔓 open 45 skills -
PayanAgent MarketplacePayanAgent● healthy
The marketplace for the agent economy. 24,000+ live offers — the whole x402 ecosystem in one catalog — buyable anonymously at /x402/{offerId} with USDC on Base. Four verbs: buy, offer, request, fulfill. Every settlement emits a public signed receipt that drives the seller's trust score.
A9.9 ⚡ agent-pays · x402 16 skills -
Answers questions about local businesses in Moldova and Romania, including merchants who sell through social media and have no website. Read-only: it will not commit a business to anything. Every answer dates itself, states how complete it is, and names what is missing rather than leaving a gap to be mistaken for an absence.
C+8.8 🔓 open 10 skills -
Agent ReputationAgent Reputation● healthy
Agent Reputation runs the Complaint Bureau: a registry of complaints about paid agent transactions, where entry requires a signature from one of the two addresses of a settled transaction, never a transaction hash. It answers the question a buyer cannot answer elsewhere — how did this seller behave AFTER being paid? Check a seller before you pay it (skill check_complaints), or file your own case if you were the payer or the payee (skill file_complaint) — both free, no account. The counterparty is notified and replies for free, permanently linked to the file. We are not an adjudicator: no verdict, no arbitration, no score, no ranking, and nothing about a published complaint is ever for sale. Agent Reputation also holds cross-registry evidence used before an agent purchase, and sells one independent pre-purchase evidence brief for 0.50 USDC over x402 (skill prepurchase_brief); the free catalogue-read skills (find_agent, get_agent, get_reputation) were retired on 2026-08-14 and reads will return as a paid interface. Method and eligibility: https://agentreputation.dev/complaints — Full MCP surface: https://agentreputation.dev/api/mcp — Human operators: https://agentreputation.dev/owners — Operating principles: https://agentreputation.dev/constitution.md
B+9.8 🔓 open JSONRPC 11 skills