A2A Agent Card · Whisper Security

Whisper

Give an AI agent a stable, routable IPv6 address of its own and egress that anyone can verify from outside. Use this when you need a fixed IP your traffic actually leaves from, an identity another service can check independently by reverse DNS and RDAP rather than taking your word for it, or control over what an agent is allowed to reach and a record of what it did. It also answers security questions about any domain, address or file hash from the Whisper graph, with no account at all. The address space is AS219419, which we run; an email address alone is enough to get a key.

⚠ Agent card, not A2A. Whisper Security serves a machine-readable agent manifest at the A2A discovery path, but it fails a structural check in the A2A 1.0.0 AgentCard object. It is an agent card in spirit rather than in schema — useful for discovery, but an A2A client cannot assume it will parse.
Provider: Whisper Security Conformance: Flavored Protocol: 1.0 Transport: Version: 0.219.2 Host: whisper.online Skills: 37
Discovery

An A2A client finds this agent by fetching the well-known path on the provider's own host. That is what makes an agent card different from every other agent artifact in this catalog: it is provider-published by construction — it cannot be derived, generated, or reconstructed on a provider's behalf.

https://whisper.online/.well-known/agent-card.json
Interfaces
https://whisper.online/a2a · transport · protocol JSONRPC non-standard supportedInterfaces
Skills (37)

Get a Whisper API key signup

Start or complete Whisper signup from an email address alone, and receive an API key that unlocks the provisioning and governance skills on this card. Send {"email":"..."} to start; a six-digit code arrives by email; send {"signup_id":"...","code":"123456"} to complete. No human step, no account needed first.

onboardingsignupcredentialskeyless

identify

Identify an indicator (domain, IP, hash, …) against the graph. Answers without an API key.

graphcognitionkeyless

assess

Assess the risk/policy posture of one or more indicators. Answers without an API key.

graphcognitionkeyless

walk

Walk the graph from an indicator across its relationships. Answers without an API key.

graphcognitionkeyless

watch

Watch an indicator for change/activity over time. Answers without an API key.

graphcognitionkeyless

submit

Submit an observation/claim into the graph. Writes to the graph, so it needs your API key: an anonymous claim would not be attributable.

graphcognitionapi-key

explain

Explain a verdict - the evidence and reasoning behind it. Answers without an API key.

graphcognitionkeyless

variants

Enumerate variants/permutations of an indicator. Answers without an API key.

graphcognitionkeyless

origins

Trace the origins/provenance of an indicator. Answers without an API key.

graphcognitionkeyless

history

Historical records for an indicator (incl. whois/bgp history). Answers without an API key.

graphcognitionkeyless

lookupTlsFingerprint

Look up a TLS (JA3/JA4) fingerprint in the graph. Answers without an API key.

graphcognitionkeyless

lookupTorRelay

Look up Tor relay metadata for an address. Answers without an API key.

graphcognitionkeyless

asset

Resolve an asset and its catalog of attributes. Answers without an API key.

graphcognitionkeyless

threatintel

Threat-intelligence indicator family (candidate apex/CDN/hosting). A family verb: name the sub-verb as "sub" alongside the input. Sub-verbs: candidateCdnApex, candidateMultiTenantApex, candidateSharedHostingIp.. Answers without an API key.

graphcognitionkeylessfamily

psl

Public-suffix-list family (tld-plus-one, is-public-suffix, affiliation). A family verb: name the sub-verb as "sub" alongside the input. Sub-verbs: tldPlusOne, isPublicSuffix, affiliation.. Answers without an API key.

graphcognitionkeylessfamily

topAsnsByPrefixCount

Top ASNs ranked by announced-prefix count. Answers without an API key.

graphcognitionkeyless

agents: agent agents.agent

The agent operation on the Whisper control plane, served as CALL whisper.agents({op:'agent', args:{...}}). Requires your Whisper API key. The identifier in the example is a placeholder for one of YOUR agents: list them with the "agents.list" skill and {"kind":"agents"}.

control-planeagentsagentapi-key

agents: alert agents.alert

The alert operation on the Whisper control plane, served as CALL whisper.agents({op:'alert', args:{...}}). Requires your Whisper API key. With no arguments it describes what you already have, so the example below runs as published.

control-planeagentsalertapi-key

agents: connect agents.connect

The connect operation on the Whisper control plane, served as CALL whisper.agents({op:'connect', args:{...}}). Requires your Whisper API key. With no arguments it describes what you already have, so the example below runs as published.

control-planeagentsconnectapi-key

agents: disconnect agents.disconnect

The disconnect operation on the Whisper control plane, served as CALL whisper.agents({op:'disconnect', args:{...}}). Requires your Whisper API key. With no arguments it describes what you already have, so the example below runs as published.

control-planeagentsdisconnectapi-key

agents: domain agents.domain

The domain operation on the Whisper control plane, served as CALL whisper.agents({op:'domain', args:{...}}). Requires your Whisper API key.

control-planeagentsdomainapi-key

