FireText MCP by usefulapi
Read FireText credit, messages and reports; send an SMS to up to 10 numbers; manage opt-outs.
¿Debería usar esto?
Calidad y seguridad
Hallazgos (3)
- LOWen firetext_get_sent_summary
- LOWen firetext_list_received_messages
- LOWen firetext_list_scheduled_messages
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"firetext": {
"url": "https://firetext.usefulapi.io/mcp"
}
}
}Puntos de conexión remotos
https://firetext.usefulapi.io/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (13)
🟢firetext_get_credit(subaccount)
Number of SMS credits (messages) remaining on the FireText account or a sub-account. FireText: /credit.
Esquema de entrada
{
"type": "object",
"properties": {
"subaccount": {
"description": "Sub-account ID (only when the account has the sub-account module). Omit for the main account.",
"type": "string",
"pattern": "^[A-Za-z0-9_.@-]{1,64}$"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢firetext_list_received_messages(from, to, pp, page, subaccount)
Inbound SMS received on the account's FireText numbers/keywords (messageID, sentTo, keyword, receivedFrom, receivedOn, message). Dates YYYY-MM-DD; from="last" returns only what is new since the last call. FireText: /receivedmessages.
Esquema de entrada
{
"type": "object",
"properties": {
"from": {
"description": "Start date YYYY-MM-DD, or \"last\" for only what is new since the last access.",
"type": "string",
"pattern": "^(\\d{4}-\\d{2}-\\d{2}|last)$"
},
"to": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "End date YYYY-MM-DD."
},
"pp": {
"description": "Results per page: 10, 25 (default), 50 or 100.",
"anyOf": [
{
"type": "number",
"const": 10
},
{
"type": "number",
"const": 25
},
{
"type": "number",
"const": 50
},
{
"type": "number",
"const": 100
}
]
},
"page": {
"description": "Page number (1-based).",
"type": "integer",
"minimum": 1,
"maximum": 100000
},
"subaccount": {
"description": "Sub-account ID (only when the account has the sub-account module). Omit for the main account.",
"type": "string",
"pattern": "^[A-Za-z0-9_.@-]{1,64}$"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢firetext_list_sent_messages(from, to, pp, page, subaccount)
Messages (campaigns) sent from the account: messageID, sentOn, sentTo (group), recipientCount, message. The messageID is what the delivery and click reports need. Dates YYYY-MM-DD. FireText: /sentmessages.
Esquema de entrada
{
"type": "object",
"properties": {
"from": {
"description": "Start date YYYY-MM-DD, or \"last\" for only what is new since the last access.",
"type": "string",
"pattern": "^(\\d{4}-\\d{2}-\\d{2}|last)$"
},
"to": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "End date YYYY-MM-DD."
},
"pp": {
"description": "Results per page: 10, 25 (default), 50 or 100.",
"anyOf": [
{
"type": "number",
"const": 10
},
{
"type": "number",
"const": 25
},
{
"type": "number",
"const": 50
},
{
"type": "number",
"const": 100
}
]
},
"page": {
"description": "Page number (1-based).",
"type": "integer",
"minimum": 1,
"maximum": 100000
},
"subaccount": {
"description": "Sub-account ID (only when the account has the sub-account module). Omit for the main account.",
"type": "string",
"pattern": "^[A-Za-z0-9_.@-]{1,64}$"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢firetext_get_sent_summary(from, to, subaccount)
Totals for a date range: number of campaigns, recipients and credits used. FireText: /sentreport.
Esquema de entrada
{
"type": "object",
"properties": {
"from": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Start date YYYY-MM-DD."
},
"to": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "End date YYYY-MM-DD."
},
"subaccount": {
"description": "Sub-account ID (only when the account has the sub-account module). Omit for the main account.",
"type": "string",
"pattern": "^[A-Za-z0-9_.@-]{1,64}$"
}
},
"required": [
"from",
"to"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢firetext_list_scheduled_messages(pp, page, subaccount)
Messages queued for later sending (messageID, queuedOn, scheduledFor, recipientCount, sourceAddress, sendTo, message). FireText: /scheduledmessages.
Esquema de entrada
{
"type": "object",
"properties": {
"pp": {
"description": "Results per page: 10, 25 (default), 50 or 100.",
"anyOf": [
{
"type": "number",
"const": 10
},
{
"type": "number",
"const": 25
},
{
"type": "number",
"const": 50
},
{
"type": "number",
"const": 100
}
]
},
"page": {
"description": "Page number (1-based).",
"type": "integer",
"minimum": 1,
"maximum": 100000
},
"subaccount": {
"description": "Sub-account ID (only when the account has the sub-account module). Omit for the main account.",
"type": "string",
"pattern": "^[A-Za-z0-9_.@-]{1,64}$"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢firetext_get_delivery_report(message, reference, pp, page, subaccount)
Per-recipient delivery status of one sent message (mobile, names, messageSent, messageUpdate, status: Delivered / Declined / Buffered / Pending with Network / Rejected / Unconfirmed). Give the FireText message id OR the custom reference used when sending. FireText: /deliveryreport.
Esquema de entrada
{
"type": "object",
"properties": {
"message": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,40}$",
"description": "FireText message ID (see firetext_list_sent_messages)."
},
"reference": {
"description": "The custom reference set when sending (alternative to message).",
"type": "string",
"minLength": 1,
"maxLength": 100
},
"pp": {
"description": "Results per page: 10000 or 25000 (the vendor's only choices for this report). Large; omit for the vendor default.",
"anyOf": [
{
"type": "number",
"const": 10000
},
{
"type": "number",
"const": 25000
}
]
},
"page": {
"description": "Page number (1-based).",
"type": "integer",
"minimum": 1,
"maximum": 100000
},
"subaccount": {
"description": "Sub-account ID (only when the account has the sub-account module). Omit for the main account.",
"type": "string",
"pattern": "^[A-Za-z0-9_.@-]{1,64}$"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢firetext_get_click_report(message, pp, page, subaccount)
Link clicks for one sent message (mobile, names, clicked, userAgent). Only for messages that used FireText's Trackable SMS feature (otherwise the vendor answers URL error). FireText: /clickreport.
Esquema de entrada
{
"type": "object",
"properties": {
"message": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,40}$",
"description": "FireText message ID (see firetext_list_sent_messages)."
},
"pp": {
"description": "Results per page: 10000 or 25000 (the vendor's only choices for this report). Large; omit for the vendor default.",
"anyOf": [
{
"type": "number",
"const": 10000
},
{
"type": "number",
"const": 25000
}
]
},
"page": {
"description": "Page number (1-based).",
"type": "integer",
"minimum": 1,
"maximum": 100000
},
"subaccount": {
"description": "Sub-account ID (only when the account has the sub-account module). Omit for the main account.",
"type": "string",
"pattern": "^[A-Za-z0-9_.@-]{1,64}$"
}
},
"required": [
"message"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢firetext_get_contact(mobile, subaccount)
Stored details of one contact by mobile number (firstname, lastname, mobile, customField1-3). FireText: /contactinfo.
Esquema de entrada
{
"type": "object",
"properties": {
"mobile": {
"type": "string",
"minLength": 1,
"maxLength": 32,
"description": "Mobile number: UK 07700900123 / 447700900123, or international without + and leading zeros (e.g. 33612345678)."
},
"subaccount": {
"description": "Sub-account ID (only when the account has the sub-account module). Omit for the main account.",
"type": "string",
"pattern": "^[A-Za-z0-9_.@-]{1,64}$"
}
},
"required": [
"mobile"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢firetext_list_unsubscribed(from, to, group, pp, page, ...)
Contacts that opted out (names, mobile, custom fields, addedOn, unsubscribedOn, reason). Optional date range and group API id. FireText: /unsubscribed.
Esquema de entrada
{
"type": "object",
"properties": {
"from": {
"description": "Start date YYYY-MM-DD, or \"last\" for only what is new since the last access.",
"type": "string",
"pattern": "^(\\d{4}-\\d{2}-\\d{2}|last)$"
},
"to": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "End date YYYY-MM-DD."
},
"group": {
"description": "Group API ID to restrict to one group.",
"type": "string",
"pattern": "^[A-Za-z0-9_.-]{1,64}$"
},
"pp": {
"description": "Results per page: 10, 25 (default), 50 or 100.",
"anyOf": [
{
"type": "number",
"const": 10
},
{
"type": "number",
"const": 25
},
{
"type": "number",
"const": 50
},
{
"type": "number",
"const": 100
}
]
},
"page": {
"description": "Page number (1-based).",
"type": "integer",
"minimum": 1,
"maximum": 100000
},
"subaccount": {
"description": "Sub-account ID (only when the account has the sub-account module). Omit for the main account.",
"type": "string",
"pattern": "^[A-Za-z0-9_.@-]{1,64}$"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢firetext_list_keywords(pp, page, subaccount)
SMS keywords on the account (keywordID, number, keyword, reference). FireText: /keywords.
Esquema de entrada
{
"type": "object",
"properties": {
"pp": {
"description": "Results per page: 10, 25 (default), 50 or 100.",
"anyOf": [
{
"type": "number",
"const": 10
},
{
"type": "number",
"const": 25
},
{
"type": "number",
"const": 50
},
{
"type": "number",
"const": 100
}
]
},
"page": {
"description": "Page number (1-based).",
"type": "integer",
"minimum": 1,
"maximum": 100000
},
"subaccount": {
"description": "Sub-account ID (only when the account has the sub-account module). Omit for the main account.",
"type": "string",
"pattern": "^[A-Za-z0-9_.@-]{1,64}$"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴firetext_send_sms(to, message, from, reference, unicode, ...)
WRITE, SPENDS MONEY: sends a REAL SMS to real phones and uses the account's SMS credits (one credit per 160 GSM characters per recipient; long and unicode messages cost more). Cannot be undone. At most 10 recipients per call; no groups, templates, scheduling or repeats. Only call after the user confirmed the exact text, sender and numbers. FireText: /sendsms.
Esquema de entrada
{
"type": "object",
"properties": {
"to": {
"minItems": 1,
"maxItems": 10,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 32,
"description": "Mobile number: UK 07700900123 / 447700900123, or international without + and leading zeros (e.g. 33612345678)."
},
"description": "Recipient mobile numbers (1-10): UK 07... / 447..., or international without + and leading zeros."
},
"message": {
"type": "string",
"minLength": 1,
"maxLength": 612,
"description": "Message text (UTF-8), up to 612 characters (160 per single GSM SMS, 153 per part when longer; unicode 70/66)."
},
"from": {
"type": "string",
"pattern": "^[A-Za-z0-9]{3,11}$",
"description": "Sender ID shown on the handset: 3-11 characters, letters and digits only (a company name or a reply number)."
},
"reference": {
"description": "Optional custom reference stored against the message (usable in firetext_get_delivery_report).",
"type": "string",
"minLength": 1,
"maxLength": 100
},
"unicode": {
"description": "0 = GSM characters only (default), 1 = always unicode, 2 = auto-detect from the text.",
"anyOf": [
{
"type": "number",
"const": 0
},
{
"type": "number",
"const": 1
},
{
"type": "number",
"const": 2
}
]
},
"subaccount": {
"description": "Sub-account ID (only when the account has the sub-account module). Omit for the main account.",
"type": "string",
"pattern": "^[A-Za-z0-9_.@-]{1,64}$"
}
},
"required": [
"to",
"message",
"from"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴firetext_subscribe_contact(mobile, firstname, lastname, custom1, custom2, ...)
WRITE: adds a contact (by mobile number) to the FireText account, optionally into a group, or with update=true refreshes the names/custom fields of an existing contact. Does not send any SMS. A contact that opted out cannot be re-added this way (they must rejoin by SMS). FireText: /subscribe.
Esquema de entrada
{
"type": "object",
"properties": {
"mobile": {
"type": "string",
"minLength": 1,
"maxLength": 32,
"description": "Mobile number: UK 07700900123 / 447700900123, or international without + and leading zeros (e.g. 33612345678)."
},
"firstname": {
"type": "string",
"maxLength": 100
},
"lastname": {
"type": "string",
"maxLength": 100
},
"custom1": {
"type": "string",
"maxLength": 255
},
"custom2": {
"type": "string",
"maxLength": 255
},
"custom3": {
"type": "string",
"maxLength": 255
},
"group": {
"description": "Group API ID to add the contact to.",
"type": "string",
"pattern": "^[A-Za-z0-9_.-]{1,64}$"
},
"update": {
"description": "true = overwrite firstname, lastname and custom1-3 of an existing contact.",
"type": "boolean"
},
"subaccount": {
"description": "Sub-account ID (only when the account has the sub-account module). Omit for the main account.",
"type": "string",
"pattern": "^[A-Za-z0-9_.@-]{1,64}$"
}
},
"required": [
"mobile"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴firetext_unsubscribe_contact(mobile, group, subaccount)
WRITE: opts a contact out of the FireText account (all groups by default), so it no longer receives group messages. The contact can only rejoin by SMS. Does not send any SMS. FireText: /unsubscribe.
Esquema de entrada
{
"type": "object",
"properties": {
"mobile": {
"type": "string",
"minLength": 1,
"maxLength": 32,
"description": "Mobile number: UK 07700900123 / 447700900123, or international without + and leading zeros (e.g. 33612345678)."
},
"group": {
"description": "Group API ID, only if the account unsubscribes per group.",
"type": "string",
"pattern": "^[A-Za-z0-9_.-]{1,64}$"
},
"subaccount": {
"description": "Sub-account ID (only when the account has the sub-account module). Omit for the main account.",
"type": "string",
"pattern": "^[A-Za-z0-9_.@-]{1,64}$"
}
},
"required": [
"mobile"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Comunidad
Evidencia