Messente MCP by usefulapi
Read Messente balance, prices, delivery status and statistics; send SMS to up to 10 numbers.
我该使用它吗
质量与安全性
基于对工具定义和协议合规性的自动分析。
上下文开销
这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。
安装
一键安装
将以下内容添加到你的 `claude_desktop_config.json` 文件中:
{
"mcpServers": {
"messente": {
"url": "https://messente.usefulapi.io/mcp"
}
}
}远程端点
https://messente.usefulapi.io/mcpstreamable-http它能做什么
工具清单
工具(9)
🟢messente_get_balance
Get the Messente account's remaining SMS credit balance (in EUR). Messente legacy API: GET /get_balance (api2.messente.com).
输入模式
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢messente_get_prices(country)
Get this account's price per SMS part for one country, per mobile network (use it to estimate what messente_send_sms will cost). Messente legacy API: GET /prices.
输入模式
{
"type": "object",
"properties": {
"country": {
"type": "string",
"pattern": "^[A-Za-z]{2}$",
"description": "ISO 3166-1 alpha-2 country code, e.g. EE or GB."
}
},
"required": [
"country"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢messente_get_delivery_status(omnimessage_id)
Get the delivery report of a sent message by its omnimessage id (returned by messente_send_sms): per-message status (DELIVRD, UNDELIV, FAILED, ...), error and the price charged. Messente asks not to poll this for every message at scale. Messente: GET /omnimessage/{omnimessage_id}/status.
输入模式
{
"type": "object",
"properties": {
"omnimessage_id": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "The omnimessage_id returned when the message was sent."
}
},
"required": [
"omnimessage_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢messente_list_blacklist(limit, offset)
List the phone numbers on the account's blacklist (numbers Messente will not send to). Returns the total count and at most `limit` numbers. Messente: GET /phonebook/blacklist.
输入模式
{
"type": "object",
"properties": {
"limit": {
"description": "Maximum numbers to return (default 500).",
"type": "integer",
"minimum": 1,
"maximum": 2000
},
"offset": {
"description": "Skip this many numbers (to page through a long list).",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢messente_check_blacklist(phone)
Check whether one phone number is on the account's blacklist. Messente: GET /phonebook/blacklist/{phone} (found = blacklisted, 404 = not).
输入模式
{
"type": "object",
"properties": {
"phone": {
"type": "string",
"pattern": "^\\+[1-9]\\d{6,14}$",
"description": "Phone number in E.164 format, e.g. +37251000000."
}
},
"required": [
"phone"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢messente_get_statistics(start_date, end_date, message_types)
Get total messages and total price per country for a date range, optionally for some message types. Messente: POST /statistics/reports (a read-only report).
输入模式
{
"type": "object",
"properties": {
"start_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Start date, YYYY-MM-DD."
},
"end_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "End date, YYYY-MM-DD."
},
"message_types": {
"description": "Limit the report to these message types.",
"maxItems": 5,
"type": "array",
"items": {
"type": "string",
"enum": [
"sms",
"viber",
"whatsapp",
"rcs",
"hlr"
]
}
}
},
"required": [
"start_date",
"end_date"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟡messente_lookup_numbers(numbers)
Number lookup (HLR): is each number valid, ported, roaming, and which network it is on. COSTS CREDITS: Messente charges per number looked up (EUR 0.002 per number in its docs) and the Number Lookup service must be enabled on the account (a fixed monthly fee applies per Messente's docs). Up to 10 numbers per call. Messente: POST /hlr/sync.
输入模式
{
"type": "object",
"properties": {
"numbers": {
"minItems": 1,
"maxItems": 10,
"type": "array",
"items": {
"type": "string",
"pattern": "^\\+[1-9]\\d{6,14}$"
},
"description": "Phone numbers in E.164 format (1-10)."
}
},
"required": [
"numbers"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟡messente_add_to_blacklist(phone_number)
WRITE: add one phone number to the account's blacklist, so Messente will no longer send messages to it. Adding a number already listed is harmless. Messente: POST /phonebook/blacklist.
输入模式
{
"type": "object",
"properties": {
"phone_number": {
"type": "string",
"pattern": "^\\+[1-9]\\d{6,14}$",
"description": "Phone number to blacklist, E.164 format, e.g. +37251000000."
}
},
"required": [
"phone_number"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴messente_send_sms(to, text, sender)
WRITE: SENDS REAL SMS TEXT MESSAGES to real people and SPENDS the account's Messente credit (each recipient is charged per SMS part, longer texts use several parts; use messente_get_prices to estimate). SMS only, at most 10 recipients per call, one message per recipient, never to a list. Send only to people who asked to receive it (Messente forbids unsolicited messages). Not undoable. Messente: POST /omnimessage with channel sms, once per recipient.
输入模式
{
"type": "object",
"properties": {
"to": {
"minItems": 1,
"maxItems": 10,
"type": "array",
"items": {
"type": "string",
"pattern": "^\\+[1-9]\\d{6,14}$"
},
"description": "Recipient phone numbers in E.164 format (1-10)."
},
"text": {
"type": "string",
"minLength": 1,
"maxLength": 1600,
"description": "The message text."
},
"sender": {
"description": "Sender name (alphanumeric, max 11 chars) or number; must be a sender verified on the account. Omit to use the account default.",
"type": "string",
"minLength": 1,
"maxLength": 20,
"pattern": "^[A-Za-z0-9 .+_-]+$"
}
},
"required": [
"to",
"text"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}社区
证据