MCP HeartbeatTHE MCP OBSERVATORY
Public workspace

Explore

Evidence for your next connection.

Independent measurements of remote MCP servers. Every observation has a timestamp.

Read-only probes

MCP server · Communication & messaging

Sakari MCP by usefulapi

Manage Sakari SMS contacts, conversations, templates and campaigns, and send texts.

Checks passed
14 / 22

0 failed · 8 not measured

Median response
603 ms

Median of successful probes over 7 days

30-day uptime
Not measured

Share of countable probes over 30 days, including daily rollups. Auth challenges are excluded.

Discovered tools
23

Tool definitions returned by this server

Independent monitoring

Health & checks

Status history

Outdated check

Last connection measurement is over 24 hours old. Current availability is unknown.

Last checked
Check summary by test group
Test areaPassedFailedUnmeasured
ConnectionCan a client connect and discover tools?
500
Reliability & speedDoes it respond consistently and quickly?
004
Access & authenticationWhat is required to use this server?
102
Tool qualityAre the tool definitions usable by an agent?
400
Publisher identityCan the publisher be traced to its source?
402

Unmeasured means there is not enough evidence to decide. How these checks work

Inspect individual checks 22 recorded

Core

  • Pass
    Reachable

    Latest probe returned HTTP 200 in 603 ms.

  • Pass
    Valid handshake

    protocolVersion 2025-11-25, serverInfo.name sakari-mcp.

  • Pass
    Lists tools

    tools/list returned 23 tools.

  • Pass
    Current protocol

    Negotiated 2025-11-25. The bar is 2025-06-18 or newer.

  • Pass
    HTTPS

    The endpoint URL is https.

Performance

  • Not measured
    Fast (p50)

    Median latency 603 ms over 1 samples in 7 days. The bar is 1000 ms. Need at least 5 samples.

  • Not measured
    Consistent (p95)

    95th percentile 603 ms over 1 samples in 7 days. The bar is 3000 ms. Need at least 20 samples.

  • Not measured
    Reliable (uptime)

    1 of 1 attempts returned a tool list in 30 days (100%). The bar is 99%. Need at least 30 samples.

  • Not measured
    Stable tool list

    Fewer than two successful probes in 30 days, so tool-list stability is not measured.

Access

  • Pass
    Open access

    tools/list succeeded with no credential, and the record declares none.

  • Not measured
    Standard auth

    Auth is not required, so the OAuth metadata check does not apply.

  • Not measured
    Free tier cited

    No publisher quote has been checked.

Tools

  • Pass
    Tools described

    Every tool description is at least 20 characters.

  • Pass
    Valid input schemas

    Every inputSchema is a JSON Schema object.

  • Pass
    Parameters documented

    51 of 59 parameters have a description (86%). The bar is 80%.

  • Pass
    Safety hints

    Every tool sets readOnlyHint or destructiveHint.

Publisher

  • Pass
    Verified namespace

    Listed in the Official MCP Registry.

  • Pass
    Website matches publisher

    The website host matches the reverse-domain namespace.

  • Pass
    Source repo linked

    A repository URL is on file.

  • Not measured
    Repo owner matches

    This namespace is not an io.github login, so the owner comparison does not apply.

  • Pass
    Recently updated

    Updated 2026-11-10T23:34:16.978008Z, within 180 days.

  • Not measured
    Open-source licence

    The GitHub licence lookup has not returned an OSI result yet.

Start using Sakari MCP by usefulapi

Connect to this server

Choose your client, copy the configuration, then enable the server in your client’s MCP settings.

Run this command in your terminal, then restart Claude Code.

Claude Code

claude mcp add --transport http sakari-mcp-by-usefulapi https://sakari.usefulapi.io/mcp

Capabilities

Tools 23

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.

Discovered
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.

Discovered
sakari_create_template

WRITE: create a reusable SMS template (does not send anything). POST /v1/accounts/{accountId}/templates.

Discovered
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}.

Discovered
sakari_get_balance

Prepaid balance, default country, remaining segments and the price per segment. GET /v1/accounts/{accountId}/balance.

Discovered
sakari_get_call

One call history record by id. GET /v1/accounts/{accountId}/calls/{callId}.

Discovered
sakari_get_campaign

One campaign by id. GET /v1/accounts/{accountId}/campaigns/{campaignId}.

Discovered
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}.

Discovered
sakari_get_conversation

One conversation by id. Use sakari_list_messages with conversation_id for its messages. GET /v1/accounts/{accountId}/conversations/{conversationId}.

Discovered
sakari_get_message

One message by id: text, direction, status, segments, price, error. GET /v1/accounts/{accountId}/messages/{messageId}.

Discovered
sakari_get_template

One message template by id. GET /v1/accounts/{accountId}/templates/{templateId}.

Discovered
sakari_list_autoresponders

Autoresponders (automatic replies) configured on the account. GET /v1/accounts/{accountId}/autoresponders.

Discovered
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.

Discovered
sakari_list_campaigns

List message campaigns with schedule, template, status and reporting. GET /v1/accounts/{accountId}/campaigns.

Discovered
sakari_list_contacts

List or search contacts (partial matches on name, mobile or email; filter by tag). GET /v1/accounts/{accountId}/contacts.

Discovered
sakari_list_conversations

List conversations (the inbox): contact, last message, unread count, open or closed. GET /v1/accounts/{accountId}/conversations.

Discovered
sakari_list_forms

Lead capture forms with active state, impressions and conversions. GET /v1/accounts/{accountId}/forms.

Discovered
sakari_list_links

Shortened tracked links with destination, short URL and click stats. GET /v1/accounts/{accountId}/links.

Discovered
sakari_list_messages

List messages (sent and received) with status, segments, price and timestamps; filter by contact or conversation. GET /v1/accounts/{accountId}/messages.

Discovered
sakari_list_templates

List reusable message templates. GET /v1/accounts/{accountId}/templates.

Discovered
sakari_list_webhooks

Active webhook subscriptions (message event notifications). GET /v1/accounts/{accountId}/webhooks.

Discovered
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 responsible. Confirm the recipients and the text with the user first. Placeholders like {{firstName}} are filled per contact. POST /v1/accounts/{accountId}/messages.

Discovered
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}.

Discovered

Recent measurements

Probe history

View status
Latest stored probes. Raw probe rows are kept for 14 days.
CheckedResultResponseTools
Connected603 ms23