VirtualSMS MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| VIRTUALSMS_API_KEY | Yes | Your VirtualSMS API key (required for auth tools) | |
| VIRTUALSMS_BASE_URL | No | API base URL | https://virtualsms.io |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
| prompts | {} |
| resources | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| virtualsms_list_servicesA | Get all available SMS verification services (Telegram, WhatsApp, Google, etc.). Use this to discover valid service codes before buying a number. |
| virtualsms_list_countriesA | Get all available countries for SMS verification. Use this to discover valid country codes before buying a number. |
| virtualsms_get_priceA | Check the price and availability for a specific service + country combination. Always check price before buying to confirm availability. |
| virtualsms_get_balanceA | Check your VirtualSMS account balance in USD. Requires VIRTUALSMS_API_KEY to be set. |
| virtualsms_create_orderA | Purchase a virtual phone number for SMS verification. Returns order_id and phone_number. Use check_sms to poll for the verification code, or use wait_for_code to do it automatically. |
| virtualsms_get_smsA | Check if an SMS verification code has been received for an order. Returns status, phone_number, and (when delivered) messages[] array plus an extracted code. Poll this every 5-10 seconds after buying a number, or use wait_for_sms to block until delivery. |
| virtualsms_cancel_orderA | Cancel an order and request a refund. Only works if no SMS has been received yet. Use this if the service is taking too long or you want to try a different number. Cooldown: cancel is only available 120 seconds after purchase. Check |
| virtualsms_wait_for_smsA | Wait (block) until the SMS arrives on an existing order_id, or until timeout. Uses real-time WebSocket delivery with automatic polling fallback. Pass an order_id from create_order. To buy AND wait in one step, call create_order then this tool. |
| virtualsms_find_cheapestA | Find the cheapest countries for a given service, sorted by price. Returns available countries with prices and stock levels so you can pick the best deal. |
| virtualsms_search_servicesA | Find the right service code using natural language. Don't know the exact code? Just search "uber", "binance", "steam" etc. Returns matching services with similarity scores. |
| virtualsms_swap_numberA | Swap a phone number on an existing order. Gets a new number for the same service and country without additional charge. Use when the current number isn't receiving SMS. Cooldown: swap is only available 120 seconds after purchase. Check |
| virtualsms_list_ordersA | List your active orders. Essential for crash recovery — if your session was interrupted, use this to find pending orders and their phone numbers, then use check_sms to retrieve codes. |
| virtualsms_get_orderA | Get the full details of a specific order, including status, phone number, service, country, timestamps, and any received SMS code/text. Use this when you have an order_id and need the latest state beyond what check_sms returns. |
| virtualsms_cancel_all_ordersA | Bulk-cancel every currently active order in your account. Returns the number of orders cancelled plus any failures. Useful for quick cleanup after a batch run or test session. |
| virtualsms_order_historyA | List past orders with optional filters for status, service, country, and a lookback window in days. Returns up to 50 orders (server cap) ordered most-recent-first. |
| virtualsms_get_statsA | Account usage stats aggregated from your order history: total orders, success rate, total spend, top services/countries, and status breakdown over a configurable lookback window. |
| virtualsms_get_profileA | Full account profile: email, Telegram link status, current balance, lifetime spend, total orders, active API keys, and account creation date. |
| virtualsms_get_transactionsB | Transaction history for the account with optional filters for type, date range, and pagination. Types: "deposit", "purchase", "refund", "admin_credit". |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| verify-whatsapp | Complete workflow to get a WhatsApp verification code using a virtual number. Finds the cheapest available country, buys a number, and waits for the SMS code automatically. |
| verify-telegram | Complete workflow to verify a Telegram account with a virtual number. Automatically selects cheapest available country and waits for the SMS code. |
| verify-google | Get a Google account verification code via virtual phone number. Useful for creating or recovering Google/Gmail accounts. |
| find-cheapest-number | Find the cheapest virtual phone number for any service. Returns top countries sorted by price with stock availability. |
| verify-any-service | Universal SMS verification workflow. Searches for the service by name, finds the cheapest country, buys a number, and waits for the verification code. |
| recover-verification | Recover an interrupted SMS verification session. Lists active orders and checks for pending verification codes — useful after a crash or timeout. |
| check-account-status | Check your VirtualSMS account balance and list all active orders in one shot. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| Quickstart Guide | Step-by-step guide to get your first SMS verification code with VirtualSMS MCP. |
| Popular Services Reference | Commonly used service codes for WhatsApp, Telegram, Google, and other top services. |
| Pricing Tips | Tips on finding the cheapest virtual numbers and maximizing your VirtualSMS budget. |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/virtualsms-io/mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server