virtualsms-io avatar

Sms

virtualsms-io/mcp-server

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 tools

Public 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*secret

Your VirtualSMS API key from virtualsms.io

Readme

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

Related Web & Browser Automation MCP servers

View all
1tosin2013 avatarHelmdecktosin2013/helmdeckSelf-hosted MCP server: sandboxed browser, desktop, vision, code-edit packs for any agent.6stars
2ironclawdevs27 avatarArgusironclawdevs27/argusAutomated web QA via Chrome DevTools MCP — a11y, security, visual, env diff, CI; Aegis redaction.5stars
3enreign avatarPagerunner — The Browser Layer That Learnsenreign/pagerunnerReal Chrome profiles with site intelligence — already logged in, PII anonymization, sessions persist3stars
4kc23go avatarAnybrowsekc23go/anybrowseConverts any URL to clean, LLM-ready Markdown using real Chrome browsers3stars
5dwytmcl avataranysitedwytmcl/anysite-mcpAny website as MCP tools: a real Chrome signed in as you, and shortcuts the agent saves as tools.1stars
6imrrd avatarPowershell Mcpimrrd/powershell-mcpHeadless Windows ops over MCP: hidden PowerShell plus in-process SSH, WinRM and SFTP.1stars