SMS Everyone MCP by usefulapi

Send confirmed SMS, check credits, delivery and replies, and manage opt-outs with SMS Everyone.

我该使用它吗

质量与安全性

A
描述质量
100%
模式完整度
91%
命名质量
76%
投毒风险
100%
权限匹配度
100%
协议合规性
100%

发现(2)

  • LOWTool 'smseveryone_get_campaign_status' name length outside 3-30 range在 smseveryone_get_campaign_status 中
  • LOWTool 'smseveryone_get_delivery_status' name length outside 3-30 range在 smseveryone_get_delivery_status 中

基于对工具定义和协议合规性的自动分析。

上下文开销

~2,675token 数(工具定义)
~1.5 KB典型响应大小
对注意力有显著影响(占 128k 上下文窗口的 2.09%)

这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。

安装

一键安装

将以下内容添加到你的 `claude_desktop_config.json` 文件中:

{
  "mcpServers": {
    "sms-everyone": {
      "url": "https://sms-everyone.usefulapi.io/mcp"
    }
  }
}

远程端点

https://sms-everyone.usefulapi.io/mcpstreamable-http

它能做什么

工具清单

工具(11)

🟢 只读🟡 写入🔴 删除⚪ 未知
🟢smseveryone_get_account

Show the SMS Everyone account: user id, remaining SMS credits, whether unicode (emoji, non-English text) is enabled and whether international messaging is allowed. SMS Everyone REST: POST /api/RetrieveUserSettings.

输入模式

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢smseveryone_get_campaign_status(campaign_id)

Show whether a sent or scheduled campaign is Scheduled, Running, Paused or Deleted. SMS Everyone REST: POST /api/campaign with Action status.

输入模式

