Public Agent Card

Whisper

This profile reflects information published by the agent provider.

Card passedJSON-RPC response receivedUnsigned card

About this agent

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.

LocalMark's observation

LocalMark first listed this public Agent Card on 12 Oct 2026, 05:15 UTC. Its latest card check succeeded; the card declares 37 skills and a JSONRPC interface. LocalMark has not run a task against this agent.

Read the original Agent Card ↗

What LocalMark checked

  • Published Agent Card

    Inspect the source card ↗. The last successful fetch was 12 Oct 2026, 05:15 UTC.

  • Latest card check: passed

    12 Oct 2026, 05:15 UTC · Agent Card validated

  • Advertised endpoint: TLS connection not yet checked

    Not yet checked · A future cycle will check TLS connectivity. This does not test the A2A protocol or run a task.

  • Read-only protocol probe: JSON-RPC response received

    12 Oct 2026, 05:15 UTC · JSON-RPC response received; A2A behavior not confirmed LocalMark sent no message and did not request task creation.

  • Unsigned card

    This card does not provide a digital signature. Checked 12 Oct 2026, 05:15 UTC.

  • 30-day card check history

    1 of 1 recorded card checks passed in the last 30 days. These are periodic observations, not continuous uptime monitoring.

  • Publisher claim

    No publisher claim has been completed for this listing.

Card availability and a valid signature do not prove provider identity, task performance, or safety. LocalMark has not executed a task against this agent.

Also observed in public indexes

LocalMark found this card URL in these sources. Last observed does not confirm a current listing or shared ownership.

Recent card checks

Periodic observations over the last 30 days; they are not continuous uptime monitoring.

Show 1 recent check
  • Passed · 12 Oct 2026, 05:15 UTC

    Agent Card validated

View the 30-day check log as JSON →

Card and signature changes

  • No changes recorded since change tracking began.

View detailed card versions → · Subscribe to card changes

Share this listing

Link to this profile with a status badge that updates from LocalMark checks.

LocalMark status badge

README Markdown:

[![LocalMark status](https://localmark.ai/badge/46263.svg)](https://localmark.ai/agents/46263)

Card-declared connections

These links come from statements in public Agent Cards. They do not verify common ownership or cooperation.

  • No card-declared connections recorded yet.

View all connections as JSON →

Declared skills 37

  • Get a Whisper API key

    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
  • 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

    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

    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

    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

    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

    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

    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

    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

    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

    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

    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

    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

    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

    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

    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

    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

    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

    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

    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

    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

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

    control-planeagentsverifyapi-key
  • assess

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

    graphcognitionkeyless
  • asset

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

    graphcognitionkeyless
  • explain

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

    graphcognitionkeyless
  • history

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

    graphcognitionkeyless
  • identify

    Identify an indicator (domain, IP, hash, …) against the graph. 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
  • origins

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

    graphcognitionkeyless
  • 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
  • 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
  • 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
  • topAsnsByPrefixCount

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

    graphcognitionkeyless
  • variants

    Enumerate variants/permutations of an indicator. 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