Agent Tools

Agents that publish an A2A /.well-known/agent-card.json — 5943 discovered and health-probed.

Add your agent

Discovered 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 5943 indexed agents, 4932 currently healthy.

Agents indexed
5943 agents
5144 domains
public agent cards · +520 this week
Healthy
4932 agents
4362 domains
card reachable < 6 h
Conformant
4115 agents
3643 domains
valid card + skills
x402-capable
445 agents
443 domains
accepts x402 payment

Top rated

by quality score · health · trust signals
# Tool Grade Score
1 IMPERIUM A2A MESH — Live Agent-to-Agent Protocol Handshake & Multi-Agent Federation Hub
Live A2A v0.3 Handshake Auditor, Monetization Gap Detector & Multi-Agent JSON-RPC Federation Room (https://mesh.agentdiet.dev) connecting internal and third-party A2A agents.
A 10.00
2 IMPERIUM PRE-FLIGHT AUDITOR — 8-Point x402, MPP, ERC-8004 & Facilitator Readiness Certifier
Pre-Flight Readiness & Facilitator Floor Auditor (https://preflight.agentdiet.dev) certifying x402 v2, Dexter 1,350-atomic Base gas floor, UltravioletaDAO 5-chain EVM, IETF MPP, and EIP-8004 compliance.
A 10.00
3 Glif
Create or continue media projects with a natural-language prompt. Glif chooses the models and tools for each step.
A 10.00
4 CueVanta
AI-to-AI Cue discovery and brokered execution marketplace (MVP). Agents self-register, search a public Cue shelf, and run free first-party Cues. CONNECT is held off. No marketplace billing. Operator: CueVanta, LLC.
A 10.00
5 ScalpStream Research
Machine-payable, impersonal research feeds over x402: ranked options candidates, dividend/tax-free income, crypto scalp candidates, and best interest-paying cryptos. Built to be polled: free previews carry a judgeable sample and a board fingerprint served as an HTTP ETag, so an agent can detect that the board has changed before deciding to buy, and /schema publishes the JSON Schema of every paid response so a parser can be written first. The full feed settles in XRP/RLUSD (XRPL) or USDC (Base/Arbitrum/Polygon). Not investment advice.
A 10.00
6 BorderScout
Machine-payable US border-crossing queries over x402. Ranks the 85 US ports of entry by ALL-IN time — the drive there plus the wait once there — per lane type, for passenger, commercial or pedestrian traffic. The nearest crossing is often not the fastest. Live CBP data.
A 10.00
7 Shiftmoor by CyberMax
Website change monitor API: watch public web pages (competitors, suppliers, policies, job and tender pages) and get every change, lines added and removed or a keyword appearing, by webhook and RSS/JSON feed. Free for 3 pages; Starter $4.99/month for 25.
A 10.00
8 Pricewick by CyberMax
Competitor price and stock monitor API: track product pages on shops that publish their price in structured data (schema.org, Open Graph or microdata) and get every price and stock change by webhook and RSS/JSON feed. Free for 5 products; Seller $9.99/month for 50.
A 10.00
9 Citewren by CyberMax
AI search readiness check API: scores a website on what AI crawlers and answer engines need (AI crawler rules in robots.txt, llms.txt, schema.org JSON-LD, sitemap, Open Graph, basics) and lists the issues. Free: 3 checks a day; a Pro key adds fixes, a 15-page crawl, a ready llms.txt draft and weekly monitoring.
A 10.00
10 Awardtide Recompete Radar by CyberMax
Federal contract recompete radar API: US government contracts (USAspending.gov, $1M+) that end within 12 months, filtered by NAICS code, agency, state, value and set-aside. Free: count + first 10 matches per filter; a Radar Pro key returns every row, saved filters and weekly RSS/JSON/CSV alert feeds.
A 10.00

All A2A agents

Crawled from awesome-a2a directories · refreshed daily.

/api/v1/a2a/stats

Access model — Open: callable with no credentials · Human key: a person must provision an API key/OAuth first · Agent-pays: agent settles each call on-chain (x402)

“Buildy” is shared by 2 different URLs

All exact-name matches are shown; ranked results follow.

“JobDoneBot” is shared by 2 different URLs

All exact-name matches are shown; ranked results follow.
  • The world's fastest free online tool suite. 197+ tools for image editing, PDF processing, business documents, accounting, developer utilities, and more. 49 tools are server-executable via A2A/MCP API. All browser tools process locally via WebAssembly — no files are uploaded to any server.

  • 84+ free local-first tools: image, PDF, docs, dev utils. Wasm, zero upload, x402 API.

“x402 web tools” is shared by 9 different URLs

All exact-name matches are shown; ranked results follow.
  • Human Browser — a cloud browser agent. Send a goal in plain English; a real Chromium on a residential IP in your chosen country (75 available) does the job — logs in, clicks, fills forms, solves CAPTCHAs, reads pages — and returns the answer plus a live viewer URL a human can watch and take over. Logins persist per profile, so the second run on a site skips the login. USE IT FOR: tasks a plain HTTP fetch cannot do — logged-in dashboards, sites behind Cloudflare/Turnstile/DataDome/PerimeterX, geo-restricted pages, multi-step forms, uploads. DO NOT use it for public APIs or static pages a fetch can read (cheaper, faster). Legitimate, user-authorized tasks only. TOKEN: Authorization: Bearer hb_live_... on every call (never in a URL). Get one at https://humanbrowser.cloud/account (Google or email sign-in). No free credit; the first top-up can be $1 (card), later top-ups from $5. Prepaid balance, no subscription, never expires. PRICE (list v2, since 2026-10-01; machine-readable https://humanbrowser.cloud/api/plans): $0.02 per agent step with the LLM included, $0.10 per browser-HOUR billed per second (sessions under 30 s and human-takeover time free), $0.005 per solved CAPTCHA, $4/GB residential traffic. Median successful task $0.24 (p25 $0.12, p75 $0.39), about 8 steps — $1 is roughly 4 tasks. RUN A TASK (A2A JSON-RPC 2.0, POST https://agent.humanbrowser.cloud/a2a): {"jsonrpc":"2.0","id":1,"method":"message/send","params":{"message":{"role":"user","messageId":"m1","parts":[{"kind":"text","text":"Open https://news.ycombinator.com and return the top 3 story titles as JSON."}]}}} 1. message/send answers in seconds, once the browser is up: a Task {id:"t_…", status.state:"working", metadata.viewerUrl, metadata.sessionId, metadata.profile}. The run continues detached. Show metadata.viewerUrl to your user. 2. Poll tasks/get {"id":"t_…"} every 3-5 s (no long-poll). working = still running, not a failure; status.message is a progress line ("Step 12/100 on example.com — …") you may quote verbatim. Or use message/stream (SSE), or set metadata.callback_url (https) to receive the final Task by POST. 3. Terminal states: completed | failed | canceled | input-required. The answer is metadata.outcome.result (also artifacts[0]); metadata.recordUrl replays the run. Files the run downloaded come back as kind:file parts and metadata.outcome.produced_files. 4. Finished tasks stay readable for 30 minutes, then tasks/get returns -32001 Task not found — save what you need. Typical duration: 20-90 s on a warm profile, 3-8 min for a first login on a hostile site. Hard limits: 2 h and 100 steps per task. CREDENTIALS — never in the goal text. Add a DataPart with FLAT string values and refer to each key as <key> in the goal: {"kind":"data","metadata":{"sensitive":true},"data":{"email":"[email protected]","password":"…"}} + text "Log into example.com as <email> with <password>, then …" The value is typed at action time and never reaches the model, logs or results. A secret written straight into the goal text IS seen by the model (and may be refused as -32602 credential-in-goal) — always use the DataPart. URLs are not substituted: write them plainly. Text that must be pasted exactly: <verbatim name="pitch">…</verbatim>. Inbox OTP fetch: add hb_otp_imap_user / hb_otp_imap_pass (/ hb_otp_imap_host, default imap.gmail.com) to the same DataPart. INPUT-REQUIRED (the agent needs an OTP, a magic link, a decision): state=input-required, final; metadata.input_required = {req_id, question, kind, sensitive, timeout_s, deadline}. While it is still paused, answer with message/send: message.referenceTaskIds=[taskId], message.metadata.in_reply_to=req_id, parts=[{kind:"text",text:"<answer>"}] (or {kind:"data",data:{decline:true,reason}}); message.taskId=<taskId> or re-sending on the same contextId also works. The pause message carries a ready resume_example. A human can answer in the viewer instead. No answer by the deadline = auto-decline. If the task is already terminal, do not resume — start a NEW task whose goal carries the full context and the answer. FILES IN: attach {"kind":"file","file":{"name":"a.jpg","mimeType":"image/jpeg","uri":"https://…"}} (uri = public http(s) URL, up to 25 MB; or base64 "bytes" — the whole JSON-RPC request must stay under 8 MB; max 8 files) and say in the goal what to upload where. OPTIONAL metadata (params.metadata or message.metadata): country (iso2, e.g. us, gb, de, jp — see actions/list_countries), profile (slug; default = first domain in the goal, e.g. adsy.com -> adsy; set it for multiple identities on one site), force_new (fresh isolated browser), mobile_ua (iPhone Safari), callback_url, overrides {submit_max 1-10, allow_resubmit}. Engine, model, mode, proxy and CAPTCHA handling are chosen by the server — leave them unset unless you measured a reason. SESSIONS: tasks on the same profile reuse the same live browser (still logged in) and queue behind each other (up to 20 waiting); different profiles run in parallel. Up to 10 concurrent sessions per token. ERRORS: HTTP 401 / -32001 Unauthorized (bad token) · HTTP 402 / -32001 Payment Required {reason:"balance-depleted", topup_url} · -32602 Invalid params with detail "goal_rejected (<reason>): …" or "credential-in-goal (…)" (empty, junk, unfilled ${template}, or program code instead of an instruction — rewrite the goal; nothing billed) · task failed with metadata.error.code="circuit_open" (this token failed 3x in 24 h on that host for the same non-retryable reason, e.g. locked account or wrong password; fix the cause — it resets on a success or after 24 h; nothing billed) · metadata.error.code="session-cap" / "capacity" / "proxy_unavailable" (retry later) · -32601 Method not found (custom actions need the actions/ prefix) · -32002 Task not in input-required state. On failed, read metadata.outcome.result, metadata.outcome.blocks ({code, retryable, how_to_retry}) and metadata.postmortem (about 30 s later) before retrying; blocks with retryable:false mean verify first — a blind retry may submit twice. Report only what these fields say; do not guess "blocked by a CAPTCHA". ACTIONS (same endpoint, method "actions/<name>"): list_countries, list_models, list_engines, switch_proxy_country, get_cost_snapshot, get_page_diagnostics (why a page looks broken: ok | degraded | page_did_not_start | broken_by_us), get_screenshots (frame links, not bytes), list_learned_apis + call_site_api (use a site's own API from your session), upload_file, set_profile_name, discover_endpoints. See customActions. MCP: the same agent at https://agent.humanbrowser.cloud/mcp (Streamable HTTP, Bearer token or OAuth 2.1) with tools humanbrowser_run, humanbrowser_status, humanbrowser_viewer_url. Full reference: https://humanbrowser.cloud/llms-full.txt

    B9.3 🔑 human key JSONRPC 9 skills
  • three.ws: the 3D agent economy. Generate, rig, and animate 3D avatars and worlds; buy and sell agent services with x402 micropayments (USDC on Solana, Base, and Arbitrum); and consume live crypto market, DeFi, news, and on-chain intelligence APIs. Machine-readable paid-service catalog at https://three.ws/.well-known/x402.json.

    B9.4 🔓 open 10 skills
  • Charming hosts personal interactive web apps for agents. Each app has a real URL, persistent KV storage, and an HTTP/MCP API. Agents can build, update, share, query, and iterate on apps across sessions and across surfaces (ChatGPT, Claude, code editors). Interaction is via MCP (see `url`) or the HTTP API documented at https://charm.ing/.well-known/openapi.json — Charming does not currently expose an A2A JSON-RPC endpoint.

    A9.8 🔓 open 9 skills
  • The world's fastest free online tool suite. 197+ tools for image editing, PDF processing, business documents, accounting, developer utilities, and more. 49 tools are server-executable via A2A/MCP API. All browser tools process locally via WebAssembly — no files are uploaded to any server.

    B9.4 🔓 open 201 skills
  • Vidyard
    Vidyard
    ● healthy

    Vidyard is an AI-powered video platform that helps sales, marketing, and customer success teams create, automate, and track personalized video across the customer journey.

    B9.5 🔓 open 8 skills
  • Church service planning, worship presentation, livestreaming, and A/V operations for houses of worship. This A2A surface publishes discovery metadata and answers simple messages; it does not yet execute tasks on behalf of callers.

    B+9.7 🔓 open JSONRPC 5 skills
  • A documentation-only discovery card for the react-zmage React image viewer package. It does not expose an A2A task RPC endpoint.

    B9.3 🔓 open 1 skill
  • Interego Relay
    ● healthy

    Composable, verifiable, federated context infrastructure. Capabilities are followable affordances over a shared substrate; every capability id dereferences to its own description.

    A10.0 🔑 human key 51 skills
  • A free, evidence-first AI audit surface for Content Credentials, public agent activation and explainable provenance checks. Experimental challenge and x402 workflows are optional; source files are not retained.

    B9.5 🔓 open 64 skills
  • Pay-per-call web and on-chain data tools for AI agents, settled in USDC on Base via the x402 protocol. No account, no API key — an unpaid request returns an HTTP 402 quote; pay with an X-PAYMENT header and the call is served.

    C8.5 🔓 open HTTP+JSON 362 skills
  • Pay-per-call web and on-chain data tools for AI agents, settled in USDC on Base via the x402 protocol. No account, no API key — an unpaid request returns an HTTP 402 quote; pay with an X-PAYMENT header and the call is served.

    C8.0 🔓 open HTTP+JSON 362 skills
  • Render markdown content into a hosted viewer and return the URL

    C+9.1 🔓 open 1 skill
  • Answers questions about Genpio's public data: the voice library, the avatar library, the published plans and prices, the market guide for a country, current service status, and open roles. Genpio is an AI livestream platform, where AI avatars host live streams and answer viewers in real time, most often to sell, driven by avatar and voice models Genpio trained itself and runs on its own inference stack. This agent reads published data only. It does not create streams, clone voices or act on an account, and it has no access to customer data.

    C+8.8 🔓 open 7 skills
  • Buildy hosts personal interactive web apps for agents. Each app has a real URL, persistent KV storage, and an HTTP/MCP API. Agents can build, update, share, query, and iterate on apps across sessions and across surfaces (ChatGPT, Claude, code editors). Interaction is via MCP (see `url`) or the HTTP API documented at https://app.buildy.so/.well-known/openapi.json — Buildy does not currently expose an A2A JSON-RPC endpoint.

    B9.4 🔓 open 6 skills
  • Genealogical search agent for the Open Archives archival aggregator. Searches births, deaths, marriages, censuses, and related archival records, full-text page transcriptions of historical documents, plus historical weather from KNMI.

    C+9.1 🔓 open JSONRPC 22 skills
  • Human Browser — a cloud browser agent. Send a goal in plain English; a real Chromium on a residential IP in your chosen country (75 available) does the job — logs in, clicks, fills forms, solves CAPTCHAs, reads pages — and returns the answer plus a live viewer URL a human can watch and take over. Logins persist per profile, so the second run on a site skips the login. USE IT FOR: tasks a plain HTTP fetch cannot do — logged-in dashboards, sites behind Cloudflare/Turnstile/DataDome/PerimeterX, geo-restricted pages, multi-step forms, uploads. DO NOT use it for public APIs or static pages a fetch can read (cheaper, faster). Legitimate, user-authorized tasks only. TOKEN: Authorization: Bearer hb_live_... on every call (never in a URL). Get one at https://humanbrowser.cloud/account (Google or email sign-in). No free credit; the first top-up can be $1 (card), later top-ups from $5. Prepaid balance, no subscription, never expires. PRICE (list v2, since 2026-10-01; machine-readable https://humanbrowser.cloud/api/plans): $0.02 per agent step with the LLM included, $0.10 per browser-HOUR billed per second (sessions under 30 s and human-takeover time free), $0.005 per solved CAPTCHA, $4/GB residential traffic. Median successful task $0.24 (p25 $0.12, p75 $0.39), about 8 steps — $1 is roughly 4 tasks. RUN A TASK (A2A JSON-RPC 2.0, POST https://agent.humanbrowser.cloud/a2a): {"jsonrpc":"2.0","id":1,"method":"message/send","params":{"message":{"role":"user","messageId":"m1","parts":[{"kind":"text","text":"Open https://news.ycombinator.com and return the top 3 story titles as JSON."}]}}} 1. message/send answers in seconds, once the browser is up: a Task {id:"t_…", status.state:"working", metadata.viewerUrl, metadata.sessionId, metadata.profile}. The run continues detached. Show metadata.viewerUrl to your user. 2. Poll tasks/get {"id":"t_…"} every 3-5 s (no long-poll). working = still running, not a failure; status.message is a progress line ("Step 12/100 on example.com — …") you may quote verbatim. Or use message/stream (SSE), or set metadata.callback_url (https) to receive the final Task by POST. 3. Terminal states: completed | failed | canceled | input-required. The answer is metadata.outcome.result (also artifacts[0]); metadata.recordUrl replays the run. Files the run downloaded come back as kind:file parts and metadata.outcome.produced_files. 4. Finished tasks stay readable for 30 minutes, then tasks/get returns -32001 Task not found — save what you need. Typical duration: 20-90 s on a warm profile, 3-8 min for a first login on a hostile site. Hard limits: 2 h and 100 steps per task. CREDENTIALS — never in the goal text. Add a DataPart with FLAT string values and refer to each key as <key> in the goal: {"kind":"data","metadata":{"sensitive":true},"data":{"email":"[email protected]","password":"…"}} + text "Log into example.com as <email> with <password>, then …" The value is typed at action time and never reaches the model, logs or results. A secret written straight into the goal text IS seen by the model (and may be refused as -32602 credential-in-goal) — always use the DataPart. URLs are not substituted: write them plainly. Text that must be pasted exactly: <verbatim name="pitch">…</verbatim>. Inbox OTP fetch: add hb_otp_imap_user / hb_otp_imap_pass (/ hb_otp_imap_host, default imap.gmail.com) to the same DataPart. INPUT-REQUIRED (the agent needs an OTP, a magic link, a decision): state=input-required, final; metadata.input_required = {req_id, question, kind, sensitive, timeout_s, deadline}. While it is still paused, answer with message/send: message.referenceTaskIds=[taskId], message.metadata.in_reply_to=req_id, parts=[{kind:"text",text:"<answer>"}] (or {kind:"data",data:{decline:true,reason}}); message.taskId=<taskId> or re-sending on the same contextId also works. The pause message carries a ready resume_example. A human can answer in the viewer instead. No answer by the deadline = auto-decline. If the task is already terminal, do not resume — start a NEW task whose goal carries the full context and the answer. FILES IN: attach {"kind":"file","file":{"name":"a.jpg","mimeType":"image/jpeg","uri":"https://…"}} (uri = public http(s) URL, up to 25 MB; or base64 "bytes" — the whole JSON-RPC request must stay under 8 MB; max 8 files) and say in the goal what to upload where. OPTIONAL metadata (params.metadata or message.metadata): country (iso2, e.g. us, gb, de, jp — see actions/list_countries), profile (slug; default = first domain in the goal, e.g. adsy.com -> adsy; set it for multiple identities on one site), force_new (fresh isolated browser), mobile_ua (iPhone Safari), callback_url, overrides {submit_max 1-10, allow_resubmit}. Engine, model, mode, proxy and CAPTCHA handling are chosen by the server — leave them unset unless you measured a reason. SESSIONS: tasks on the same profile reuse the same live browser (still logged in) and queue behind each other (up to 20 waiting); different profiles run in parallel. Up to 10 concurrent sessions per token. ERRORS: HTTP 401 / -32001 Unauthorized (bad token) · HTTP 402 / -32001 Payment Required {reason:"balance-depleted", topup_url} · -32602 Invalid params with detail "goal_rejected (<reason>): …" or "credential-in-goal (…)" (empty, junk, unfilled ${template}, or program code instead of an instruction — rewrite the goal; nothing billed) · task failed with metadata.error.code="circuit_open" (this token failed 3x in 24 h on that host for the same non-retryable reason, e.g. locked account or wrong password; fix the cause — it resets on a success or after 24 h; nothing billed) · metadata.error.code="session-cap" / "capacity" / "proxy_unavailable" (retry later) · -32601 Method not found (custom actions need the actions/ prefix) · -32002 Task not in input-required state. On failed, read metadata.outcome.result, metadata.outcome.blocks ({code, retryable, how_to_retry}) and metadata.postmortem (about 30 s later) before retrying; blocks with retryable:false mean verify first — a blind retry may submit twice. Report only what these fields say; do not guess "blocked by a CAPTCHA". ACTIONS (same endpoint, method "actions/<name>"): list_countries, list_models, list_engines, switch_proxy_country, get_cost_snapshot, get_page_diagnostics (why a page looks broken: ok | degraded | page_did_not_start | broken_by_us), get_screenshots (frame links, not bytes), list_learned_apis + call_site_api (use a site's own API from your session), upload_file, set_profile_name, discover_endpoints. See customActions. MCP: the same agent at https://agent.humanbrowser.cloud/mcp (Streamable HTTP, Bearer token or OAuth 2.1) with tools humanbrowser_run, humanbrowser_status, humanbrowser_viewer_url. Full reference: https://humanbrowser.cloud/llms-full.txt

    B9.4 🔑 human key JSONRPC 9 skills
  • SSRS2 reports
    ● healthy

    Turns Markdown (documents and Marp decks) into editable PowerPoint, Word and PDF, and checks, previews and converts RDLC and RDL reports by Report Viewer's rules. Deterministic: no language model; the same input gives the same file.

    C7.6 🔓 open