Ir al contenido
NovoDIDNovoDIDdocumentación

Conectar un agente con MCP

Guías del producto, API pública, webhooks y MCP.

MCP permite consultar números, pagos, llamadas y SMS, configurar desvíos y extensiones y comprar un número. Se aplican los permisos, la titularidad y los límites de la API.

Conexión y autenticación

Servidor: https://mcp.novodid.com/mcp. Transporte: Streamable HTTP. Envíe Authorization: Bearer con su token. El cliente debe admitir encabezados personalizados. Este servidor no ofrece OAuth; use un cliente compatible con Bearer.

Cree el token en Desenvolvedores → Tokens. Los tokens anteriores no reciben permisos nuevos automáticamente. Nunca incluya tokens en prompts compartidos, archivos públicos ni URLs.

Ejemplo en TypeScript

import { Client } from '@modelcontextprotocol/sdk/client/index.js';
import { StreamableHTTPClientTransport } from '@modelcontextprotocol/sdk/client/streamableHttp.js';

const client = new Client({ name: 'meu-agente', version: '1.0.0' });
try {
  await client.connect(new StreamableHTTPClientTransport(
    new URL('https://mcp.novodid.com/mcp'),
    { requestInit: { headers: {
      Authorization: `Bearer ${process.env.NOVODID_API_TOKEN}`
    } } }
  ));
  const result = await client.callTool({
    name: 'search_available_dids',
    arguments: { ddd: '11', kind: 'fixed', page: 1, limit: 20 }
  });
  console.log(result.structuredContent);
} finally {
  await client.close();
}

Comprar un número

Use search_available_dids y quote_did_purchase. Presente precio, ciclo recurrente y condiciones. Solo después del consentimiento cree el pago con create_did_checkout e idempotencyKey. Cada pedido admite un número. Ante un resultado incierto, repita exactamente la misma clave y los mismos datos. Consulte get_did_order hasta confirmar pago y activación.

Crear un QR o aceptar una autorización recurrente no demuestra pago. Pix incluye PNG, código para copiar y QR de terminal; la visualización depende del cliente. Con tarjeta, use el enlace de checkout devuelto. No pague instrucciones vencidas ni repita un pago confirmado por el banco; contacte a soporte con el ID del pedido.

Consentimiento y datos sensibles

Confirme el número y destino antes de cambiar un desvío. El desvío telefónico requiere saldo y cobro por minuto. Eliminarlo no cancela la suscripción. Las credenciales SIP requieren los permisos correspondientes y titularidad actual.

Para send_sms, confirme remitente, destinatario y texto. Solo se permiten respuestas a SMS entrantes de ese destinatario durante el acceso SMS de la titularidad actual. El historial saliente o de otro titular no autoriza una conversación. No repita automáticamente un envío incierto.

Herramientas y permisos

get_account

Permiso: Sin permiso adicional; account:read habilita nombre y correo

Consulta la cuenta y los permisos efectivos. account:read habilita además nombre y correo.

list_dids

Permiso: dids:read

Lista números actuales autorizados. billing:read habilita pagos y ciclo; forwarding:read, desvíos.

get_did

Permiso: dids:read

Consulta didId, estado y funciones. Agregue billing:read para pagos y forwarding:read para destinos.

list_forwardings

Permiso: forwarding:read

Lista desvíos de números propios autorizados por el token.

get_did_forwarding

Permiso: forwarding:read

Consulta el desvío de un didId.

set_did_phone_forwarding

Permiso: forwarding:phone

Configura desvío telefónico con didId y destinationNumber (55 + DDD + número). Requiere saldo y cobro por minuto, sin minutos gratuitos.

set_did_ip_forwarding

Permiso: forwarding:write

Configura desvío a IP pública con didId, clientIp público y clientPort entre 1 y 65535.

set_did_sip_forwarding

Permiso: forwarding:write

Selecciona una extensión existente autorizada con didId y sipAccountId. No devuelve contraseña.

create_did_sip_forwarding

Permiso: forwarding:write + sip:create + sip:credentials:read

Crea o reutiliza la extensión exclusiva, configura el desvío y devuelve usuario, contraseña y servidor. Requiere didId.

delete_did_forwarding

Permiso: forwarding:delete

Elimina el desvío por didId. No cancela la suscripción ni libera el número.

get_did_sip_credentials

Permiso: sip:credentials:read

Consulta usuario, contraseña y servidor de la extensión exclusiva por didId, con desvío SIP habilitado.

list_calls

Permiso: calls:read

Consulta llamadas de la titularidad actual. Filtros: didId o did, limit 1–200, page 1–10000 y startDate/endDate ISO.

list_sms_messages

Permiso: sms:read

Consulta SMS de la titularidad y acceso actuales. Filtros: didId o did, direction (inbound/outbound), limit 1–200.

send_sms

Permiso: sms:send

Responde a un SMS entrante de ese destinatario durante el acceso SMS actual. from, to, text (hasta 1600 caracteres), didId opcional. Un envío anterior, otro contacto o una titularidad anterior no autorizan. No repita automáticamente resultados inciertos.

search_available_dids

Permiso: catalog:read

Busca por ddd y kind (fixed/mobile), page desde 1 y limit 1–100. La búsqueda no reserva.

quote_did_purchase

Permiso: catalog:read

Cotiza un didId con cycle (monthly/semiannually/yearly) y paymentMethod (pix/card). No crea un pago.

create_did_checkout

Permiso: orders:create

Crea el pago después del consentimiento con los datos cotizados, confirmaciones requeridas e idempotencyKey. Un número por pedido.

get_did_order

Permiso: orders:read

Consulta un pedido propio por orderId, incluidas instrucciones de pago mientras estén vigentes.

list_did_orders

Permiso: orders:read

Lista pedidos de la cuenta con page y limit, con los límites del catálogo.

Solución de problemas

  • 401: compruebe encabezado, vencimiento y revocación.
  • 403: revise permisos, restricciones, SMS y análisis de seguridad.
  • 404: compruebe titularidad actual e identificadores de su cuenta.
  • 409: consulte el pedido o recurso antes de repetir cambios.
  • 429: respete Retry-After y los límites compartidos.

La guía de API detalla límites numéricos, payloads y códigos de error.

En esta página