agents: firewall agents.firewall

The firewall operation on the Whisper control plane, served as CALL whisper.agents({op:'firewall', args:{...}}). Requires your Whisper API key. The identifier in the example is a placeholder for one of YOUR agents: list them with the "agents.list" skill and {"kind":"agents"}.

control-planeagentsfirewallapi-key

agents: history agents.history

The history operation on the Whisper control plane, served as CALL whisper.agents({op:'history', args:{...}}). Requires your Whisper API key. The identifier in the example is a placeholder for one of YOUR agents: list them with the "agents.list" skill and {"kind":"agents"}.

control-planeagentshistoryapi-key

agents: host agents.host

The host operation on the Whisper control plane, served as CALL whisper.agents({op:'host', args:{...}}). Requires your Whisper API key.

control-planeagentshostapi-key

agents: identity agents.identity

The identity operation on the Whisper control plane, served as CALL whisper.agents({op:'identity', args:{...}}). Requires your Whisper API key. With no arguments it describes what you already have, so the example below runs as published.

control-planeagentsidentityapi-key

agents: list agents.list

The list operation on the Whisper control plane, served as CALL whisper.agents({op:'list', args:{...}}). Requires your Whisper API key.

control-planeagentslistapi-key

agents: logs agents.logs

The logs operation on the Whisper control plane, served as CALL whisper.agents({op:'logs', args:{...}}). Requires your Whisper API key. With no arguments it describes what you already have, so the example below runs as published.

control-planeagentslogsapi-key

agents: lookups agents.lookups

The lookups operation on the Whisper control plane, served as CALL whisper.agents({op:'lookups', args:{...}}). Requires your Whisper API key. With no arguments it describes what you already have, so the example below runs as published.

control-planeagentslookupsapi-key

agents: partner agents.partner

The partner operation on the Whisper control plane, served as CALL whisper.agents({op:'partner', args:{...}}). Requires your Whisper API key. It is gated on partner authority rather than on arguments: without it the call is refused whatever you pass.

control-planeagentspartnerapi-key

agents: policy agents.policy

The policy operation on the Whisper control plane, served as CALL whisper.agents({op:'policy', args:{...}}). Requires your Whisper API key. With no arguments it describes what you already have, so the example below runs as published.

control-planeagentspolicyapi-key

agents: register agents.register

The register operation on the Whisper control plane, served as CALL whisper.agents({op:'register', args:{...}}). Requires your Whisper API key.

control-planeagentsregisterapi-key

agents: rename agents.rename

The rename operation on the Whisper control plane, served as CALL whisper.agents({op:'rename', args:{...}}). Requires your Whisper API key. The identifier in the example is a placeholder for one of YOUR agents: list them with the "agents.list" skill and {"kind":"agents"}.

control-planeagentsrenameapi-key

agents: resolver agents.resolver

The resolver operation on the Whisper control plane, served as CALL whisper.agents({op:'resolver', args:{...}}). Requires your Whisper API key. With no arguments it describes what you already have, so the example below runs as published.

control-planeagentsresolverapi-key

agents: revoke agents.revoke

The revoke operation on the Whisper control plane, served as CALL whisper.agents({op:'revoke', args:{...}}). Requires your Whisper API key. The identifier in the example is a placeholder for one of YOUR agents: list them with the "agents.list" skill and {"kind":"agents"}.

control-planeagentsrevokeapi-key

agents: task agents.task

The task operation on the Whisper control plane, served as CALL whisper.agents({op:'task', args:{...}}). Requires your Whisper API key. The identifier in the example is a placeholder for one of YOUR agents: list them with the "agents.list" skill and {"kind":"agents"}.

control-planeagentstaskapi-key

agents: token agents.token

The token operation on the Whisper control plane, served as CALL whisper.agents({op:'token', args:{...}}). Requires your Whisper API key. The identifier in the example is a placeholder for one of YOUR agents: list them with the "agents.list" skill and {"kind":"agents"}.

control-planeagentstokenapi-key

agents: verify agents.verify

The verify operation on the Whisper control plane, served as CALL whisper.agents({op:'verify', args:{...}}). Requires your Whisper API key.

control-planeagentsverifyapi-key
Documentation
https://whisper.online/llms-full.txt
Evidence. Fetched 2026-09-19 from https://whisper.online/.well-known/agent-card.json, HTTP 200. The body was saved verbatim and is the sole source for everything on this page — no field is inferred. View the captured card. Providers change what they serve; if this card has moved or changed shape, the provider profile carries the current state as of the last build.

Work with this as data

Every agent card here is available over the APIs.io API and to AI agents over MCP. A2A Agent Cards is not yet its own endpoint on the v1 API. Reach it through catalog search and the tag graph, or the MCP server.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for a2a agent cards

3 MCP tools reach this
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
Search the catalog
curl "https://apis.io/api/v1/search?q=whisper-online&limit=10"
Everything under a tag
curl "https://apis.io/api/v1/tags/whisper-online"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.