SMS8 - SMS GATEWAY using your phone
oficialConecta SMS ilimitados, verificación OTP y webhooks entrantes a tu asistente de codificación de IA usando tu teléfono Android emparejado como puerta de enlace. Misma clave API de SMS8, herramientas JSON-RPC para cada flujo. Sin Twilio, sin A2P 10DLC, sin tarifas por mensaje.
¿Qué puedes hacer con SMS8 SMS GATEWAY Using Your Phone MCP?
- Send an SMS — Pídele a tu IA que envíe un mensaje de texto a cualquier número usando
send_sms, enrutado a través de tu teléfono Android emparejado. - Issue and verify OTPs — Genera un código de un solo uso con
send_otpy valídalo converify_otppara flujos de registro o inicio de sesión. - Wait for incoming codes — Usa
wait_for_otppara bloquear hasta que llegue un OTP al dispositivo emparejado y extraer automáticamente el código. - Check recent messages — Recupera el historial de SMS de la bandeja de entrada o enviados mediante
get_messages. - List paired devices — Ve qué teléfonos Android están conectados a tu cuenta con
list_devices. - Register a webhook — Configura una URL de callback mediante
create_webhookpara recibir SMS entrantes y eventos de entrega.
Documentación
Servidor MCP SMS8
Pasarela SMS → sms8.io · Pasarela SMS MCP para desarrolladores y vibe coders → mcp.sms8.io
Envía SMS, emite y verifica OTPs, espera códigos entrantes y configura webhooks desde Claude Code, Cursor, Windsurf, OpenCode y cualquier otra herramienta de codificación con IA que utilice el Protocolo de Contexto de Modelo. Los SMS se enrutan a través de un teléfono Android vinculado mediante la plataforma SMS8.
Servidor en vivo: https://mcp.sms8.io Panel de control: https://app.sms8.io Sitio de marketing: https://sms8.io
Por qué usar esto
¿Estás creando una aplicación y quieres notificaciones SMS, OTPs, mensajería bidireccional o verificación telefónica para agentes autónomos? La mayoría de las opciones te obligan a registrarte en programas de operadores, aprovisionar números de teléfono, pagar por mensaje o alquilar una SIM desechable por sesión. SMS8 enruta los SMS a través de un teléfono que ya posees. El servidor MCP le da a tu asistente de IA nueve herramientas que puede llamar directamente, por lo que añadir SMS a un proyecto toma una sola instrucción en lugar de una hora de trabajo de integración.
Lo que obtienes
| Herramienta | Propósito |
|---|---|
setup_sms8 | Valida la clave API, devuelve el contexto de la cuenta y ejemplos de código |
send_sms | Envía un SMS a través de un dispositivo Android vinculado |
send_otp | Genera y envía un código de verificación |
verify_otp | Compara un código escrito con el último OTP emitido |
wait_for_otp | NUEVO. Se bloquea hasta que llega un OTP al Android vinculado; extrae el código |
get_messages | Devuelve los SMS recientes de la bandeja de entrada o enviados |
list_devices | Lista los dispositivos Android vinculados |
get_balance | NUEVO. Verificación ligera de crédito y renovación |
create_webhook | Registra una URL de callback para SMS entrantes y eventos de entrega |
Todas las herramientas comparten el mismo flujo de envío que el panel de control de SMS8. Los créditos, reintentos, enrutamiento multidispositivo y firma de webhooks funcionan de manera idéntica a una llamada directa a la API.
SMS8 vs Twilio vs MessageBird
| Capacidad | SMS8 | Twilio | MessageBird |
|---|---|---|---|
| Servidor MCP integrado | Sí | No | No |
| Tarifa por mensaje | Ninguna | $0.0079+ | $0.05+ |
| Requiere A2P 10DLC | No | Sí | Sí |
| Aprovisionamiento de número telefónico | No necesario | $1+/mes | $2+/mes |
| Tiempo de configuración | 60 segundos | Días a semanas | Días |
| Verificación OTP integrada | Sí | Servicio extra | Servicio extra |
| Código MCP de código abierto | MIT | No | No |
Instalación vía npm
Seis paquetes cubren cada flujo: elige el que se ajuste a tu proyecto.
| Paquete | Comando de ejecución | Caso de uso |
|---|---|---|
sms8-mcp | npx -y sms8-mcp | Lanzador MCP para Claude Code, Cursor, Windsurf, OpenCode |
sms8-cli | npx sms8-cli send +1234 "hi" | CLI de terminal para enviar / OTP / bandeja de entrada / dispositivos |
react-sms-otp | npm i react-sms-otp | React useSms8Otp() + <OtpForm /> + <OtpInput /> (separadores, RTL, máscara, render props) |
sms-otp-verify | npm i sms-otp-verify | Mismo código, nombre orientado a SEO para búsquedas "sms otp verify" / "otp input" |
capacitor-sms-otp-send-verify | npm i capacitor-sms-otp-send-verify | Plugin Capacitor para aplicaciones Ionic — nativo iOS Swift + Android Kotlin + fallback web |
cordova-plugin-sms-otp-send | cordova plugin add cordova-plugin-sms-otp-send | Plugin Cordova para aplicaciones Ionic — nativo iOS Swift + Android Kotlin |
sms-otp-using-myphone | npx sms-otp-using-myphone send +1234 | Marca solo OTP del mismo CLI |
phone-sms-gateway | npx phone-sms-gateway send +1234 "hi" | Marca teléfono-como-pasarela del mismo CLI |
send-sms-from-android | npx send-sms-from-android send +1234 "hi" | Marca Android-first del mismo CLI |
Ejemplo MCP (Claude Code, Cursor, Windsurf — misma forma de configuración):
{
"mcpServers": {
"sms8": {
"command": "npx",
"args": ["-y", "sms8-mcp"],
"env": { "SMS8_API_KEY": "sk_xxx" }
}
}
}
Ejemplo CLI:
export SMS8_API_KEY=sk_xxx
npx sms8-cli send +14155550100 "Hello"
CODE=$(npx sms8-cli otp wait +Google --timeout=120)
Ejemplo React:
import { OtpForm } from 'react-sms-otp';
<OtpForm
apiKey={process.env.NEXT_PUBLIC_SMS8_API_KEY!}
onVerified={(phone) => router.push('/dashboard')}
/>
El código fuente de los seis paquetes reside en npm-packages/.
SDKs para iOS + Android
Para aplicaciones móviles nativas, la carpeta sdks/ incluye SDKs en Kotlin (Android) y Swift (iOS) con la API de enviar / verificar + ayudantes de autocompletado SMS (Google SMS Retriever en Android, tipo de contenido oneTimeCode en iOS).
| SDK | Instalación | Autocompletado |
|---|---|---|
sms8-swift | Swift Package Manager — ver README | Vista SwiftUI OTPTextField de iOS |
sms8-android | JitPack — ver README | SMSRetriever.start(activity) — no necesita permiso de SMS |
Ambos SDKs son MIT, comparten la misma clave API de SMS8 y apuntan a los mismos casos de uso alternativos a Twilio Verify.
Inicio rápido
1. Obtén una cuenta SMS8
Regístrate en app.sms8.io. Prueba gratuita de 5 días, sin tarjeta de crédito. Vincula tu teléfono Android mediante QR y copia tu clave API desde Perfil luego API.
2. Añade el servidor MCP a tu herramienta
HTTP alojado (Claude Code, Cursor, Windsurf, Codex, Devin)
{
"mcpServers": {
"sms8": {
"url": "https://mcp.sms8.io",
"transport": "http",
"headers": {
"Authorization": "Bearer YOUR_SMS8_API_KEY"
}
}
}
}
Plugin de Claude Code (un comando)
/plugin marketplace add 1fancy/sms8-sms-gateway
/plugin install sms8-sms-gateway
Luego export SMS8_API_KEY=sk_xxx en tu shell antes de lanzar Claude Code.
npx para clientes stdio
{
"mcpServers": {
"sms8": {
"command": "npx",
"args": ["-y", "@sms8/mcp"],
"env": { "SMS8_API_KEY": "sk_your_key" }
}
}
}
3. Asistente de configuración
El panel de control en app.sms8.io/mcp-setup.php prellena el JSON para cada herramienta de IA, muestra tu QR de vinculación de dispositivo si es necesario e incluye un formulario de prueba de SMS en vivo.
4. Pregunta a tu IA
Add SMS verification to my signup flow using the sms8 MCP.
La IA llamará a setup_sms8, luego a send_otp y verify_otp, y escribirá código de producción que funciona al primer intento.
Casos de uso
Estas son instrucciones reales de una línea que puedes pegar en Claude Code, Cursor o Windsurf.
Verificación telefónica en el registro
Wire phone-number verification into this app using the sms8 MCP. Use
send_otp on /signup, verify_otp on /verify-phone. Render the remaining
attempts on error.
Notificaciones de envío de pedidos
When an order ships, send the customer an SMS with their tracking link
via the sms8 MCP.
Bandeja de entrada de soporte bidireccional
Register a webhook with the sms8 MCP at https://my-app.com/sms-inbox.
Scaffold the handler that verifies the HMAC signature and routes inbound
SMS to the support queue.
Inicio de sesión sin contraseña por SMS
Replace the magic-link email login with SMS OTPs using the sms8 MCP.
6-digit code, 5-minute expiry, 5 attempts.
SMS 2FA para páginas de administración
Add SMS 2FA to /admin login via the sms8 MCP. Lock the account after
5 failed verify_otp attempts.
Ejemplos de código listos para usar
Cada archivo en examples/ está listo para producción, sin dependencias y se puede copiar y pegar. Esto es lo que la IA genera después de un handshake setup_sms8.
php-send.php: claseSms8Sendermínima consend,sendOtp,verifyOtpjs-fetch.js: cliente para Node / navegador / Cloudflare Worker (ESM y CommonJS)otp-flow.php: flujo completo de verificación telefónica (startSignup+verifySignup)webhook-handler.php: manejador de SMS entrantes con verificación de firma HMAC
Preguntas frecuentes
¿Qué es el servidor MCP SMS8?
Un endpoint HTTPS en mcp.sms8.io que implementa el Protocolo de Contexto de Modelo. Las herramientas de codificación con IA llaman a su interfaz JSON-RPC para enviar SMS, emitir OTPs y configurar webhooks. Los SMS se enrutan a través de un teléfono Android vinculado mediante la plataforma SMS8.
¿En qué se diferencia de Twilio?
SMS8 usa tu propio teléfono Android como pasarela con tu tarjeta SIM existente. No hay tarifas de operador por mensaje, no se requiere registro A2P 10DLC y no hay que aprovisionar un número de teléfono. Pagas un plan fijo y envías SMS ilimitados. El servidor MCP expone siete herramientas que tu asistente de IA puede llamar directamente, algo que Twilio no ofrece.
¿Funciona con Claude Code?
Sí. Añade el servidor MCP a ~/.config/claude/mcp-servers.json con el transporte HTTP apuntando a https://mcp.sms8.io y tu clave API de SMS8 como token Bearer. O ejecuta /plugin marketplace add 1fancy/sms8-sms-gateway seguido de /plugin install sms8-sms-gateway.
¿Funciona con Cursor y Windsurf?
Sí. Ambos soportan servidores MCP HTTP. Añade https://mcp.sms8.io con tu clave API como cabecera Bearer a ~/.cursor/mcp.json (Cursor) o ~/.codeium/windsurf/mcp_config.json (Windsurf). El asistente de configuración en app.sms8.io/mcp-setup.php prellena el JSON para cada herramienta.
¿Puede la IA añadir verificación OTP automáticamente?
Sí. La Skill incluida de Claude Code (skills/send-sms/SKILL.md) enseña al asistente cuándo llamar a send_otp y verify_otp, y cómo envolver una ruta de registro o inicio de sesión existente con el paso de verificación. Una instrucción como "añade verificación telefónica a /signup" es suficiente.
¿El código fuente es público?
Sí, con licencia MIT. El servidor, las siete implementaciones de herramientas, el lanzador npm (@sms8/mcp), el manifiesto del plugin de Claude Code y el código de ejemplo residen en este repositorio.
¿Qué pasa con mi clave API?
Tu clave API autentica cada llamada a herramienta MCP a través de una cabecera Authorization: Bearer (o X-Api-Key). El servidor alojado la valida contra tu cuenta SMS8, luego enruta la llamada a través del flujo de envío existente de SMS8. La respuesta setup_sms8 devuelve solo los últimos cuatro caracteres de tu clave, por lo que nunca se filtra en el historial de chat de la IA o en los registros.
¿Es seguro usarlo en producción?
Sí. Las defensas del lado del servidor incluyen:
- Límite de tasa por clave heredado de la API de SMS8
- Límite estricto de 5 OTPs por número de teléfono cada 24 horas, no configurable por el usuario
- Tiempo de espera de reenvío de 30 a 600 segundos (por defecto 60 segundos)
- Endpoints OTP solo POST; GET devuelve 405; se ignoran las cookies
- Verificaciones de límite de tasa envueltas en transacciones con bloqueos de fila; las llamadas concurrentes no pueden sobrepasar los límites
- Firmas de webhook HMAC-SHA256
- Lista de bloqueo SSRF completa en
create_webhookque cubre RFC1918, CGNAT, link-local, IPv4 mapeada a IPv6 y hosts resueltos por DNS - CORS solo anunciado para métodos de descubrimiento;
tools/callomite CORS para que una página web maliciosa no pueda impulsar envíos de SMS
¿Puedo autoalojar el servidor MCP?
Sí. Clona el repositorio, establece SMS8_APP_PATH en tu directorio de instalación de SMS8 y ejecuta:
git clone https://github.com/1fancy/sms8-sms-gateway.git
cd sms8-sms-gateway
export SMS8_APP_PATH=/path/to/your/sms8-install
php -S 127.0.0.1:8080 index.php
El servidor alojado en mcp.sms8.io es gratuito y más fácil para la mayoría de los usuarios.
¿Qué es "vibe coding"?
Vibe coding es entregar software funcional describiendo lo que quieres en lenguaje natural a un asistente de IA en lugar de escribir cada línea a mano. SMS8 MCP hace posible una de las solicitudes más comunes ("añadir notificaciones SMS") sin tener que tocar nunca un portal de operador o papeleo A2P.
Seguridad y secretos
Este repositorio no contiene secretos. Todas las credenciales residen en variables de entorno o en la configuración MCP de tu herramienta de IA:
SMS8_API_KEY=sk_… # from app.sms8.io → Profile → API
SMS8_WEBHOOK_SECRET=… # from app.sms8.io → Webhook
Para detalles completos de seguridad, consulta la sección de preguntas frecuentes anterior. Un resumen de auditoría de seguridad separado está disponible bajo solicitud.
Estructura del repositorio
.
├── README.md this file
├── LICENSE MIT
├── index.php MCP server entry (JSON-RPC dispatcher)
├── landing.html marketing landing at mcp.sms8.io
├── .claude-plugin/plugin.json Claude Code plugin manifest
├── .mcp.json MCP server config referenced by the plugin
├── skills/send-sms/SKILL.md teaches Claude when to invoke SMS8 tools
├── npm-packages/ five published npm packages
│ ├── sms8-mcp/ MCP stdio bridge (sms8-mcp)
│ ├── sms8-cli/ universal CLI (sms8)
│ ├── sms-otp-using-myphone/ OTP-only brand of the CLI
│ ├── phone-sms-gateway/ phone-as-gateway brand of the CLI
│ └── send-sms-from-android/ Android-first brand of the CLI
├── lib/ Auth, JsonRpc, ToolRegistry
├── tools/ 7 tool implementations
└── examples/ PHP and JS drop-in samples
Hoja de ruta
- Servidor MCP HTTP en vivo en
mcp.sms8.io - Endpoints OTP con límite de abuso por teléfono
- Paquetes npm
sms8-mcp,sms8-cli,sms-otp-using-myphone,phone-sms-gateway,send-sms-from-android - Plugin y Skill de Claude Code
- Soporte MMS
- SMS entrantes enrutados automáticamente a la IA para generar respuestas
- Límites de tasa por herramienta configurables en el panel de control
- Ejemplos de código en Python, Go y Ruby
Contribuciones
Issues y pull requests son bienvenidos en github.com/1fancy/sms8-sms-gateway. Abre una discusión antes de cambios más grandes.
Licencia
MIT. Ver LICENSE.
Palabras clave
protocolo de contexto de modelo, servidor mcp, mcp sms, claude code sms, claude code mcp, cursor mcp, windsurf mcp, api sms, api otp, pasarela sms, pasarela sms android, alternativa a twilio, vibe coding, integración sms ia, notificaciones sms, enviar sms desde claude, enviar sms desde cursor, api de verificación telefónica, sms otp, 2fa sms, webhook sms, sms entrantes, sms bidireccional, sms ilimitados, sin tarifas por mensaje, sin A2P 10DLC, herramientas de codificación ia, sms8