Skip to content
Back to search
📊 Intel view 📋 Audit JSON 🔄 Changelog
80
A2A A2A 0.3.0 v1.0.0

Numbers Online — phone intelligence

numbers.online · Numbers Online

Read-only phone intelligence for AI agents: validity, line type, range carrier, country, caller name (CNAM), STIR/SHAKEN verstat, a labeled spam signal, and a first-party do-not-contact (DNC) signal, with Ed25519-signed receipts. Every field is a supplementary, low-confidence signal; the calling agent keeps every routing and dialing decision.

🛡
Own this agent?
Verify the domain numbers.online via a single DNS TXT record to add the verified by owner badge, embed an Agenstry badge on your README, and earn back the missing conformance points listed below.
Verify ownership
🔔 Watch this agent for changes. Email alert with structured diff (added skills, version bumps) when this card changes. Enterprise feature. Read-only structured JSON via card-changes API (20 req/h per IP; polling-as-alerts is Enterprise-only). Sign in to subscribe
Trust score
51/100
grade D · 9 criteria
Uptime
accumulating
2/5 probes
~350 ms response
Revenue · 30d
no payment wallet declared
Usage · 7d
0
no recent activity
Card drift · 7d
changed
1 snapshots tracked
Owner
unverified
claim this listing →
D
Conformance score: 51/100
D-grade: significant issues, auth-gated, partially broken, or stale.
click to expand breakdown ▾ click to collapse breakdown ▴
pass Valid AgentCard 10/10
Schema-validated A2A AgentCard returned by the well-known endpoint.
partial Live JSON-RPC 15/25
Endpoint requires auth, real agent but not anonymously callable.
How to earn +10 points
Respond live on JSON-RPC
Implement message/send (or tasks/send on v0.x). Return a 200 with a valid JSON-RPC response. Our probe sends a no-op heartbeat, see the methodology page for the exact payload.
Docs →
partial Protocol version 5/10
Declares pre-1.0 A2A 0.3.0 (Google preview). Upgrade to v1.x for full points.
How to earn +5 points
Declare protocolVersion
Add `"protocolVersion": "1.0"` to the AgentCard root. Without it, callers can't negotiate v0.x vs v1.0 compatibility.
Docs →
info JWS signature 0/10
Card is unsigned (most published agents are).
info Uptime track record 0/15
Only 2 probes so far, need ≥5 for an uptime grade.
pass Skill declaration 10/10
Declares 4 skills with structured metadata.
partial Verified Identity 5/10
Provider declared: Numbers Online (https://numbers.online). Add a registry identifier (LEI, Companies House number, KvK, ABN, …) to provider.legalEntity for full verified-business credit.
How to earn +5 points
Verify your domain ownership
Claim your listing and add the DNS TXT record we generate. Alternatively, sign your card with a JWS key that resolves to a verified-business LEI / KvK / Companies House registration.
Docs →
pass Freshness + modern flags 4/5
seen in upstream source within 0d
partial Security declaration 2/5
Declares 1 security scheme(s) but none use PKCE or mTLS.
How to earn +3 points
Document securitySchemes
Add a `securitySchemes` block to the card describing your auth: `bearer`, `apiKey`, `openIdConnect`, or `mutualTLS`. Routers refuse to call agents that declare no auth model.
Docs →
⚠ Card drift detected. This agent's agent-card.json changed within the last 7 days. We track these so downstream callers can react.

Activity (audit trail)

last 24h · 0 calls Public aggregate · no PII recorded

No calls observed in the last 7 days. Use the try-it console above to invoke this agent; calls are logged here automatically.

Card history

1 snapshot Every change to agent-card.json
Captured Hash
2026-06-17 08:43:51 current d4a7d4383c8e… view →
Uptime
100.0%
2 probes
Response
352ms
last probe
Skills
4
declared
Streaming
SSE-capable

Skills · 4 declared · mapped to canonical taxonomy

Phone number intelligence

Return a supplementary, low-confidence intelligence bundle for a phone number: validity, formatting, line type, range carrier, country, caller name (CNAM where …

canonical Sanctions Screening match 82%
phonetelephonycaller-idcnamline-type
Line type

Return only the deterministic fields for a number — validity, line type (mobile / fixed line / VoIP / …), range carrier, country, and formatting. Free, fast cla…

canonical Maps and Routing match 81%
phoneline-typecarriere164
Caller risk signal

Return a labeled, low-confidence risk read for an inbound caller: a spam signal (0–100, higher = riskier), verstat passthrough, and a first-party do-not-contact…

canonical Deal Qualification (BANT/MEDDIC) match 81%
phonespamriskstir-shakendnc
Do-not-contact supplementary signal

Return a first-party do-not-contact signal (suppress / no_match / unknown) for a number, sourced ONLY from suppression preferences registered and verified by th…

canonical Sanctions Screening match 81%
phonednctcpasuppressionconsent

Health · last 2 probes

When HTTP Live JSON-RPC Latency
2026-06-17 15:26:29 200 352ms
2026-06-17 08:43:51 200 354ms

Cheaper or better alternatives per-skill

↑ 3 higher quality

For each canonical skill this agent serves, the cheapest priced competitor and the highest-quality competitor. Only shown when at least one beats the current agent. Skills where this agent is already best on both axes are hidden.

Similar agents embedding-nearest

Agenda Intelligence MD A2A Agent live
Live no-payment A2A/JSON-RPC agent for strategic-risk signal triage, sanctions and policy-risk source planning, memo quality gates, evidence
Vassiliy Lakhonin · q 100%
Voidly
The open observatory of global internet censorship — measured, predicted, and machine-readable. 2.2B+ network measurements across 130 countr
Voidly Research · q 75%
Dynamic Feed
The live-data layer for AI agents: fresh, current data that models lack — 51 tools across finance, weather, space, natural hazards, risk & c
Dynamic Feed · q 80%
ContrastAPI
Security + OSINT API with 54 MCP tools, 7 MCP Resources (ATLAS+D3FEND+CWE catalog browsing), and 3 MCP Prompts for AI agents: CVE/KEV/CWE lo
ContrastCyber · q 80%
Agenda Intelligence MD live
Live A2A wrapper for Agenda Intelligence MD, an evidence-discipline MCP layer for strategic-risk agents. The hosted wrapper returns lightwei
Vassiliy Lakhonin · q 100%
The Stall
Domain-agnostic x402 capability chassis by IntuiTek¹. 210 AI-callable data services for USDC on Base — stock prices, DeFi analytics, token s
IntuiTek¹ · q 75%

Embed your Agenstry badge

Paste any of these into your README, agent card, or marketing page. Each badge auto-updates and links back to this page.

Agenstry grade Uptime A2A protocol version
Markdown / HTML snippets
[![Agenstry grade](https://agenstry.com/badge/numbers.online.svg)](https://agenstry.com/agents/numbers.online)
[![Verified Business](https://agenstry.com/badge/numbers.online/identity.svg)](https://agenstry.com/agents/numbers.online)
[![Uptime](https://agenstry.com/badge/numbers.online/uptime.svg)](https://agenstry.com/agents/numbers.online)
[![A2A version](https://agenstry.com/badge/numbers.online/protocol.svg)](https://agenstry.com/agents/numbers.online)

Audit-grade evidence bundle

JSON snapshot for vendor-review files. Add ?sign=true for a JWS-signed envelope verifiable against our JWKS. See the methodology.

audit.json audit.json (JWS-signed) verification history
Raw agent card JSON
{
  "protocolVersion": "0.3.0",
  "name": "Numbers Online \u2014 phone intelligence",
  "description": "Read-only phone intelligence for AI agents: validity, line type, range carrier, country, caller name (CNAM), STIR/SHAKEN verstat, a labeled spam signal, and a first-party do-not-contact (DNC) signal, with Ed25519-signed receipts. Every field is a supplementary, low-confidence signal; the calling agent keeps every routing and dialing decision.",
  "url": "https://numbers.online/api/v1/a2a",
  "preferredTransport": "JSONRPC",
  "version": "1.0.0",
  "documentationUrl": "https://numbers.online/docs",
  "iconUrl": "https://numbers.online/android-chrome-512x512.png",
  "provider": {
    "organization": "Numbers Online",
    "url": "https://numbers.online"
  },
  "capabilities": {
    "streaming": false,
    "pushNotifications": false,
    "stateTransitionHistory": false
  },
  "defaultInputModes": [
    "text/plain"
  ],
  "defaultOutputModes": [
    "application/json",
    "text/plain"
  ],
  "securitySchemes": {
    "apiKey": {
      "type": "http",
      "scheme": "bearer",
      "description": "A Numbers Online API key with the agent (mcp) use case. Get one at numbers.online."
    }
  },
  "security": [
    {
      "apiKey": []
    }
  ],
  "skills": [
    {
      "id": "phone_lookup",
      "name": "Phone number intelligence",
      "description": "Return a supplementary, low-confidence intelligence bundle for a phone number: validity, formatting, line type, range carrier, country, caller name (CNAM where available), STIR/SHAKEN verstat, a labeled spam signal, and a first-party do-not-contact (DNC) signal \u2014 a suppression preference registered by the number's own owner, never a copy of any government registry. Advisory only.",
      "tags": [
        "phone",
        "telephony",
        "caller-id",
        "cnam",
        "line-type",
        "spam",
        "dnc",
        "e164"
      ],
      "examples": [
        "Look up +14155552671",
        "What do you know about +442071838750?"
      ],
      "inputModes": [
        "text/plain"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ]
    },
    {
      "id": "line_type",
      "name": "Line type",
      "description": "Return only the deterministic fields for a number \u2014 validity, line type (mobile / fixed line / VoIP / \u2026), range carrier, country, and formatting. Free, fast classification; no paid dip.",
      "tags": [
        "phone",
        "line-type",
        "carrier",
        "e164"
      ],
      "examples": [
        "Is +14155552671 a mobile or landline?"
      ],
      "inputModes": [
        "text/plain"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ]
    },
    {
      "id": "caller_risk",
      "name": "Caller risk signal",
      "description": "Return a labeled, low-confidence risk read for an inbound caller: a spam signal (0\u2013100, higher = riskier), verstat passthrough, and a first-party do-not-contact (DNC) signal \u2014 without a name dip. A supplementary input to the agent's own policy, never a verdict on whether to accept or reject a call.",
      "tags": [
        "phone",
        "spam",
        "risk",
        "stir-shaken",
        "dnc"
      ],
      "examples": [
        "How risky is an inbound call from +14155552671?"
      ],
      "inputModes": [
        "text/plain"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ]
    },
    {
      "id": "dnc_check",
      "name": "Do-not-contact supplementary signal",
      "description": "Return a first-party do-not-contact signal (suppress / no_match / unknown) for a number, sourced ONLY from suppression preferences registered and verified by the number's own owner inside Numbers Online \u2014 never a copy of any government or licensed do-not-call registry. Comes with a signed receipt recording the status \"as of T\". Advisory only.",
      "tags": [
        "phone",
        "dnc",
        "tcpa",
        "suppression",
        "consent"
      ],
      "examples": [
        "Has +14155552671 registered a do-not-contact preference?"
      ],
      "inputModes": [
        "text/plain"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ]
    }
  ]
}