TopSMS

io.github.topsms-ghbPublished by GitHub account topsms-ghbv1.1.1Updated Nov 11, 2026

EU SMS gateway (topsms.eu, topsms.cz): send SMS, OTP codes, delivery status and credit.

VerifiedStreamable HTTPWeb executableCommunication & CollaborationSecurity & Monitoring

Overview

AI-generated overview

TopSMS lets an assistant send SMS and OTP verification codes through an EU SMS gateway, and check delivery status, bulk job progress and credit balance.

What you can do
  • Send a single SMS, optionally scheduled or with a Sender ID, and send the same text to up to 500 recipients as a bulk job.
  • Track delivery status of individual messages and progress of queued bulk sends.
  • Cancel a scheduled send or a bulk job that has not started, with credit returned.
  • Send one-time verification codes by SMS and check the code a user entered.
  • Read the account credit balance and the public price list.
When to use it
Useful when an assistant should send transactional or notification SMS, run bulk text campaigns, or add SMS-based OTP verification to a signup or login flow, and when you want delivery status and remaining credit visible in the same conversation.
Requirements
A TopSMS account at topsms.eu (EUR) or topsms.cz (CZK) with prepaid credit. An API key created in the dashboard with send and read scopes, supplied as TOPSMS_CLIENT_ID and TOPSMS_SECRET. Runs as a remote endpoint or locally via npx topsms-mcp; OAuth is declared.
Before you install
Every send call spends real prepaid credit, including bulk sends to up to 500 numbers; keep client confirmation prompts enabled. The API secret is a billable credential and should be stored only in the client's environment configuration. Sending SMS transmits message content and recipient phone numbers to TopSMS as a third party.

Installation

In SourceWeft

  1. Open TopSMS in the dashboard and add it to a workspace.
  2. Connect the required credentials. They are stored privately and never shown on public pages.
  3. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.topsms-ghb%2Ftopsms-mcp/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config. The client completes OAuth sign-in on first connect.

{
  "mcpServers": {
    "topsms": {
      "type": "http",
      "url": "https://topsms.eu/api/mcp"
    }
  }
}

README

TopSMS MCP server

Send SMS from Claude, ChatGPT, Cursor and other AI assistants through TopSMS, an SMS gateway for businesses with two front doors: TopSMS.cz for the Czech Republic and Slovakia (billed in CZK) and TopSMS.eu for Germany, Austria and the rest of the EU (billed in EUR). One API, 200+ countries, prepaid, no monthly fee, 10 free SMS on registration.

Tools

ToolWhat it does
send_smsSend one SMS (number, text, optional Sender ID, optional send_at to schedule, optional idempotency key)
send_bulk_smsSame text to up to 500 numbers; over 50 recipients it is queued and returns a jobId
get_message_statusDelivery status of a message (queued, sent, delivered, failed, expired)
get_bulk_jobProgress of a queued bulk send
cancel_scheduledCancel a scheduled send (credit is returned)
verify_sendSend a one-time verification code (OTP) by SMS
verify_checkCheck the code the user entered
get_creditCredit balance in CZK and price per SMS
get_pricingPublic price list (no credentials needed)

Setup

  1. Create a free account at topsms.eu (English/German, billed in EUR) or topsms.cz (Czech, billed in CZK). 10 free SMS either way.
  2. In the dashboard open API klíče (API keys), create a key with scopes send and read, copy the Client ID and Secret.
  3. Add the server to your MCP client.

Claude Desktop / Claude Code

json
{  "mcpServers": {    "topsms": {      "command": "npx",      "args": ["-y", "topsms-mcp"],      "env": {        "TOPSMS_CLIENT_ID": "your-client-id",        "TOPSMS_SECRET": "your-secret"      }    }  }}

Claude Code: claude mcp add topsms -e TOPSMS_CLIENT_ID=... -e TOPSMS_SECRET=... -- npx -y topsms-mcp

Cursor, Windsurf, VS Code

Use the same command, args and env in the client's MCP configuration.

Pricing

€0.084 per SMS to Germany, Austria and other EU countries, €0.036–0.040 to Czech and Slovak numbers, no monthly fees, credit never expires. Full price list: https://topsms.eu/#pricing (EUR) · https://www.topsms.cz/pricing.json (CZK).

Notes

License

MIT

Source: README.md at commit 268fd09

Tools

9

send_sms

Send one SMS message via TopSMS (Czech SMS gateway). Costs credit: 160 chars without diacritics = 1 SMS, 70 with diacritics/emoji. Returns message id, number of segments and price in your account currency (field currency: EUR for topsms.eu accounts, CZK for topsms.cz).

Parameterstorequiredfromtextrequiredsend_atidempotencyKey

send_bulk_sms

Send the same SMS text to up to 500 recipients. Batches over 50 recipients are queued (HTTP 202) and return a jobId; use get_bulk_job to follow progress.

Parameterstorequiredfromtextrequiredsend_atidempotencyKey

get_message_status

Get delivery status of a sent message (queued, sent, delivered, failed, expired) with timestamps, errorMessage and machine-readable errorCode (expired, undelivered, rejected, deleted, unknown, repeated_failure, not_sent), by message id or external id.

Parametersidrequired

get_bulk_job

Get progress of a queued bulk send (status, sent, failed, queued counts and per-message results).

ParametersjobIdrequiredresults

cancel_scheduled

Cancel a scheduled send (or a queued bulk job that has not started yet). Unsent messages are removed and their price is returned to credit.

ParametersjobIdrequired

verify_send

Send a one-time verification code (OTP) by SMS for login, registration or payment confirmation. TopSMS generates and stores the code; returns a verification id. Limits: 5 codes per number per hour, 30 s between codes.

Parameterstorequiredttlfrombrandlengthlocale

verify_check

Check a verification code the user entered. Returns valid true/false, status (approved, pending, expired, failed, canceled) and attempts left (max 5 attempts per code).

Parametersidtocoderequired

get_credit

Get the current TopSMS credit balance and base price per SMS in your account currency (field currency: EUR or CZK).

Takes no parameters.

get_pricing

Get the public TopSMS price list (tiers, prices per destination zone in CZK and EUR, Sender ID fee, billing rules). Does not require credentials.

Takes no parameters.

Version history

2
  1. v1.1.1LatestNov 8, 2026
  2. v1.1.0Oct 1, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listed15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts