# Sakari Muse connector

From musedirectory.ai, the independent directory of Meta Muse connectors. Not affiliated with Meta.

## Sakari

Send and manage SMS campaigns, contacts, and conversations through Sakari.

- Record: https://musedirectory.ai/connector/sakari
- Category: Marketing & Ads
- Developer: usefulapi (https://usefulapi.io/sakari/)
- Muse status: Extra setup. Not in Muse's Connectors list yet. Muse can still use it: its page gives you a request to paste into Muse.
- Health: Working, 158ms, checked 2026-10-29T23:51:29Z
- Endpoint: https://sakari.usefulapi.io/mcp
- Auth: No account needed; Pricing: unknown
- Screening: Screened, no issues found (2026-10-29T23:51:29Z)
- Source: Found in the official MCP Registry (io.usefulapi/sakari) https://registry.modelcontextprotocol.io/v0/servers?search=io.usefulapi%2Fsakari

Connect to Sakari SMS platform to manage contacts, send text messages and MMS, create message templates, run campaigns, track links, and view call history. Requires a Sakari account and API credentials.

Example request: "Send a promotional text message to my opted-in customers about a sale this weekend."

How to connect: Not in Muse's Connectors list yet, but Muse can still use it. Paste this into Muse: "Use Sakari to help me. It is a free service with an MCP server at https://sakari.usefulapi.io/mcp. It does not need an API key. Ask me before you share anything with it." Muse asks before it shares anything with the app's site. Meta does not review apps used this way, so only use ones you trust. We tested this in the Muse app on September 24, 2026: Muse used an app's link directly this way and returned a live answer.

Tools:
- sakari_get_account: The Sakari account these credentials belong to: name, plan, balance, default country, business info and options. API credentials are never returned. GET /v1/accounts/{accountId}.
- sakari_get_balance: Prepaid balance, default country, remaining segments and the price per segment. GET /v1/accounts/{accountId}/balance.
- sakari_list_contacts: List or search contacts (partial matches on name, mobile or email; filter by tag). GET /v1/accounts/{accountId}/contacts.
- sakari_get_contact: One contact by id: name, mobile (with validity and line type), email, lists, attributes, opt-in and blocked state. GET /v1/accounts/{accountId}/contacts/{contactId}.
- sakari_create_contact: WRITE: create a contact. If a contact with the same mobile number exists, merge_strategy decides what happens (append, core or remove, per Sakari). A contact is not opted in to messages by this call. POST /v1/accounts/{accountId}/contacts.
- sakari_update_contact: WRITE: change a contact's name, email or mobile. Sakari's update replaces the contact, so this reads the current contact first and sends it back whole (lists, opt-in, blocked, attributes) with only your changes applied. PUT /v1/accounts/{accountId}/contacts/{contactId}.
- sakari_list_messages: List messages (sent and received) with status, segments, price and timestamps; filter by contact or conversation. GET /v1/accounts/{accountId}/messages.
- sakari_get_message: One message by id: text, direction, status, segments, price, error. GET /v1/accounts/{accountId}/messages/{messageId}.
- sakari_send_message: WRITE: SEND REAL TEXT MESSAGES that cost account balance and cannot be recalled. Recipients: phone numbers (international format), existing contact ids, or conversation ids (max 100 in total). Only text people who opted in; Sakari enforces TCPA/CTIA rules and the sender is respon
- sakari_list_conversations: List conversations (the inbox): contact, last message, unread count, open or closed. GET /v1/accounts/{accountId}/conversations.
- sakari_get_conversation: One conversation by id. Use sakari_list_messages with conversation_id for its messages. GET /v1/accounts/{accountId}/conversations/{conversationId}.
- sakari_close_conversation: WRITE: mark a conversation closed in the Sakari inbox (a new inbound message reopens it). PUT /v1/accounts/{accountId}/conversations/{conversationId}/close.
- sakari_list_templates: List reusable message templates. GET /v1/accounts/{accountId}/templates.
- sakari_get_template: One message template by id. GET /v1/accounts/{accountId}/templates/{templateId}.
- sakari_create_template: WRITE: create a reusable SMS template (does not send anything). POST /v1/accounts/{accountId}/templates.
- sakari_list_campaigns: List message campaigns with schedule, template, status and reporting. GET /v1/accounts/{accountId}/campaigns.
- sakari_get_campaign: One campaign by id. GET /v1/accounts/{accountId}/campaigns/{campaignId}.
- sakari_list_calls: Call history (voice) with direction, status, duration and contact; filter by contact, conversation, direction, status or date range. GET /v1/accounts/{accountId}/calls.
- sakari_get_call: One call history record by id. GET /v1/accounts/{accountId}/calls/{callId}.
- sakari_list_links: Shortened tracked links with destination, short URL and click stats. GET /v1/accounts/{accountId}/links.
- sakari_list_forms: Lead capture forms with active state, impressions and conversions. GET /v1/accounts/{accountId}/forms.
- sakari_list_webhooks: Active webhook subscriptions (message event notifications). GET /v1/accounts/{accountId}/webhooks.
- sakari_list_autoresponders: Autoresponders (automatic replies) configured on the account. GET /v1/accounts/{accountId}/autoresponders.

Screening checks:
- MCP handshake: pass (Answered in 158ms)
- Domain against threat feeds (Cloudflare security DNS): pass (sakari.usefulapi.io, usefulapi.io not flagged)
- Published packages against the OSV malicious-package database: n/a (No npm or PyPI package published)
- Hidden instructions or invisible characters in tool text: pass (23 tools read, nothing found)
- Inputs asking for passwords, card numbers or seed phrases: pass (None found)
- Domain and redirects: pass (No redirects off the domain)
- AI review of purpose and tool behavior: pass (No concerns)
