SuperAPI AI Directory

mcp-server

Receive SMS verification codes on virtual phone numbers for services like WhatsApp, Telegram and Google: find and buy numbers and extract codes.

Open website

About this tool

VirtualSMS MCP Server is an open-source MCP server published by virtualsms-io, used to expose the capabilities of the VirtualSMS account verification platform to AI agents and MCP-compatible clients.

Purpose The server is aimed at AI agent workflows that require real phone number verification, and is also suitable for individuals and developers using it manually or programmatically. Its core purpose is to receive one-time SMS verification codes, rent dedicated numbers, and optionally pair them with matching-country proxies and private cloud browser sessions to complete account registration or OTP flow testing.

Main Capabilities The platform integrates four types of capabilities into one API, one MCP server, and one prepaid balance:

  1. One-time SMS verification: receive verification codes, starting at $0.05 per code.
  2. Dedicated number rental: ranging from 1 day to 30 days, divided into two tiers: Full Access and Platform.
  3. Matching-country proxies: provide three types of proxy pools: residential, mobile, and data center; purchase traffic by GB and generate connection strings.
  4. Private cloud browser sessions: currently in Beta, invitation only. Numbers are carrier-issued physical SIM card mobile numbers, not VoIP, so they can pass line type checks in registration flows. The server provides 40 tools by default; setting VIRTUALSMS_ENABLE_SESSIONS=1 additionally exposes 3 session-related tools. Tool names actually have the virtualsms_ prefix, for example virtualsms_create_order, virtualsms_get_sms. Covers 2500+ services and 145+ countries.

Usage Can be used in any of the following ways:

  • REST API: documentation at virtualsms.io/docs
  • Official SDKs: Node, Python, PHP, Ruby, .NET
  • Hosted MCP server:https://mcp.virtualsms.io/mcp
  • Local stdio run: npx virtualsms-mcp stdio Before use, you need to obtain an API key at virtualsms.io. For clients that support streamableHttp, it is recommended to paste the hosted endpoint directly into the configuration; for local running, use the npx command. Supports clients such as Claude Code, Claude Desktop, Cursor, Windsurf, Cline, Zed, Continue.dev, Codex, OpenClaw, Hermes, etc. ChatGPT can connect to the hosted endpoint through a Developer Mode custom connector (available on Plus, Pro, Business, Enterprise, and Edu plans; not available on the free tier), and only supports SSE or streaming HTTP for remote MCP servers; you can also instead use the REST API to build a custom GPT or Action.

Core Workflow A typical two-step "buy and wait" process: first call create_order to purchase a number for the specified service and country and return an order_id, then call wait_for_sms and pass in that order_id, blocking to wait for the verification code to be returned via WebSocket push, usually taking 2 to 15 seconds. For batch tasks or self-managed polling, get_sms can be used to poll a single order. Before renting a number, you should first call rentals_available to query real-time inventory and durations, and call rentals_price to query Platform tier pricing; an active rental can be extended via extend_rental at the current catalog price. A rental can be canceled for a full refund within 20 minutes after purchase and before the first SMS arrives; the Platform tier has a 2-minute minimum holding period, and cancellation within the first 2 minutes will be rejected and must be retried.

Applicable Scenarios The following scenarios are clearly suitable for use:

  • An AI agent needs to register or log in to an account that requires a phone number
  • Testing OTP or registration flows and needing to obtain new numbers on demand
  • Automatically obtaining verification codes in CI or unattended tasks
  • Needing the number and the IP of the country where it is located to match each other
  • Driving registration automation in a browser and wanting the number, IP, and browser to come from the same place
  • Needing a one-time temporary number, or a dedicated number retained for up to 30 days
  • Needing per-code billing (starting at $0.05), noSubscription, no monthly number rental fee

Restrictions and unsuitable scenarios The following situations are explicitly unsuitable for use:

  • Need to send SMS: this platform only receives, does not send; use a messaging provider such as Twilio
  • Need a long-term or permanent business number: verification numbers are temporary, rented by the day, not by the year
  • Need to receive verification codes on an existing number: number porting in is not supported; numbers come from the platform's inventory
  • Running A2P marketing campaigns: completely unsuitable
  • Attempting to circumvent the platform's terms of service: it is the user's own responsibility to ensure use complies with the terms of the service being verified Other restrictions: numbers are carrier physical SIM cards, not VoIP; proprietary inventory; pricing and inventory vary by country and tier and are subject to real-time lookup; cloud browser sessions are Beta, the tool form may change, no stability guarantee, and access must be requested via https://t.me/VirtualSMS_io .

Additional notes The check_number tool can perform carrier and line type lookups on any E.164 number without an API key, returning whether the number is mobile, landline, or VoIP. The platform does not provide SMS sending, long-term numbers, number porting in, or A2P marketing capabilities. SMS-Activate shut down in December 2025; TextVerified, 5SIM, DaisySMS, and SMSPool are all active SMS verification providers, each with different APIs, pricing, coverage, and terms; please consult their current documentation. VirtualSMS does not provide a comparison table of competitor pricing, number of services, or coverage.