sms-marketing
SMS marketing MCP server for AI agents. Send SMS, manage contacts, templates, and campaigns programmatically. Sign up at oblipali.app, generate an API key, buy prepaid SMS credits, and connect your agent. 22 tools available, pay-as-you-go pricing, no subscription.
How to connect
https://sms-marketing--oblipali.run.tools
tools/list returns the expected tools before relying on them in production.Tools
(22)-
list_templatesList all SMS templates in your workspace. Returns an array of template objects with id, name, body, is_active, created_at, and updated_at fields.
-
create_templateCreate a new reusable SMS template. Supports variables that are replaced at send time: {{first_name}}, {{last_name}}, {{promo_code}}, {{recovery_url}}. Returns the created template with its UUID.
-
update_templateUpdate an existing SMS template by its UUID. Only provided fields are modified; others remain unchanged.
-
delete_templatePermanently delete an SMS template by its UUID. This action cannot be undone. Campaigns referencing this template will lose their template link.
-
list_contactsList contacts in your workspace with pagination and optional filters. Returns contacts with id, phone, first_name, last_name, email, tags, metadata, opted_out status, and timestamps.
-
create_contactAdd a new contact to your workspace. The phone number is automatically normalized to E.164 international format. French numbers (06/07) are converted to +33 format. Returns the created contact with its UUID.
-
update_contactUpdate an existing contact by UUID. Only provided fields are modified. Use this to change names, email, tags, or metadata without affecting other fields.
-
delete_contactPermanently delete a contact by UUID. This removes the contact and all associated data. Cannot be undone.
-
import_contactsBulk import up to 1,000 contacts at once. Uses upsert on phone number: existing contacts are updated, new ones are created. Returns count of imported and skipped contacts.
-
list_campaignsList all SMS campaigns in your workspace. Optionally filter by status. Returns campaigns with id, name, message, status, scheduled_at, sent_at, target_filter, and stats.
-
create_campaignCreate a new SMS campaign in draft status. Provide either a direct message or a template_id. Use send_campaign to actually dispatch it. Optionally set target_filter to send to a subset of contacts.
-
update_campaignUpdate a draft or scheduled campaign. Only draft and scheduled campaigns can be modified. Sent or cancelled campaigns cannot be updated.
-
delete_campaignPermanently delete a campaign. Only campaigns in 'draft' or 'cancelled' status can be deleted. Sent campaigns are preserved for audit.
-
send_campaignSend a draft campaign immediately to all matching contacts. Each SMS sent costs 1 credit per SMS part. This action is irreversible — SMS messages will be delivered to real phone numbers. Check your credit balance with get_workspace before sending.
-
send_smsSend a single SMS message to a phone number immediately. Costs 1 credit per SMS part (160 chars = 1 part, longer messages use multiple parts). The message is delivered in real-time via OVH Cloud SMS. Check your credit balance with get_workspace before sending.
-
list_logsList SMS sending logs with pagination and optional filters. Returns log entries with phone, message, status (pending/sent/delivered/failed), provider_id, error_message, and timestamps.
-
list_optoutsList all phone numbers that have opted out of receiving SMS. These contacts will be automatically excluded from campaigns and direct sends.
-
create_optoutAdd a phone number to the opt-out list. This contact will no longer receive any SMS. The corresponding contact record is also marked as opted_out.
-
delete_optoutRemove a phone number from the opt-out list, allowing them to receive SMS again. The corresponding contact is also marked as opted back in.
-
get_workspaceGet your workspace information including name, plan status, SMS credit balance, billing cycle start date, and timezone. Use this to check available credits before sending SMS.
-
get_statsGet aggregated SMS sending statistics for a date range. Returns counts by status: pending, sent, delivered, failed, and total. Useful for monitoring delivery rates and campaign performance.
-
count_sms_partsCalculate how many SMS parts a message will use and the character count. Does NOT send anything — this is a free, read-only utility. Use this before sending to estimate credit cost. GSM-7 encoding: 160 chars = 1 part, 153 chars per additional part. Unicode: 70 chars = 1 part, 67 chars per additional part.