Send SMS/WhatsApp and verify OTP codes in Morocco (+212) and worldwide. Direct carrier routing.
Inferred from the transports this listing declares (streamable-http). A client not listed here hasn’t been ruled out — it just isn’t something Forge can confirm.
Verification confirms publisher identity (repo ownership), not code safety. The security scan covers known CVEs and suspicious install scripts.
Read from a real MCP initialize → tools/list handshake against the declared endpoint. No tool was ever invoked — tools/list is the read-only introspection call the protocol defines for this. It reflects what the server advertised at that moment; a hosted endpoint is not pinned to any version and can change without notice.
https://api.envoisms.ma/v1/mcp18 tools · 383mssend_smsSend a single SMS message to a phone number in E.164 format (+212600000000).Send a single SMS message to a phone number in E.164 format (+212600000000).
| Parameter | Type | Description |
|---|---|---|
| to* | string | Recipient phone number in E.164 format (+212600000000) |
| message* | string | Text content of the SMS |
| sender_id | string | Optional approved custom Sender ID |
send_bulk_smsSend an SMS message to multiple recipients in E.164 format at once (up to 100 recipients).Send an SMS message to multiple recipients in E.164 format at once (up to 100 recipients).
| Parameter | Type | Description |
|---|---|---|
| recipients* | array | Array of recipient phone numbers in E.164 format (+212600000000) |
| message* | string | Text content of the SMS |
| sender_id | string | Optional approved custom Sender ID |
send_whatsapp_templateSend 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.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.
| Parameter | Type | Description |
|---|---|---|
| to* | string | Recipient phone number in E.164 format (+212600000000) |
| template_name* | string | Name of an approved WhatsApp template on the account |
| language | string | Template language code (e.g. fr, en_US, ar). Defaults to the template's own language. |
| variables | array | Values for the template body placeholders {{1}}, {{2}}, … in order |
| phone_number_id | string | Optional: which connected WhatsApp number sends (defaults to the account's default number) |
get_message_statusCheck the real-time delivery status, segments, and cost of a sent message by ID.Check the real-time delivery status, segments, and cost of a sent message by ID.
| Parameter | Type | Description |
|---|---|---|
| message_id* | string | Message ID returned by send_sms |
list_messagesList recent outbound messages for the authenticated account with optional filters.List recent outbound messages for the authenticated account with optional filters.
| Parameter | Type | Description |
|---|---|---|
| limit | number | Number of messages to retrieve (1-50, default 20) |
| status | string | Filter by delivery status |
| channel | string | Filter by communication channel |
get_balanceCheck remaining SMS credit balance in MAD and account status.Check remaining SMS credit balance in MAD and account status.
No input schema was published for this tool.
create_topupCreate a balance top-up checkout link (Stripe card or crypto USDC) for the authenticated account.Create a balance top-up checkout link (Stripe card or crypto USDC) for the authenticated account.
| Parameter | Type | Description |
|---|---|---|
| pack_id | string | 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 | number | Custom recharge amount in MAD (minimum 300 MAD). Optional if pack_id is provided. |
| currency | string | Payment presentation currency for card checkout ('mad' or 'eur'). Default 'mad'. |
| payment_method | string | Payment method ('stripe' for card or 'crypto' for USDC). Default 'stripe'. |
send_otpSend a 6-digit OTP verification code via SMS or WhatsApp.Send a 6-digit OTP verification code via SMS or WhatsApp.
| Parameter | Type | Description |
|---|---|---|
| to* | string | Recipient phone number in E.164 format |
| brand | string | Brand name shown in the OTP message |
verify_otpVerify an OTP passcode against a previously sent code.Verify an OTP passcode against a previously sent code.
| Parameter | Type | Description |
|---|---|---|
| session_id* | string | Session ID from send_otp |
| code* | string | 6-digit OTP code to verify |
list_campaignsList SMS marketing campaigns created on the account.List SMS marketing campaigns created on the account.
| Parameter | Type | Description |
|---|---|---|
| limit | number | Number of campaigns to retrieve (1-50, default 20) |
list_contactsList saved contacts or search contacts by name, phone, or email.List saved contacts or search contacts by name, phone, or email.
| Parameter | Type | Description |
|---|---|---|
| limit | number | Number of contacts to retrieve (1-100, default 20) |
| q | string | Search query matching phone, name, or email |
| list_id | string | Filter contacts by contact list ID |
get_analyticsGet SMS & WhatsApp message delivery metrics, success rates, and volume statistics.Get SMS & WhatsApp message delivery metrics, success rates, and volume statistics.
| Parameter | Type | Description |
|---|---|---|
| days | number | Lookback window in days (1-365, default 30) |
ops_pulseAdmin only. Business health snapshot: margin, cash collected, customer float (liability), solvency ratio, active accounts, and money stuck in the refund-review queue.Admin only. Business health snapshot: margin, cash collected, customer float (liability), solvency ratio, active accounts, and money stuck in the refund-review queue.
| Parameter | Type | Description |
|---|---|---|
| days | number | Lookback window in days (1-365). Default 30. |
ops_route_qualityAdmin 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.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.
| Parameter | Type | Description |
|---|---|---|
| days | number | Lookback window in days (1-365). Default 30. |
ops_monitoringAdmin only. Current operational state: open ops alerts by severity, upstream gateway balance, and known issues that need attention right now.Admin only. Current operational state: open ops alerts by severity, upstream gateway balance, and known issues that need attention right now.
No input schema was published for this tool.
lookup_numberInspect a phone number: validate format, identify Moroccan operator (IAM / Maroc Telecom, Orange, Inwi) or international country, and view applicable rate. Public — no authentication required.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.
| Parameter | Type | Description |
|---|---|---|
| to* | string | Phone number to lookup in national (06...) or E.164 (+212...) format. |
list_sender_idsList approved and pending custom alphanumeric Sender IDs registered on the authenticated account.List approved and pending custom alphanumeric Sender IDs registered on the authenticated account.
No input schema was published for this tool.
get_pricingGet 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.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.
| Parameter | Type | Description |
|---|---|---|
| to | string | Destination phone number in E.164 format, e.g. +2348012345678. Optional. |
18 of 18 tools published a description.
Tool names and descriptions are written by the publisher and shown verbatim as inert text. They are the strings an MCP client passes to a model, so Forge scans them for prompt-injection patterns — any finding appears with the security scan above. “Privileged” is a keyword match on the tool name, not an audit of what the tool does: a benign-sounding name can still do anything.
Send SMS/WhatsApp and verify OTP codes in Morocco (+212) and worldwide. Direct carrier routing.
Linked names open Forge’s index of every entry observed exposing that tool. Browse all indexed tools.
This entry publishes no npm package, so Forge has no dependency tree for it. That is a gap in coverage — not a statement that it has no dependencies.