Servidor MCP nativo para IA

Servidor MCP de SMSBulk

Usa SMSBulk directamente desde Claude Desktop, Cursor o cualquier cliente compatible con MCP: pide números SMS y direcciones de correo desechables y lee los códigos.

El Model Context Protocol (MCP) permite que los asistentes de IA llamen a herramientas externas. Este servidor de código abierto conecta la API de SMSBulk con tu cliente de IA, sin lógica de negocio y sin almacenar secretos.

Código abierto en GitHub

Qué hace

El servidor es un relé puro: reenvía cada solicitud a la API pública de SMSBulk usando tu propia clave de API. Expone 18 herramientas en cuatro grupos: catálogo, SMS, monedero y correo.

A diferencia de los proveedores que solo ofrecen SMS, SMSBulk ofrece verificación por teléfono y por correo. Las herramientas de correo no tienen equivalente en la mayoría de servidores MCP de la competencia.

Instalación

Requiere Node.js 18 o superior. Clona el repositorio, instala las dependencias y compila:

git clone https://github.com/Tolunay3434/smsbulk-mcp.git
cd smsbulk-mcp
npm install
npm run build

Luego apunta tu cliente MCP al dist/index.js compilado. Las herramientas de catálogo funcionan sin clave; las demás necesitan tu clave de API de SMSBulk.

Configuración del cliente

Claude Desktop

{
  "mcpServers": {
    "smsbulk": {
      "command": "node",
      "args": ["/absolute/path/to/smsbulk-mcp/dist/index.js"],
      "env": {
        "SMSBULK_API_KEY": "your_api_key_here",
        "MAX_SPEND_PER_SESSION": "5"
      }
    }
  }
}

Añade esto a claude_desktop_config.json y reinicia Claude Desktop. Las herramientas de SMSBulk aparecerán en el menú de herramientas.

Cursor

{
  "mcpServers": {
    "smsbulk": {
      "command": "node",
      "args": ["/absolute/path/to/smsbulk-mcp/dist/index.js"],
      "env": {
        "SMSBULK_API_KEY": "your_api_key_here"
      }
    }
  }
}

Añade esto a ~/.cursor/mcp.json (global) o .cursor/mcp.json (por proyecto).

Sustituye /absolute/path/to/smsbulk-mcp por la ruta real donde clonaste el repositorio. Nunca subas tu clave de API.

Referencia de herramientas

18 herramientas. Las de catálogo no necesitan clave; las demás envían tu x-api-key.

Catálogo

No requiere clave de API
list_services

Todos los servicios activos con resumen de stock y precio mínimo.

list_countries

Todos los países admitidos con banderas y códigos ISO.

get_serviceslug

Un servicio, buscado por slug SEO o código de servicio.

get_service_countriesslug

Países con stock para un servicio, con precios, stock y niveles de velocidad.

Verificación por SMS

Requiere clave de API
request_numberserviceCode, countryIso, operator?, idempotency_token?Gasta

Reserva un número para verificación por SMS. Con protección ante reintentos.

get_statusid

Estado y código SMS (una vez recibido) de una activación.

completeid

Marca una activación como completada. Es definitivo.

cancelid

Cancela una activación; reembolsa el monedero si no llegó ningún SMS.

request_resendid

Pide al proveedor que envíe otro SMS al mismo número.

list_activationslimit?, cursor?, status?

Tus activaciones, paginadas por cursor, de más reciente a más antigua.

Monedero

Requiere clave de API
get_balance

El saldo actual de tu monedero.

list_transactionslimit?, cursor?

Depósitos, cargos y reembolsos recientes.

Verificación por correo

Requiere clave de APINo disponible en servidores solo SMS
email_get_domainssite

Dominios de correo disponibles para un sitio objetivo, con precios y stock.

email_requestsite, domain, idempotency_token?Gasta

Reserva una dirección de correo desechable. Con protección ante reintentos.

email_listlimit?

Tus activaciones de correo recientes, de más reciente a más antigua (hasta 100, sin cursor).

email_get_statusid

Estado, OTP analizado y cuerpo HTML en bruto (una vez recibido).

email_reorderidGasta

Reabre la misma dirección para otro OTP.

email_cancelid

Cancela; reembolsa el monedero si no llegó ningún OTP.

Seguridad y limitaciones

Estas protecciones son cinturones de seguridad de conveniencia, no garantías.

Protección de reintento de mejor esfuerzo: no es idempotencia garantizada

request_number y email_request mantienen una pequeña protección en memoria que detecta el caso accidental común: si la misma herramienta de pedido se ejecuta dos veces en una sesión con argumentos idénticos, la segunda llamada devuelve el primer resultado en lugar de volver a cobrar. No es idempotencia garantizada: vive solo en la memoria de este proceso, se reinicia al reiniciar, no se coordina entre clientes y no puede evitar una verdadera condición de carrera del lado del servidor. Para reintentar con seguridad un pedido, pasa el mismo idempotency_token; para hacer deliberadamente un segundo pedido, pasa uno diferente.

Límite de gasto flexible (MAX_SPEND_PER_SESSION)

Cuando se establece, el servidor rastrea el coste real de cada pedido exitoso y bloquea el siguiente pedido cuando el total acumulado alcanza tu límite. Es flexible y en memoria: se reinicia al reiniciar, cubre solo esta sesión y bloquea el siguiente pedido en lugar de dividir uno. Un pedido realizado mientras aún estás por debajo del límite se permite aunque haga que el total lo supere. Es una capa adicional sobre los límites del lado del servidor de tu cuenta (saldo, cuota diaria, límites de frecuencia).

Lleva la verificación a tu flujo de trabajo con IA

Clona el servidor, añade tu clave de API y pide códigos SMS o de correo directamente desde tu asistente.