NumRadar

app.numradar由 numradar.app 發布官方發布者v0.2.2更新於 Oct 30, 2026

Check whether phone numbers are registered on WhatsApp, from your AI agent.

已驗證Streamable HTTP可網頁執行溝通與協作商業與電商

概覽

AI 產生的概覽

讓 AI 助理查詢手機號碼是否註冊 WhatsApp,支援單筆驗證、批次任務與餘額查詢。

可以做什麼
  • 即時驗證單一手機號碼是否註冊 WhatsApp,並回傳商業帳號資訊與國家中介資料
  • 將最多 10,000 個號碼排入非同步批次驗證,立即回傳任務 id
  • 查詢批次任務的進度計數,並可選擇取得每個號碼的結果
  • 列出此帳號近期的批次任務及其狀態計數
  • 查詢目前週期還剩多少驗證額度
適用情境
適合在 WhatsApp 行銷活動前稽核或清理聯絡人名單、核對少量號碼,或在送出大批次任務前估算費用並確認餘額是否足夠。
執行需求
需要 numradar 帳號與 API 金鑰(nr_live_...),於控制台建立。託管端點 numradar.app/mcp 以 Authorization Bearer 標頭傳入金鑰;npm 套件 @numradar/mcp 可用 npx 在本機執行,透過 token 參數或 NUMRADAR_API_KEY 環境變數提供金鑰。需要能連線至 numradar 的 API。
安裝前請注意
API 金鑰是帳號的持有者憑證;以命令列參數傳入會留在 shell 歷史與設定檔中,建議改用環境變數或密鑰管理工具,金鑰外洩後應立即撤銷。每個確定性結果都會消耗一次付費驗證額度,額度用完時批次任務會停止。工具呼叫經由 numradar 公開 REST API 計費並限流,送出的號碼會傳送給 numradar。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 NumRadar,將其新增到工作區。
  2. 連接 所需的 憑證。它們會被私密儲存,絕不會在公開頁面上展示。
  3. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/app.numradar%2Fmcp/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。 客戶端會在首次連接時完成 OAuth 登入。

{
  "mcpServers": {
    "numradar": {
      "type": "http",
      "url": "https://numradar.app/mcp"
    }
  }
}

README

@numradar/mcp

Check whether phone numbers are registered on WhatsApp, from your AI agent.

numradar answers one question well: is this number on WhatsApp? This is its Model Context Protocol server, so an agent can ask that question directly — validating a list, auditing contacts before a campaign, or checking a balance before spending it.

bash
npx @numradar/mcp --token nr_live_YOUR_KEY

Create a key at numradar.app/app/keys.


Most people should not install anything

numradar runs a hosted MCP server. No package, no local process, no version to go stale on anyone's laptop:

https://numradar.app/mcp

Point your client at that URL with an Authorization: Bearer nr_live_... header and you are done.

json
{  "mcpServers": {    "numradar": {      "type": "http",      "url": "https://numradar.app/mcp",      "headers": {        "Authorization": "Bearer nr_live_xxx"      }    }  }}

The npm package exists for one real case: clients whose config file accepts a command to spawn but not a URL. claude_desktop_config.json is the common one. If you are editing a file like that, you need the package:

json
{  "mcpServers": {    "numradar": {      "command": "npx",      "args": ["-y", "@numradar/mcp", "--token", "nr_live_xxx"]    }  }}

Configuration for 15 verified clients — Claude Code, Cursor, Windsurf, Zed, VS Code, Cline and the rest — is at numradar.app/mcp-server.

Tools

ToolWhat it doesCost
validate_numberOne number. Registered or not, business account, line type, country.1 credit
bulk_validateUp to 10,000 numbers. Returns a job id immediately.1 per definitive result
get_job_statusProgress counters, optionally per-number results.Free
list_jobsRecent bulk jobs on the account.Free
get_balanceCredits remaining.Free

Prompts

Clients that support MCP prompts surface these as slash commands.

PromptArgumentsWhat it does
/check_numbersnumbersValidate a list and summarise which are reachable on WhatsApp.
/clean_contact_listnumbers, purposeAudit a list before a campaign, and report what to fix.
/check_before_spendingcountEstimate the cost of a run and check the balance covers it.

Billing, and why it should change how an agent uses this

One credit per definitive answer — registered or not registered. Beyond that:

  • Invalid and unparseable numbers cost nothing. Send them. An agent that pre-filters numbers it is unsure about drops real contacts to save credits it was never going to spend.
  • An inconclusive upstream result costs nothing.
  • Credits never expire.

Numbers should be E.164 (+14155550100). Past a handful, prefer bulk_validate over a loop of validate_number: it is one job to poll rather than N round trips.

Options

--token <key>Your API key. Also read from NUMRADAR_API_KEY; the flag wins if both are set.
--base <url>API origin. Defaults to https://numradar.app.
--versionPrint the version and exit.
--helpPrint usage and exit.

Security

The API key is a bearer credential for your account. --token puts it in your shell history and in whatever config file spawns the process — prefer NUMRADAR_API_KEY from a secret store where your client supports it. Keys are revocable from the dashboard; revoke immediately if one is exposed.

Every tool call is authenticated, rate-limited and billed through numradar's ordinary public REST API. The MCP server does not embed the checker and has no separate billing path, so an agent calling a tool is treated exactly like a backend calling curl.

About this repository

This is the home of the npm package — its issue tracker and documentation. The server's source lives in a private monorepo and is not published here.

Found a bug, or a client whose configuration does not work? Open an issue.

Licence

MIT

來源:README.md,提交 2b37ba7

工具

5

validate_number

Check in real time whether a single phone number is registered on WhatsApp. Returns existence, business-account details when present, and country metadata. Uses one validation from the plan allowance per definitive answer; malformed numbers are rejected without being counted.

輸入參數phone必填

bulk_validate

Queue up to 10,000 phone numbers for asynchronous validation. Returns a job id immediately — poll get_job_status for progress and results. One validation per definitive result; duplicates are collapsed before counting. A job runs at the plan's bulk pace, 4 to 20 rows a minute and slower than validate_number on purpose, so a long list takes hours: tell the person, and check back rather than waiting in a loop.

輸入參數phones必填

get_job_status

Fetch progress counters for a bulk job, and optionally the per-number results. Free — a read uses no validations, but it does count against the account's per-minute request limit, so check about once a minute rather than in a loop: a job only moves at its plan's pace. Call with include_results once status is "completed".

輸入參數limitjob_id必填include_results

list_jobs

List this account's recent bulk jobs with their status counters. Free.

無需輸入參數。

get_balance

Return how many validations this account can still spend. total_available is everything left this period: the monthly plan allowance, any rollover, and any prepaid balance. Free. Check this before queueing a large batch — a job stops when the allowance runs out.

無需輸入參數。

版本歷史

1
  1. v0.2.2最新Oct 29, 2026

評分

已滿足適用檢查項的 100%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分