EnvoiSMS
by envoisms.ma · remote · no sign-in to list tools · v1.0.0 · published by ma.envoisms
Send SMS/WhatsApp and verify OTP codes in Morocco (+212) and worldwide. Direct carrier routing.
18 tools: 5 do something that can't be undone, 4 change things and 9 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone5Claude Code: ask: see these tools
- Changes things4Claude Code: ask: see these tools
- Only reads9Claude Code: allow: see these tools
No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http envoisms https://api.envoisms.ma/v1/mcpTools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
18 tools
Can't be undone 5Claude Code: ask
create_topupCreate a balance top-up checkout link (Stripe card or crypto USDC) for the authenticated account.No findings
Why it is in this group
- The name "create_topup" says "create": a word for a change.
- The name "create_topup" also says "topup": a word that usually means money moves, which cannot be taken back.
Description, as the server wrote it Create a balance top-up checkout link (Stripe card or crypto USDC) for the authenticated account.
send_bulk_smsSend an SMS message to multiple recipients in E.164 format at once (up to 100 recipients).No findings
Why it is in this group
- The name "send_bulk_sms" says "send": a word for sending, and what is sent cannot be taken back.
- The input addresses people (input.recipients): what it sends cannot be taken back.
Description, as the server wrote it Send an SMS message to multiple recipients in E.164 format at once (up to 100 recipients).
send_otpSend a 6-digit OTP verification code via SMS or WhatsApp.No findings
Why it is in this group
- The name "send_otp" says "send": a word for sending, and what is sent cannot be taken back.
- The input addresses people (input.to): what it sends cannot be taken back.
Description, as the server wrote it Send a 6-digit OTP verification code via SMS or WhatsApp.
send_smsSend a single SMS message to a phone number in E.164 format (+212600000000).No findings
Why it is in this group
- The name "send_sms" says "send": a word for sending, and what is sent cannot be taken back.
- The input addresses people (input.to): what it sends cannot be taken back.
Description, as the server wrote it Send a single SMS message to a phone number in E.164 format (+212600000000).
send_whatsapp_templateSend an approved WhatsApp template message from the account's connected WhatsApp Business number.No findings
Why it is in this group
- The name "send_whatsapp_template" says "send": a word for sending, and what is sent cannot be taken back.
- The input addresses people (input.to): what it sends cannot be taken back.
Description, as the server wrote it 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.
Changes things 4Claude Code: ask
ops_monitoringAdmin only.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Admin only. Current operational state: open ops alerts by severity, upstream gateway balance, and known issues that need attention right now.
ops_pulseAdmin only.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Admin only. Business health snapshot: margin, cash collected, customer float (liability), solvency ratio, active accounts, and money stuck in the refund-review queue.
ops_route_qualityAdmin only.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it 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.
verify_otpVerify an OTP passcode against a previously sent code.No findings
Why it is in this group
- The input takes a statement or command to run (input.code), which can change anything it can reach.
Description, as the server wrote it Verify an OTP passcode against a previously sent code.
Only reads 9Claude Code: allow
get_analyticsGet SMS & WhatsApp message delivery metrics, success rates, and volume statistics.No findings
Why it is in this group
- The name "get_analytics" says "get": a word for reading.
Description, as the server wrote it Get SMS & WhatsApp message delivery metrics, success rates, and volume statistics.
get_balanceCheck remaining SMS credit balance in MAD and account status.No findings
Why it is in this group
- The name "get_balance" says "get": a word for reading.
Description, as the server wrote it Check remaining SMS credit balance in MAD and account status.
get_message_statusCheck the real-time delivery status, segments, and cost of a sent message by ID.No findings
Why it is in this group
- The name "get_message_status" says "get": a word for reading.
Description, as the server wrote it Check the real-time delivery status, segments, and cost of a sent message by ID.
get_pricingGet EnvoiSMS pricing.No findings
Why it is in this group
- The name "get_pricing" says "get": a word for reading.
Description, as the server wrote it 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.
list_campaignsList SMS marketing campaigns created on the account.No findings
Why it is in this group
- The name "list_campaigns" says "list": a word for reading.
Description, as the server wrote it List SMS marketing campaigns created on the account.
list_contactsList saved contacts or search contacts by name, phone, or email.No findings
Why it is in this group
- The name "list_contacts" says "list": a word for reading.
Description, as the server wrote it List saved contacts or search contacts by name, phone, or email.
list_messagesList recent outbound messages for the authenticated account with optional filters.No findings
Why it is in this group
- The name "list_messages" says "list": a word for reading.
Description, as the server wrote it List recent outbound messages for the authenticated account with optional filters.
list_sender_idsConsultation des noms d'expéditeurs alphanumériques validés par l'ANRT.No findings
Why it is in this group
- The name "list_sender_ids" says "list": a word for reading.
Description, as the server wrote it 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.
lookup_numberInspect a phone number: validate format, identify Moroccan operator (IAM / Maroc Telecom, Orange, Inwi) or international country, and view applicable rate.No findings
Why it is in this group
- The name "lookup_number" says "lookup": a word for reading.
Description, as the server wrote it 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.
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.0.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http envoisms https://api.envoisms.ma/v1/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__envoisms__get_message_status",
"mcp__envoisms__list_messages",
"mcp__envoisms__get_balance",
"mcp__envoisms__list_campaigns",
"mcp__envoisms__list_contacts",
"mcp__envoisms__get_analytics",
"mcp__envoisms__lookup_number",
"mcp__envoisms__list_sender_ids",
"mcp__envoisms__get_pricing"
],
"ask": [
"mcp__envoisms__send_sms",
"mcp__envoisms__send_bulk_sms",
"mcp__envoisms__send_whatsapp_template",
"mcp__envoisms__create_topup",
"mcp__envoisms__send_otp",
"mcp__envoisms__verify_otp",
"mcp__envoisms__ops_pulse",
"mcp__envoisms__ops_route_quality",
"mcp__envoisms__ops_monitoring"
],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as envoisms. Review it before you use it.