
Sms
Connects AI agents to real SIM phone numbers across 145+ countries for SMS verification and OTP receiving. Exposes 18 tools including find_cheapest, wait_for_code, search_service, and swap_number. Supports both stdio and StreamableHTTP transports, with a hosted endpoint at mcp.virtualsms.io that requires zero local setup. Built on physical modem infrastructure, not VoIP, so numbers work with services that block virtual numbers like WhatsApp and banking apps. Covers 2500+ services including Telegram, Google, Instagram, and Uber. Useful when building agents that need to autonomously verify accounts or receive SMS codes. Pricing starts at $0.02 per number with WebSocket push for real-time delivery.
- tools
- 43
- auth
- Secret needed
- transport
- STDIO, HTTP
- env var
- 1
- last updated
- Sep 23, 2026
Tools
43 toolsPublic tool metadata for what this MCP can expose to an agent.
list_servicesAll available verification services. Optional `search` filter
All available verification services. Optional `search` filter
No parameter schema in public metadata yet.
list_countriesAll available countries. Optional `service` filter
All available countries. Optional `service` filter
No parameter schema in public metadata yet.
get_pricePrice and availability for a service plus country pair
Price and availability for a service plus country pair
No parameter schema in public metadata yet.
find_cheapestCheapest countries for a service, sorted by price, with stock levels
Cheapest countries for a service, sorted by price, with stock levels
No parameter schema in public metadata yet.
search_servicesNatural-language service lookup. "telega" finds Telegram
Natural-language service lookup. "telega" finds Telegram
No parameter schema in public metadata yet.
get_balanceAccount balance in USD
Account balance in USD
No parameter schema in public metadata yet.
get_profileEmail, Telegram link, balance, lifetime spend, total orders, active API keys
Email, Telegram link, balance, lifetime spend, total orders, active API keys
No parameter schema in public metadata yet.
get_statsOrders, success rate, spend, and status/service/country breakdown
Orders, success rate, spend, and status/service/country breakdown
No parameter schema in public metadata yet.
get_transactionsTransaction history with type, date range, and pagination filters
Transaction history with type, date range, and pagination filters
No parameter schema in public metadata yet.
create_orderBuy a number for a service plus country. Returns `order_id` and `phone_number`
Buy a number for a service plus country. Returns `order_id` and `phone_number`
No parameter schema in public metadata yet.
get_smsPoll an order for the code. Use for batch and cron jobs
Poll an order for the code. Use for batch and cron jobs
No parameter schema in public metadata yet.
wait_for_smsBlock until the SMS lands on an existing `order_id`, or until timeout
Block until the SMS lands on an existing `order_id`, or until timeout
No parameter schema in public metadata yet.
get_orderFull order detail plus every received message
Full order detail plus every received message
No parameter schema in public metadata yet.
list_ordersYour active orders. Essential for crash recovery
Your active orders. Essential for crash recovery
No parameter schema in public metadata yet.
order_historyPast orders with status, service, country, and date filters
Past orders with status, service, country, and date filters
No parameter schema in public metadata yet.
cancel_orderCancel and refund, if no SMS arrived. 120s cooldown after purchase
Cancel and refund, if no SMS arrived. 120s cooldown after purchase
No parameter schema in public metadata yet.
cancel_all_ordersBulk-cancel every active order
Bulk-cancel every active order
No parameter schema in public metadata yet.
swap_numberSwap for a new number, same service and country, no extra charge. 120s cooldown
Swap for a new number, same service and country, no extra charge. 120s cooldown
No parameter schema in public metadata yet.
rentals_pricingFull Access pricing tiers: durations and prices
Full Access pricing tiers: durations and prices
No parameter schema in public metadata yet.
rentals_availableCountries with rental stock, counts, and pricing, per tier
Countries with rental stock, counts, and pricing, per tier
No parameter schema in public metadata yet.
rentals_servicesServices available for Platform-tier rental in a country, with stock and price
Services available for Platform-tier rental in a country, with stock and price
No parameter schema in public metadata yet.
rentals_priceRetail price for a service, country, and duration combination
Retail price for a service, country, and duration combination
No parameter schema in public metadata yet.
create_rentalRent a number. Check availability and price first
Rent a number. Check availability and price first
No parameter schema in public metadata yet.
list_rentalsYour rentals across both tiers, filterable by status
Your rentals across both tiers, filterable by status
No parameter schema in public metadata yet.
get_rentalFull detail for one rental: tier, number, service lock, status, expiry, SMS
Full detail for one rental: tier, number, service lock, status, expiry, SMS
No parameter schema in public metadata yet.
extend_rentalExtend an active rental. Charges the current catalog price
Extend an active rental. Charges the current catalog price
No parameter schema in public metadata yet.
cancel_rentalFull refund, within 20 minutes of purchase and before any SMS
Full refund, within 20 minutes of purchase and before any SMS
No parameter schema in public metadata yet.
list_proxy_catalogPool types, countries, and price per GB. Start here
Pool types, countries, and price per GB. Start here
No parameter schema in public metadata yet.
list_proxy_locationsCities, states, ASNs, or ZIPs for a pool type plus country. No purchase required
Cities, states, ASNs, or ZIPs for a pool type plus country. No purchase required
No parameter schema in public metadata yet.
buy_proxyPurchase proxy traffic in GB. Returns credentials and remaining balance
Purchase proxy traffic in GB. Returns credentials and remaining balance
No parameter schema in public metadata yet.
list_proxiesYour proxies with remaining GB and credentials. Returns `proxy_id` values
Your proxies with remaining GB and credentials. Returns `proxy_id` values
No parameter schema in public metadata yet.
generate_proxy_endpointBuild a ready-to-use connection string: country, state, city, ZIP or ASN targeting, rotating or sticky, HTTP or SOCKS5
Build a ready-to-use connection string: country, state, city, ZIP or ASN targeting, rotating or sticky, HTTP or SOCKS5
No parameter schema in public metadata yet.
rotate_proxyRequest a fresh exit IP for an existing proxy
Request a fresh exit IP for an existing proxy
No parameter schema in public metadata yet.
test_proxyProve a proxy works. Reports exit IP, country, city, ISP, and latency
Prove a proxy works. Reports exit IP, country, city, ISP, and latency
No parameter schema in public metadata yet.
get_proxy_usageCached GB used and remaining, plus request count, for one proxy
Cached GB used and remaining, plus request count, for one proxy
No parameter schema in public metadata yet.
get_proxy_usage_historyPer-day traffic and request series over the last 7 or 30 days
Per-day traffic and request series over the last 7 or 30 days
No parameter schema in public metadata yet.
set_proxy_targetingPersist a default geo-targeting on a proxy sub-user
Persist a default geo-targeting on a proxy sub-user
No parameter schema in public metadata yet.
retry_orderAsk for the SMS to be resent to the same number. Not all order types support it
Ask for the SMS to be resent to the same number. Not all order types support it
No parameter schema in public metadata yet.
check_numberCarrier and line-type lookup for any E.164 number: mobile, landline or VoIP, plus spam risk
Carrier and line-type lookup for any E.164 number: mobile, landline or VoIP, plus spam risk
No parameter schema in public metadata yet.
start_manual_registration_sessionBeta, invite-only. Start a country-matched cloud browser you drive yourself in a live viewer
Beta, invite-only. Start a country-matched cloud browser you drive yourself in a live viewer
No parameter schema in public metadata yet.
navigate_sessionNavigate an active browser session to a URL
Navigate an active browser session to a URL
No parameter schema in public metadata yet.
session_viewerLive viewer URL and current status for an active session
Live viewer URL and current status for an active session
No parameter schema in public metadata yet.
stop_sessionStop an active browser session and release it
Stop an active browser session and release it
No parameter schema in public metadata yet.
Sponsors
Configuration
VIRTUALSMS_API_KEY*secretYour VirtualSMS API key from virtualsms.io
Readme
VirtualSMS MCP Server
Quick links: Quickstart · Why VirtualSMS · What you can build · Tools · Questions · Examples · Changelog · Security policy · Status
Details
- Repository
- github.com/virtualsms-io/mcp-server
- Categories
- Web & Browser Automation, Communication & Messaging
- Package
virtualsms-mcp- Transport
- STDIO, HTTP
- Auth
- Required
- Registry
- MCP registry, active