{
  "type": "object",
  "properties": {
    "campaign_id": {
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991,
      "description": "The CampaignId SMS Everyone returned when the message was sent or scheduled."
    }
  },
  "required": [
    "campaign_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢smseveryone_get_delivery_status(campaign_id, destination, limit, offset)

Delivery receipts of a campaign: one entry per destination with a timestamp, a DeliveryReceiptStatusId and a carrier code. Pass destination to see one number only. An empty list means no receipt has arrived yet (carriers can take up to 24 hours) or the campaign id is not on this account. SMS Everyone asks for no more than one request per minute in production. SMS Everyone REST: POST /api/DRStatus.

输入模式

{
  "type": "object",
  "properties": {
    "campaign_id": {
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991,
      "description": "The CampaignId SMS Everyone returned when the message was sent or scheduled."
    },
    "destination": {
      "description": "Optional single phone number in international format, e.g. 61400123456.",
      "type": "string",
      "minLength": 1
    },
    "limit": {
      "description": "Show at most this many destinations, default 500.",
      "type": "integer",
      "minimum": 1,
      "maximum": 1000
    },
    "offset": {
      "description": "Skip this many entries (for paging: use next_offset of the previous result). Default 0.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000
    }
  },
  "required": [
    "campaign_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢smseveryone_list_replies(days, date_start, date_end, limit, offset)

List SMS replies received on the account: received time, the sender's number (Originator), the account number it was sent to (Recipient), the text and a reference id. Always asks for a time window (the last `days` days, 1 to 7, counted back to 12am yesterday for 1, or a date range of at most 30 days), which leaves the replies available for later calls. Default: days 1. Production polling is limited to once per minute per account through this MCP; five minutes is recommended. SMS Everyone REST: POST /api/replies.

输入模式

{
  "type": "object",
  "properties": {
    "days": {
      "description": "The last N days, 1 to 7 (1 = back to 12am yesterday in the account's time zone). Default 1. Ignored when date_start is given. For longer periods use date_start/date_end (up to 30 days).",
      "type": "integer",
      "minimum": 1,
      "maximum": 7
    },
    "date_start": {
      "description": "Start date, YYYY-MM-DD.",
      "type": "string"
    },
    "date_end": {
      "description": "End date, YYYY-MM-DD (default: today). Needs date_start.",
      "type": "string"
    },
    "limit": {
      "description": "Show at most this many replies, default 100.",
      "type": "integer",
      "minimum": 1,
      "maximum": 500
    },
    "offset": {
      "description": "Skip this many entries (for paging: use next_offset of the previous result). Default 0.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢smseveryone_list_optouts(limit, offset)

List phone numbers in the account's optout database (messages to them are never sent): number, date added, reason. The API returns the whole list; this tool shows the first `limit` entries and the total. SMS Everyone REST: POST /api/optouts with Action list.

输入模式

{
  "type": "object",
  "properties": {
    "limit": {
      "description": "Show at most this many entries, default 200.",
      "type": "integer",
      "minimum": 1,
      "maximum": 1000
    },
    "offset": {
      "description": "Skip this many entries (for paging: use next_offset of the previous result). Default 0.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢smseveryone_list_contact_lists(limit, offset)

List the stored lists (CRM groups) of mobile numbers: list id (CrmId), description and number count. SMS Everyone REST: POST /api/crm with Action list.

输入模式

{
  "type": "object",
  "properties": {
    "limit": {
      "description": "Show at most this many lists, default 500.",
      "type": "integer",
      "minimum": 1,
      "maximum": 1000
    },
    "offset": {
      "description": "Skip this many entries (for paging: use next_offset of the previous result). Default 0.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢smseveryone_get_contact_list(list_id, limit, offset)

Show the mobile numbers stored in one list. The API returns the whole list; this tool shows the first `limit` numbers and the total count. SMS Everyone REST: POST /api/crm with Action details.

输入模式

{
  "type": "object",
  "properties": {
    "list_id": {
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991,
      "description": "The CrmId from list_contact_lists."
    },
    "limit": {
      "description": "Show at most this many numbers, default 200.",
      "type": "integer",
      "minimum": 1,
      "maximum": 1000
    },
    "offset": {
      "description": "Skip this many entries (for paging: use next_offset of the previous result). Default 0.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000
    }
  },
  "required": [
    "list_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴smseveryone_send_sms(confirm, originator, destinations, message, time_scheduled)

WRITE: SENDS REAL SMS to real people and SPENDS CREDITS from the user's SMS Everyone account; a sent message cannot be recalled (a campaign scheduled for later can be cancelled with cancel_campaign). One message text to 1 to 25 phone numbers in international format without "+" (e.g. 61400123456 for Australia, 6421123456 for New Zealand). Cost = credits per part x number of parts x recipients: a text is 160 characters per part (153 when longer), and one emoji or non-English character makes it unicode: 70 characters per part (67 when longer), more credits. Numbers on the account's optout list are skipped. The originator is where the message appears to come from and must be one registered with SMS Everyone for the account (an Australian alphanumeric sender must be ACMA registered). Optional time_scheduled (YYYYMMDDHHmm in the account's time zone; a time in the past sends at once). Only send what the user explicitly asked for; confirm the text, recipients and sender first. No stored lists, no bulk. SMS Everyone REST: POST /api/campaign with Action create.

输入模式

{
  "type": "object",
  "properties": {
    "confirm": {
      "type": "boolean",
      "const": true,
      "description": "Must be true only after the user confirms this exact write and its affected recipients/campaign."
    },
    "originator": {
      "type": "string",
      "minLength": 1,
      "maxLength": 15,
      "description": "Sender: the registered originator exactly as SMS Everyone gave it (a mobile number without +, a 4 to 6 digit short code, or a registered alphanumeric name; names are case sensitive)."
    },
    "destinations": {
      "minItems": 1,
      "maxItems": 25,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1
      },
      "description": "1 to 25 recipient numbers in international format with country code, no leading 0, e.g. 61400123456."
    },
    "message": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1000,
      "description": "The message text (long texts are split into several parts and cost more)."
    },
    "time_scheduled": {
      "description": "Optional send time YYYYMMDDHHmm in the account's time zone, e.g. 203507301300 = 30 July 2035, 1pm. Omit to send now.",
      "type": "string",
      "pattern": "^\\d{12}$"
    }
  },
  "required": [
    "confirm",
    "originator",
    "destinations",
    "message"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴smseveryone_cancel_campaign(campaign_id, confirm)

WRITE: deletes a scheduled SMS campaign so it is not sent. Only works before the campaign start time (afterwards SMS Everyone refuses it with an error code). It cannot be undone. SMS Everyone REST: POST /api/campaign with Action delete.

输入模式

{
  "type": "object",
  "properties": {
    "campaign_id": {
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991,
      "description": "The CampaignId SMS Everyone returned when the message was sent or scheduled."
    },
    "confirm": {
      "type": "boolean",
      "const": true,
      "description": "Must be true only after the user confirms this exact write and its affected recipients/campaign."
    }
  },
  "required": [
    "campaign_id",
    "confirm"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴smseveryone_pause_campaign(campaign_id, confirm)

WRITE: pauses a scheduled campaign (or one that is sending; SMS Everyone sends over 1000 messages a second, so a running campaign usually finishes first). A campaign scheduled in the past cannot be paused. This server has no way to resume it: the user must do that in SMS Everyone. SMS Everyone REST: POST /api/campaign with Action pause.

输入模式

{
  "type": "object",
  "properties": {
    "campaign_id": {
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991,
      "description": "The CampaignId SMS Everyone returned when the message was sent or scheduled."
    },
    "confirm": {
      "type": "boolean",
      "const": true,
      "description": "Must be true only after the user confirms this exact write and its affected recipients/campaign."
    }
  },
  "required": [
    "campaign_id",
    "confirm"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴smseveryone_add_optouts(confirm, numbers)

WRITE: adds 1 to 25 phone numbers to the account's optout database, so no later campaign is sent to them. This server cannot opt a number back in. Do it only when the user asks. SMS Everyone REST: POST /api/optouts with Action add.

输入模式

{
  "type": "object",
  "properties": {
    "confirm": {
      "type": "boolean",
      "const": true,
      "description": "Must be true only after the user confirms this exact write and its affected recipients/campaign."
    },
    "numbers": {
      "minItems": 1,
      "maxItems": 25,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1
      },
      "description": "Numbers in international format, e.g. 61400123456."
    }
  },
  "required": [
    "confirm",
    "numbers"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

社区

评价此服务器

证据

最近观测

已验证未记录版本11 个工具