API e MCP para desenvolvedores

O Número Virtual oferece duas formas de integrar números virtuais para verificação por SMS: uma API REST (v1) e um servidor MCP (Model Context Protocol) para assistentes de IA como Claude, Cursor e OpenClaw. As duas usam a mesma chave de API, gerada na área Desenvolvedores da sua conta, e o mesmo saldo.

Servidor MCP: use pelo Claude, Cursor e outros assistentes

O pacote numero-virtual-mcp (código aberto, MIT) deixa um assistente de IA pedir um número virtual, esperar o código de verificação chegar e cancelar ou concluir a ativação, em linguagem natural: "pega um número do Brasil pro Telegram e me avisa quando o código chegar".

Instalação

Requer Node.js 18 ou mais novo e uma chave de API (nv_live_...).

Claude Code (uma linha):

claude mcp add numero-virtual -e NUMERO_VIRTUAL_API_KEY=nv_live_SUA_CHAVE -- npx -y numero-virtual-mcp

Claude Desktop (claude_desktop_config.json) e Cursor (mcp.json):

{
  "mcpServers": {
    "numero-virtual": {
      "command": "npx",
      "args": ["-y", "numero-virtual-mcp"],
      "env": { "NUMERO_VIRTUAL_API_KEY": "nv_live_SUA_CHAVE" }
    }
  }
}

Ferramentas disponíveis

Cada número pedido pelo assistente desconta do saldo como uma compra normal. Os limites são os mesmos da API. Pacote no npm e código no GitHub.

API REST v1

Base: https://app.numero-virtual.com/api/v1. Autenticação pelo header Authorization: Bearer nv_live_SUA_CHAVE. Respostas em JSON com success, data e requestId. Documentação interativa (OpenAPI) em /api/v1/docs, com a chave.

MétodoRotaO que faz
GET/api/v1/balancesaldo da conta
GET/api/v1/countriespaíses com estoque (limite: 6 consultas/min)
GET/api/v1/services?country=BRserviços, preços e opções por país (limite: 6 consultas/min)
POST/api/v1/activationscompra um número (serviceId, country, apiId opcional, ddd opcional)
GET/api/v1/activations/{id}status e código SMS da ativação
POST/api/v1/activations/{id}/retrypede reenvio do SMS
POST/api/v1/activations/{id}/completeconclui a ativação
DELETE/api/v1/activations/{id}cancela e devolve o valor ao saldo
GET/POST/DELETE/api/v1/webhookswebhooks de SMS recebido, ativação expirada e cancelada

Fluxo típico

  1. Consulte GET /services?country=BR e escolha o serviceId (e, se quiser, a opção apiId).
  2. Compre com POST /activations; a resposta traz o id e o telefone.
  3. Use o telefone no serviço e consulte GET /activations/{id} a cada 5–10 s até smsCode chegar, ou receba por webhook.
  4. Se o SMS não vier, DELETE /activations/{id} devolve o valor ao saldo.

Limites

200 requisições por minuto por chave; catálogo (países e serviços) 6 por minuto por rota; 50 compras e 10 cancelamentos por minuto. Ao exceder, a API responde 429 com Retry-After.

Como começar

  1. Crie sua conta em app.numero-virtual.com e recarregue o saldo (Pix, cartão, PicPay ou cripto).
  2. Em Desenvolvedores, gere uma chave de API.
  3. Use a chave na API REST ou no servidor MCP.