EnvoiSMS
Send SMS/WhatsApp and verify OTP codes in Morocco (+212) and worldwide. Direct carrier routing.
Sollte ich dies verwenden
Qualität und Sicherheit
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"envoisms": {
"url": "https://api.envoisms.ma/v1/mcp"
}
}
}Remote-Endpunkte
https://api.envoisms.ma/v1/mcpstreamable-httpWas es kann
Tool-Inventar
Tools (18)
🟡send_sms(to, message, sender_id)
Send a single SMS message to a phone number in E.164 format (+212600000000).
Eingabe-Schema
{
"type": "object",
"properties": {
"to": {
"type": "string",
"description": "Recipient phone number in E.164 format (+212600000000)"
},
"message": {
"type": "string",
"description": "Text content of the SMS"
},
"sender_id": {
"type": "string",
"description": "Optional approved custom Sender ID"
}
},
"required": [
"to",
"message"
]
}🟡send_bulk_sms(recipients, message, sender_id)
Send an SMS message to multiple recipients in E.164 format at once (up to 100 recipients).
Eingabe-Schema
{
"type": "object",
"properties": {
"recipients": {
"type": "array",
"items": {
"type": "string"
},
"description": "Array of recipient phone numbers in E.164 format (+212600000000)"
},
"message": {
"type": "string",
"description": "Text content of the SMS"
},
"sender_id": {
"type": "string",
"description": "Optional approved custom Sender ID"
}
},
"required": [
"recipients",
"message"
]
}🟡send_whatsapp_template(to, template_name, language, variables, phone_number_id)
Send an approved WhatsApp template message from the account's connected WhatsApp Business number. Templates may open a conversation at any time (no 24-hour window). Billed like the same send on POST /v1/messages.
Eingabe-Schema
{
"type": "object",
"properties": {
"to": {
"type": "string",
"description": "Recipient phone number in E.164 format (+212600000000)"
},
"template_name": {
"type": "string",
"description": "Name of an approved WhatsApp template on the account"
},
"language": {
"type": "string",
"description": "Template language code (e.g. fr, en_US, ar). Defaults to the template's own language."
},
"variables": {
"type": "array",
"items": {
"type": "string"
},
"description": "Values for the template body placeholders {{1}}, {{2}}, … in order"
},
"phone_number_id": {
"type": "string",
"description": "Optional: which connected WhatsApp number sends (defaults to the account's default number)"
}
},
"required": [
"to",
"template_name"
]
}🟢get_message_status(message_id)
Check the real-time delivery status, segments, and cost of a sent message by ID.
Eingabe-Schema
{
"type": "object",
"properties": {
"message_id": {
"type": "string",
"description": "Message ID returned by send_sms"
}
},
"required": [
"message_id"
]
}🟢list_messages(limit, status, channel)
List recent outbound messages for the authenticated account with optional filters.
Eingabe-Schema
{
"type": "object",
"properties": {
"limit": {
"type": "number",
"description": "Number of messages to retrieve (1-50, default 20)"
},
"status": {
"type": "string",
"enum": [
"queued",
"sent",
"delivered",
"failed",
"undeliverable"
],
"description": "Filter by delivery status"
},
"channel": {
"type": "string",
"enum": [
"sms",
"whatsapp"
],
"description": "Filter by communication channel"
}
}
}🟢get_balance
Check remaining SMS credit balance in MAD and account status.
Eingabe-Schema
{
"type": "object",
"properties": {}
}🟡create_topup(pack_id, amount_mad, currency, payment_method)
Create a balance top-up checkout link (Stripe card or crypto USDC) for the authenticated account.
Eingabe-Schema
{
"type": "object",
"properties": {
"pack_id": {
"type": "string",
"description": "SMS top-up pack ID (e.g. 'sms-300' for 300 MAD, 'sms-1000' for 1000 MAD, 'sms-5000' for 5000 MAD). Optional if amount_mad is provided."
},
"amount_mad": {
"type": "number",
"description": "Custom recharge amount in MAD (minimum 300 MAD). Optional if pack_id is provided."
},
"currency": {
"type": "string",
"enum": [
"mad",
"eur"
],
"description": "Payment presentation currency for card checkout ('mad' or 'eur'). Default 'mad'."
},
"payment_method": {
"type": "string",
"enum": [
"stripe",
"crypto"
],
"description": "Payment method ('stripe' for card or 'crypto' for USDC). Default 'stripe'."
}
}
}🟡send_otp(to, brand)
Send a 6-digit OTP verification code via SMS or WhatsApp.
Eingabe-Schema
{
"type": "object",
"properties": {
"to": {
"type": "string",
"description": "Recipient phone number in E.164 format"
},
"brand": {
"type": "string",
"description": "Brand name shown in the OTP message"
}
},
"required": [
"to"
]
}⚪verify_otp(session_id, code)
Verify an OTP passcode against a previously sent code.
Eingabe-Schema
{
"type": "object",
"properties": {
"session_id": {
"type": "string",
"description": "Session ID from send_otp"
},
"code": {
"type": "string",
"description": "6-digit OTP code to verify"
}
},
"required": [
"session_id",
"code"
]
}🟢list_campaigns(limit)
List SMS marketing campaigns created on the account.
Eingabe-Schema
{
"type": "object",
"properties": {
"limit": {
"type": "number",
"description": "Number of campaigns to retrieve (1-50, default 20)"
}
}
}🟢list_contacts(limit, q, list_id)
List saved contacts or search contacts by name, phone, or email.
Eingabe-Schema
{
"type": "object",
"properties": {
"limit": {
"type": "number",
"description": "Number of contacts to retrieve (1-100, default 20)"
},
"q": {
"type": "string",
"description": "Search query matching phone, name, or email"
},
"list_id": {
"type": "string",
"description": "Filter contacts by contact list ID"
}
}
}🟢get_analytics(days)
Get SMS & WhatsApp message delivery metrics, success rates, and volume statistics.
Eingabe-Schema
{
"type": "object",
"properties": {
"days": {
"type": "number",
"description": "Lookback window in days (1-365, default 30)"
}
}
}⚪ops_pulse(days)
Admin only. Business health snapshot: margin, cash collected, customer float (liability), solvency ratio, active accounts, and money stuck in the refund-review queue.
Eingabe-Schema
{
"type": "object",
"properties": {
"days": {
"type": "number",
"description": "Lookback window in days (1-365). Default 30."
}
}
}⚪ops_route_quality(days)
Admin only. Delivery quality per carrier/provider/channel, failure codes, DLR plausibility (whether delivery reports can be trusted), and ported-number routing hints. The data behind any provider-routing decision.
Eingabe-Schema
{
"type": "object",
"properties": {
"days": {
"type": "number",
"description": "Lookback window in days (1-365). Default 30."
}
}
}⚪ops_monitoring
Admin only. Current operational state: open ops alerts by severity, upstream gateway balance, and known issues that need attention right now.
Eingabe-Schema
{
"type": "object",
"properties": {}
}🟢lookup_number(to)
Inspect a phone number: validate format, identify Moroccan operator (IAM / Maroc Telecom, Orange, Inwi) or international country, and view applicable rate. Public — no authentication required.
Eingabe-Schema
{
"type": "object",
"properties": {
"to": {
"type": "string",
"description": "Phone number to lookup in national (06...) or E.164 (+212...) format."
}
},
"required": [
"to"
]
}🟢list_sender_ids(status)
Consultation des noms d'expéditeurs alphanumériques validés par l'ANRT. List approved and pending custom alphanumeric Sender IDs registered on the authenticated account.
Eingabe-Schema
{
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"approved",
"pending",
"rejected",
"all"
],
"description": "Filter sender IDs by status (approved, pending, rejected, all). Defaults to all."
}
}
}🟢get_pricing(to)
Get EnvoiSMS pricing. Pass `to` (a phone number in E.164, e.g. +2348012345678) for that destination's per-SMS rate; omit it for Moroccan rates and credit packs. Public — no authentication required.
Eingabe-Schema
{
"type": "object",
"properties": {
"to": {
"type": "string",
"description": "Destination phone number in E.164 format, e.g. +2348012345678. Optional."
}
}
}Empfohlene Prompts
get_message_statusget_message_statuslist_messageslist_messageslist_messagesget_message_statusCommunity
Nachweis