Recepción de SMS para agentes de IA
Un agente puede comprar un número y leer su código sin intervención humana.
No hay identidad que aportar
Una cuenta es una frase semilla que el agente genera y guarda. Nada que verificar, nada que entregar, nadie que ser.
No hace falta tarjeta
La financiación es en cripto. Un agente con cartera puede pagar por sí mismo: sin número de tarjeta, sin dirección de facturación, sin una persona que apruebe un pago.
No hay páginas que leer
Catálogo, precios, compra y entrega son todo llamadas a herramientas. Nada de esto necesita un navegador ni una captura de pantalla.
¿Cómo se conecta el servidor MCP?
Un solo endpoint, JSON-RPC 2.0 sobre HTTP en streaming. No hay clave de API que solicitar ni nada que instalar: las herramientas del catálogo funcionan antes de que exista una cuenta, y solo las que gastan dinero necesitan una semilla.
https://otpdrop.com/mcp
Claude Code
claude mcp add --transport http otpdrop https://otpdrop.com/mcp
Cursor, Windsurf, VS Code y la mayoría de los demás
Los clientes que hablan HTTP de forma nativa aceptan este mismo bloque. Cursor y Windsurf llaman a la
clave mcpServers; VS Code la llama servers.
{
"mcpServers": {
"otpdrop": {
"type": "http",
"url": "https://otpdrop.com/mcp"
}
}
}
| Cliente | Dónde vive la configuración |
|---|---|
| Claude Code | claude mcp add, o .mcp.json en el proyecto |
| Claude Desktop | Ajustes → Conectores → Añadir conector personalizado |
| Cursor | ~/.cursor/mcp.json, o .cursor/mcp.json por proyecto |
| VS Code | .vscode/mcp.json, bajo servers |
| Windsurf | ~/.codeium/windsurf/mcp_config.json |
Los clientes MCP cambian deprisa y estas rutas también. Si alguna no coincide con lo que ves, consulta la documentación de ese cliente: de nosotros solo vienen la URL y el transporte de arriba.
¿Y si el cliente solo habla stdio?
Algunos clientes no pueden abrir directamente un servidor MCP por HTTP. Puentéalo en local:
{
"mcpServers": {
"otpdrop": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://otpdrop.com/mcp"]
}
}
}
¿Y si no tienes ningún cliente MCP?
El servidor es un endpoint HTTP normal, así que cualquier lenguaje puede llamarlo. Así se listan las herramientas:
curl -s -X POST https://otpdrop.com/mcp \
-H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
Añade Authorization: Bearer <seed> para las herramientas que necesitan una cuenta.
Si prefieres no hablar JSON-RPC, las mismas operaciones están disponibles como endpoints REST normales
en la referencia de la API.
¿Qué puede hacer un agente en OTPDrop?
| Herramienta | Qué hace | Necesita semilla |
|---|---|---|
list_services | Todos los servicios con su código y categoría | no |
list_countries | Todos los países con su prefijo | no |
list_catalog | El catálogo completo con la matriz de precios | no |
quote | El precio de un servicio y un país | no |
agent_help | Instrucciones de uso de este servidor, en contexto | no |
create_account | Crear una cuenta nueva y su semilla | no |
topup | Obtener dirección e importe de depósito para una moneda | sí |
topup_status | Comprobar si un depósito se ha acreditado | sí |
buy_number | Comprar un número descontando del saldo | sí |
get_order | Detalles del pedido y estado actual | sí |
get_sms | El código de verificación en cuanto llega | sí |
Para los clientes que lo prefieran, tres recursos de solo lectura replican el catálogo:
catalog://services, catalog://countries y catalog://pairs.
¿Cómo es un recorrido completo?
Cinco llamadas de principio a fin. El único paso que depende del mundo exterior es la confirmación del depósito en la cadena.
- create_account: devuelve una semilla. Guárdala; es la única forma de volver a la cuenta y no puede restablecerse.
- topup: indica moneda e importe y recibe una dirección, el importe exacto que hay que enviar y una fecha de caducidad. Envía los fondos desde la cartera del agente.
- topup_status: consulta hasta que el depósito se acredite en el saldo.
- buy_number: indica servicio y país. El saldo se descuenta y el número se entrega al instante: sin dirección por compra y sin una segunda espera.
- get_sms: consulta hasta que llegue el código. Si no llega ninguno antes de que expire el pedido, el precio vuelve al saldo automáticamente.
Financia una vez, compra muchas. Una sola recarga cubre tantos números como permita su saldo, así que solo la primera compra de una sesión paga la espera de confirmación.
Descubrimiento
Todo lo necesario para integrarse es legible por máquinas y se sirve sin autenticación.
¿Qué conviene decirle a tu agente?
- La semilla no se puede recuperar. Un agente que genera una y no la guarda ha tirado el saldo con ella.
- Los depósitos se acreditan tras la confirmación en la red, que no es inmediata: consulta
topup_statusen vez de dar por hecho el éxito. - Envía solo la moneda y la red indicadas en la factura. Una transferencia por la red equivocada no se puede recuperar.
- Un código recibido completa el pedido y se cobra, aunque el servicio de destino lo rechace. Consulta las condiciones de reembolso.
- Los reembolsos vuelven al saldo de OTPDrop, nunca a una cartera.
¿Estás escribiendo una integración convencional? La documentación de la API REST cubre los endpoints, la autenticación y los códigos de error.