mcpField
N
Numbers Online — Phone Intelligence

Numbers Online — Phone Intelligence

Remote
numbers.onlineCommunication0Updated 19w ago

About Numbers Online — Phone Intelligence

Numbers Online is a hosted, read-only MCP server for voice agents that need phone-number intelligence before handling calls. Its four tools return advisory signals, including line type, caller information, spam indicators, and a first-party do-not-contact preference.

Key features

  1. 01Phone validity and formatting lookup
  2. 02Line type and carrier details
  3. 03Caller name and risk signals
  4. 04First-party DNC preference check
  5. 05Signed, verifiable lookup receipts

Use cases

  1. 01Check an inbound caller before routing
  2. 02Review a number before outbound dialing
  3. 03Check line type or DNC preference
  4. 04Keep evidence of lookup time

MCP support

It provides a remote MCP server over Streamable HTTP at https://numbers.online/api/v1/mcp. Clients can discover tools publicly; authenticated tool calls return read-only phone intelligence.

Configuration

Remote servers need no local install. Pick your client, then copy the config or install in one click.

Endpointhttps://numbers.online/api/v1/mcp
Copy install command
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.

Tools

4
ParameterTypeRequiredDescription
numberstringYesPhone number in E.164, e.g. +14155552671 (loose input is normalized).
verstatstringNoOptional STIR/SHAKEN verstat for THIS call — TN-Validation-Passed / -Failed / No-TN-Validation, or a full Identity / P-Asserted-Identity header value. When supplied it folds into the risk signal (a failed validation raises it).
max_cache_age_secondsintegerNoOperator TTL control; 0 forces a fresh dip.

Details

From the project README

Numbers Online — phone-intelligence MCP server

A hosted, read-only Model Context Protocol server that gives an AI voice agent phone intelligence in a single call: who is this inbound caller, and is this outbound number one to think twice about dialing — before it burns agent minutes.

  • Endpoint: POST https://numbers.online/api/v1/mcp (Streamable HTTP, JSON-RPC 2.0)
  • Transport: remote / hosted — nothing to install or run. Point your agent at the URL.
  • Auth: Authorization: Bearer <api_key> for tool calls; discovery is public.
  • Docs: https://numbers.online/docs/integrations · Site: https://numbers.online

Positioning. Every output is an advisory, low-confidence supplementary signal. The calling agent keeps every routing and dialing decision and remains responsible for compliance. Nothing here asserts that a call is lawful, unlawful, "safe", or "spam".


Tools

Four read-only tools (all annotated readOnlyHint, idempotentHint). Discover them live with tools/list (no auth required).

ToolReturnsBilled
phone_lookupFull bundle — validity, formatting, line type, range carrier, country, caller name (CNAM where available), STIR/SHAKEN verstat, a labeled spam signal, first-party DNC signal, signed receiptbundled per-call
caller_riskSpam signal + verstat + first-party DNC signal + receipt (no name dip)bundled per-call
line_typeDeterministic only — validity, line type (mobile / fixed line / VoIP / …), carrier, country, formattingfree
dnc_checkFirst-party do-not-contact signal + signed receiptfree
About the DNC signal

The DNC signal is first-party, consent-first: it reflects a do-not-contact preference registered and verified by the number's own owner inside Numbers Online. It is not a copy, mirror, or replica of any government or licensed do-not-call registry. The values:

  • SUPPRESS — the owner registered a do-not-contact preference for this channel.
  • NO_MATCH — no suppression preference on record (absence of suppression is not consent).
  • UNKNOWN — the number couldn't be evaluated.

Treat it as a supplementary input to your own TCPA process, never a verdict that a call is lawful. (Reassigned-number status is inherently a carrier/FCC dataset and is intentionally not offered as a first-party signal — there's no reassigned_check tool.)


Connect

Any MCP client (Claude Desktop, Claude Code, IDEs)

Add a remote server pointing at the endpoint. Example mcp.json fragment:

{
  "mcpServers": {
    "numbers-online": {
      "type": "streamable-http",
      "url": "https://numbers.online/api/v1/mcp",
      "headers": { "Authorization": "Bearer YOUR_API_KEY" }
    }
  }
}

A key needs the mcp use case. initialize, ping, and tools/list work without auth (capability discovery); tools/call is fail-closed and requires the key.

Vapi

Register Numbers Online as an MCP tool — the transport literal is shttp (see integrations/mcp/vapi-mcp-tool.json). A Vapi custom-function-tool alternative lives at integrations/vapi/numbers-online-tool.json.

Retell

Point your agent's call_inbound webhook at the drop-in config in integrations/retell/inbound-webhook.json. It always returns HTTP 200 within Retell's budget (fail-open) so a slow lookup never keeps the caller ringing.

Full walkthrough: docs/ai-voice-agents.md.


Quick smoke test

# discover tools (no auth)
curl -s https://numbers.online/api/v1/mcp \
  -H 'content-type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

# call a tool (needs an mcp-scoped key)
curl -s https://numbers.online/api/v1/mcp \
  -H "Authorization: Bearer $KEY" -H 'content-type: application/json' \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"phone_lookup","arguments":{"number":"+14155552671"}}}'

Runnable reference clients (zero-dependency) are in examples/ — Node and Python.


Signed receipts (verifiable "checked as of T" evidence)

Every billable answer can carry a receipt_id and an Ed25519 response_signature. Fetch the receipt later — no API key required, the id is the capability:

GET https://numbers.online/api/v1/receipts/{id}

No raw phone number is stored — only number_hash = sha256(E.164). Verify with the public key at GET https://numbers.online/api/v1/publickey. A receipt is verifiable evidence that a status was checked at a point in time — not proof that dialing was lawful. Treat a receipt id as sensitive (a phone number is a small keyspace, so the hash is bindable to a candidate number).


Privacy

Raw phone numbers are never logged or stored; they are hashed (sha256). The MCP path is read-only and stateless. Privacy policy: https://numbers.online/privacy

Pricing

The full bundle is metered as one bundled per-call dip (validation + line type + risk + first-party DNC in a single call). line_type and dnc_check are free. See https://numbers.online for current rates.


Developer: Evergrow · Product: Numbers Online · Contact: [email protected] · License: MIT

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.