clicksend-mcp-server
OfficialClickSend MCP Server
Dies ist der offizielle ClickSend MCP Server vom ClickSend-Team. Verwenden Sie aus Sicherheitsgründen keine inoffiziellen Versionen von ClickSend MCP.
Zweck
ClickSend MCP ist dazu gedacht, die Messaging-Fähigkeiten von ClickSend auf moderne KI-Ökosysteme und Plattformen auszuweiten – so können Entwickler ganz einfach SMS über ClickSend senden, ohne benutzerdefinierten Code schreiben zu müssen.
Das beschleunigt die Einführung, ermöglicht neue KI-gesteuerte Anwendungsfälle und positioniert ClickSend im Zeitalter intelligenter Automatisierung als zukunftsfähige Messaging-Plattform.
Related MCP server: Twilio SMS MCP Server
Anforderungen
Node.js >= 18
Sie können
nvm(Node Version Manager) verwenden, um die richtige Version zum Ausführen dieser Anwendung einzustellen.
Installation
Laden Sie einen KI-Desktop-Client herunter. Ein Beispiel wäre Claude for Desktop, das Sie hier herunterladen können.
Konfiguration
Der Server benötigt zwei Umgebungsvariablen:
CLICKSEND_USERNAME: Ihr ClickSend-BenutzernameCLICKSEND_API_KEY: Ihr ClickSend-API-Schlüssel
Benutzername und Schlüssel finden Sie unter https://dashboard.clicksend.com/account/subaccounts, sobald Sie sich bei ClickSend angemeldet haben.
Claude-Desktop-Konfiguration
Öffnen Sie Claude for Desktop.
Gehen Sie in der Menüleiste des Systems zu Einstellungen.
Navigieren Sie im Einstellungsfenster zum Reiter Entwickler und klicken Sie auf Config bearbeiten. Dadurch wird die Konfigurationsdatei an folgendem Speicherort geöffnet:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
Mit dem NPM-Paket
{
"mcpServers": {
"clicksend": {
"command": "npx",
"args": [
"-y",
"@clicksend/clicksend-mcp-server@latest"
],
"env": {
"CLICKSEND_USERNAME": "<username>",
"CLICKSEND_API_KEY": "<api-key>"
}
}
}
}
Mit einem lokalen Build
{
"mcpServers": {
"clicksend": {
"command": "node",
"args": [
"/path/to/repository/build/clicksend-mcp.js"
],
"env": {
"CLICKSEND_USERNAME": "your clicksend username",
"CLICKSEND_API_KEY": "your API Key"
}
}
}
}
Starten Sie danach Claude Desktop neu, um die Konfiguration neu zu laden. Wenn die Verbindung erfolgreich hergestellt wurde, sollte clicksend-send-sms sichtbar sein, sobald Sie auf das Hammer-Symbol klicken.
Beispiele für Interaktionen mit Claude
Hier sind einige natürliche Möglichkeiten, mit dem Server über Claude zu interagieren:
Einfache SMS:
Send a text message to the number 61411111111 saying "I'm using ClickSend MCP server to sent SMS!"Funktionen
Senden Sie eine SMS nach der anderen, indem Sie den ClickSend-Benutzernamen und den API-Schlüssel konfigurieren.
Preis für eine Nachricht an eine Kontaktliste abrufen.
Kontakte oder Kontaktlisten durchsuchen und Nachrichten an diese senden.
SMS-Vorlagen abrufen und damit Nachrichten senden.
SMS-Verlauf anzeigen/abrufen.
SMS-Statistiken der letzten 30 Tage abrufen.
Unterstütze APIs
POST /v3/sms/send
Geänderungs-ID:
send-smsZusammenfassung: SMS senden
Beschreibung: Nachricht an den Empfänger, entweder als Telefonnummern oder als Kontakte aus einer Kontaktliste.
POST /v3/sms/price
Operation-ID:
calculate-sms-priceZusammenfassung: SMS-Preis berechnen
Beschreibung: Berechnet den Preis für das Senden von Nachrichten basierend auf Nachrichtentyp und -länge.
GET /v3/sms/templates
Operation-ID:
view-sms-templatesZusammenfassung: SMS-Vorlagen anzeigen
Beschreibung: SMS-Vorlagen mit Filtermöglichkeiten abrufen.
GET /v3/sms/history
Operation-ID:
view-sms-historyZusammenfassung: SMS-Verlauf anzeigen
Beschreibung: Zeigt zuvor gesendete SMS mit Filter- und Paginierungsoptionen an.
GET /v3/statistics/sms
Operation-ID:
view-sms-statisticsZusammenfassung: SMS-Statistiken anzeigen
Beschreibung: SMS-Statistiken für die letzten 30 Jahre abrufen.
GET /v3/search/contacts-lists
Operation-ID:
view-contact-listsZusammenfassung: Kontaktlisten anzeigen
Beschreibung: Eine Liste durchsuchter Kontaktlisten abrufen.
Wichtige Hinweise
Telefonnummernformat: Alle Telefonnummern müssen im E.164-Format angegeben sein (z. B. +61411111111).
Rate-Limits: Beachten Sie die Rate-Limits und Preise Ihres ClickSend-Kontos.
Sicherheit: Bewahren Sie Ihre ClickSend-Zugangsdaten sicher auf und geben Sie sie niemals in die Versionskontrolle.
Fehlerbehebung
Häufige Fehlermeldungen und Lösungen:
„Telefonnummer muss im E.164-Format angegeben werden."
Stellen Sie sicher, dass die Telefonnummer mit „+" und der Ländervorwahl beginnt.
„Ungültige Zugangsdaten"
Überprüfen Sie Ihre CLICKSEND_USERNAME- und CLICKSEND_API_KEY-Werte. Sie können sie aus dem ClickSend-Dashboard kopieren.
Beiträge
Beiträge sind willkommen! Bitte lesen Sie unsere Richtlinien für Beiträge, bevor Sie Pull Requests einreichen.
Lizenz
Dieses Projekt ist unter der MIT-Lizenz lizenziert – Einzelheiten finden Sie in der LICENSE-Datei.
Sicherheit
Bitte keine sensiblen Informationen (z. B. Telefonnummern oder ClickSend-Anmeldedaten) in GitHub Issues oder Pull Requests einfügen.
Available Tools
6 toolsget--v3-search-contacts-listsC
View Contact Lists
| Name | Required | Description | Default |
|---|---|---|---|
| q | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must carry full behavioral disclosure. The word 'View' implies a read operation, but it does not describe the output format, the effect of the 'q' query parameter, pagination behavior, or whether the lists are sorted or filtered by default. This is too minimal to provide meaningful transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
At only one short phrase, the description is under-specified rather than appropriately concise. It echoes the tool's name nearly verbatim and fails to earn its place, since it does not add meaningful information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Although the tool is simple with only one parameter and no nested objects, the description is incomplete. It does not explain the 'q' parameter, the type of data returned in the list, or any behavioral nuances, and without output schema there is no extra context to compensate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema defines one parameter, 'q', with no description, and the tool description does not mention it at all. Since schema description coverage is 0%, this leaves the agent with no idea what 'q' represents, what values are valid, or whether it is a filter, a search term, or something else.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('View') and resource ('Contact Lists'), clearly identifying the operation. It is distinct from the sibling tools, all of which focus on SMS (send, price, templates, statistics, history). However, it omits the 'search' aspect implied by the tool name and could be more specific about what 'view' entails.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention the SMS-related siblings at all, nor does it explain any scenario where this tool is specifically needed. The agent can only infer usage from the resource name in the description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get--v3-sms-historyC
View SMS History
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | Allows filtering of results based on your search criteria. The query should be in the format `field_name:value`. 1. **Field Name**: The field within the SMS history you want to filter by. You can use the following fields: - _Status_: The status of the SMS. Available values for status are: Queued, Completed, Scheduled, WaitApproval, Failed, Cancelled, CancelledAfterReview, Received, Sent. - _To_: The recipient of the SMS. - _from_: The sender of the SMS. - _subaccount_id_: The sub-account identifier. - _message_id_: The ID of your SMS. 2. **Value**: The text or keyword you're searching for within the specified field. If left empty after the colon, the filter will look for all templates with any value in the **Field Name**. For example, if you are searching for a SMS with the status of Scheduled, the final query would look like this: `q=status:Scheduled` <div class="info-box"> <h4><i class="fas fa-info-circle"></i> Note:</h4> <div> <p>Some characters have to be encoded. For example, if you are searching for SMS sent from the phone number +61437085284, your search query q would be:<br/></p> <ul> <li>q=from:%2B61437085284</li> </ul> <p>You can use the <a href="https://www.urlencoder.org/" target="_blank">URL encoder</a> to encode the text. If a character is not an alphanumeric character (A-Z, a-z, 0-9), it is typically either reserved or unsafe and should be encoded.</p> </div> </div> | |
| page | No | The page number to retrieve. Use this parameter to navigate through the [pagination](/#pagination) results. The default value is 1. | |
| limit | No | The number of items to return per page. This parameter controls the size of each page of results. The default value is 15. | |
| date_to | No | End date to filter results. It should be in <a href="http://help.clicksend.com/what-is-a-unix-timestamp" target="_blank">Unix format</a>. | |
| order_by | No | Specifies the field and order to sort the results by. The value is composed of the field name followed by a colon and the sort direction (_asc_ for ascending or _desc_ for descending). The default sort order is by _date_ in ascending order. You can use the following fields: - _date_ - _username_ - _from_ - _to_ - _status_ - _body_ For example, if you want to order by the most recently sent SMS, you should sort by date in descending order. The query would look like this: `order_by=date:desc` | |
| date_from | No | Start date to filter results. It should be in <a href="http://help.clicksend.com/what-is-a-unix-timestamp" target="_blank">Unix format</a>. | |
| user_date_request | No | [FOR AI AGENTS] When user requests dates in natural language (e.g., 'Aug 5 2025', 'yesterday', 'last Tuesday'), pass the EXACT original user message here. The backend will parse this to generate correct Unix timestamps for date_from/date_to, avoiding common AI errors like wrong years. This parameter overrides any date_from/date_to values if provided. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full behavioral disclosure burden. 'View SMS History' simply restates the tool name and adds no information about side effects, read-only behavior, response shape, pagination, or limitations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short with no filler or unnecessary content. It is front-loaded and concise, although it leaves out behavioral and usage details that would make it more helpful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The parameter schema is rich, but there is no output schema and no annotations. The description does not disclose the shape of the result, whether the operation is read-only, or when it should be preferred over siblings, leaving an under-specified contract for the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the schema itself provides extensive documentation for filtering, pagination, sorting, and date conversion. The description adds no additional parameter-level meaning, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a clear verb and resource: 'View SMS History'. It is naturally distinguishable from send, price, template, and contact-list siblings, though it does not explicitly differentiate it from a similar reporting sibling like statistics-sms.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as post--v3-sms-send or get--v3-statistics-sms. The only hint is the word 'history', so usage is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get--v3-sms-templatesC
View SMS Templates
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | Allows filtering of results based on your search criteria. The query should be in the format `field_name:value`. 1. **Field Name**: The field within the SMS history you want to filter by. You can use the following fields: - _template_id_ : The ID of the template - _template_name_ : The name of the template - _body_ : The body content of the template. 2. **Value**: The text or keyword you're searching for within the specified field. If left empty after the colon, the filter will look for all templates with any value in the **Field Name**. For example, if you are searching for the template with the name of _sample_name_, the final query would look like this: `q=template_name:sample_name` <div class="info-box"> <h4><i class="fas fa-info-circle"></i> Note:</h4> <div> <p>Some characters have to be encoded. For example, if you are searching for SMS sent from the phone number +61437085284, your search query q would be:<br/></p> <ul> <li>q=from:%2B61437085284</li> </ul> <p>You can use the <a href="https://www.urlencoder.org/" target="_blank">URL encoder</a> to encode the text. If a character is not an alphanumeric character (A-Z, a-z, 0-9), it is typically either reserved or unsafe and should be encoded.</p> </div> </div> | |
| page | No | The page number to retrieve. Use this parameter to navigate through the [pagination](/#pagination) results. The default value is 1. | |
| limit | No | The number of items to return per page. This parameter controls the size of each page of results. The default value is 15. | |
| order_by | No | Specifies the field and order to sort the results by. The value is composed of the field name followed by a colon and the sort direction (_asc_ for ascending or _desc_ for descending). The default sort order is by _template_id_ in ascending order. You can use the following fields: - _template_id_ : The ID of the Template - _template_name_ : The name of the Template - _body_ : The body content of the Template For example, if you want to order by the _template_id_ in descending order, the query would look like this: `order_by=template_id:desc` |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden of behavioral disclosure. It only says 'View', which implies read-only behavior, but it does not mention pagination, filtering, sorting side effects, rate limits, or output formats. This is insufficient for a tool with no annotation support.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short and front-loaded, but 'View SMS Templates' is under-specification, not concise value. It has no structured guidance, no context, and no contrast with sibling tools, so it does not earn its place as a meaningful description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of annotations and output schema, the description should explain what the tool returns, how records flow, and how it is distinct from nearby SMS tools. It only provides the shallow phrase 'View SMS Templates', leaving the agent reliant on the schema for matters that the description should have clarified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides 100% coverage of all 4 parameters with detailed descriptions for q, page, limit, and order_by, including field names, defaults, and encoding guidance. The description itself adds no parameter-level meaning, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description is only 'View SMS Templates', which essentially restates the tool name without adding any clarifying details. It identifies the resource but offers no scope, behavior, or distinction from sibling tools, making it a tautology.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like get--v3-sms-history or post--v3-sms-send. There are no explicit conditions, exclusions, or references to sibling tools, so the agent is left to infer the usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get--v3-statistics-smsB
View SMS Statistics
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry behavioral transparency on its own. 'View' implies a read operation, but the description does not explain what statistics are returned, what time period is covered, or any other behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short, but this brevity comes mostly from under-specification rather than precise, intentional economy. It is readable and front-loaded, but misses meaningful clarifying content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Because the tool has no parameters, the agent can invoke it without further input. However, with no annotations and no output schema, the description provides no context about what the returned statistics represent, which leaves enough ambiguity for a wrong interpretation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, so the schema requires no parameter documentation. The description's lack of parameter details is acceptable because there is nothing to configure.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb and resource: 'View SMS Statistics.' This is readable and not misleading, but it does not provide enough detail to distinguish statistics from get--v3-sms-history, so it lacks sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus the SMS history, templates, price, or send tools. The phrase only describes the action, leaving the agent to infer the intended use case.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
post--v3-sms-priceC
Calculate SMS Price
| Name | Required | Description | Default |
|---|---|---|---|
| messages | No | Messages to send to customers. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must bear the full behavioral disclosure burden. 'Calculate SMS Price' does not say whether this is a read-only quote operation, whether it sends anything, what the response contains, or whether there are caveats such as pricing depending on country, character count, or message parts. The input schema hints at such details, but the description itself adds almost no behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely brief and has no wasted words; it is front-loaded and immediately communicates the headline purpose. However, the brevity is close to under-specification, so it is concise but not as carefully structured as a minimally complete description could be.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There are no annotations, no output schema, and the description is only three words. The schema compensates for parameter meaning, but the endpoint's observable behavior — the pricing result, what the request implies, and how it differs from other SMS endpoints — is left to guessing. This is not complete enough for an agent to confidently invoke it without further inference.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the input schema already documents every field, including the nested messages object and the rich meaning of body, to, from, country, and schedule. The description itself adds no parameter-level detail, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Calculate SMS Price.' This is enough to tell the agent that the tool performs pricing rather than sending, searching, or retrieving SMS statistics, which distinguishes it from the sibling tools. However, it is quite terse and does not clarify the scope beyond 'price,' so it just misses a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance about when to use this tool or how it differs from the siblings. It does not say 'use this instead of sending to estimate cost' or any conditions under which this endpoint should be preferred. The usage must be inferred entirely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
post--v3-sms-sendC
Send SMS
| Name | Required | Description | Default |
|---|---|---|---|
| messages | No | Messages to send to customers. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral transparency burden. 'Send SMS' names the action, but it does not disclose side effects such as possible charges, dispatch behavior, invalid-recipient handling, or what the response will contain. There is no contradiction with annotations, but there is barely any behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The phrase is genuinely brief and front-loads the key verb, but it is more under-specified than usefully concise. A good summary would still be short, could include the target/manual alternatives for a fuller picture.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This tool has a complex one-parameter schema containing an array of message objects with many nested constraints, and there is no output schema or annotations. A two-word description does not provide enough surrounding context for an agent to confidently choose and invoke this tool without potentially digging into every schema detail.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the JSON schema already documents the messages array and its nested properties in substantial detail. The description adds no parameter-level meaning beyond the word 'SMS', so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a concrete verb and resource: 'Send SMS' is clearly the outbound-SMS operation, distinct from sibling tools about pricing, history, statistics, or templates. It is short but not vague; a 5 would need more detail about recipients and message scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explanation of when to use this tool versus alternatives such as post--v3-sms-price, nor any mention of preconditions like the need for a Sender ID or a recipient/list. The only guidance is the imperative 'Send SMS', so an agent must infer the intended usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
6 tool updates
v2026.8.10- First observed
get--v3-search-contacts-lists - First observed
get--v3-sms-history - First observed
get--v3-sms-templates - First observed
get--v3-statistics-sms - First observed
post--v3-sms-price - First observed
post--v3-sms-send
TDQS
Scored across 6 tools
Each tool targets a distinct endpoint such as sending, pricing, or viewing templates, but 'View SMS Statistics' and 'View SMS History' could be mistaken for one another by an agent looking for past SMS data. The short descriptions provide only a general hint, leaving some ambiguity between those two.
Tool names follow a consistent pattern of HTTP method plus '--v3--' plus an endpoint path, making them predictable from the API structure. However, the resource portion varies in word order and phrasing (e.g., 'sms-send' vs 'statistics-sms' vs 'search-contacts-lists'), so it is not fully uniform.
Six tools is a well-scoped size for an SMS server, covering sending, pricing, templates, contact lists, history, and statistics. Each tool has a clear role and there is no obvious filler.
The core SMS workflow is covered: calculate price, view templates and contact lists, send the message, then capture history and statistics. The set has minor gaps around managing/updating contacts or templates, but these are not essential for sending or reviewing SMS messages.
Maintenance
Related MCP Connectors
Business texting for AI agents: send texts, read threads, manage contacts and run campaigns.
Envoyez des SMS et gérez vos campagnes directement depuis vos agents IA.
Send and schedule SMS and WhatsApp messages, manage contacts and templates, and track delivery.
Canadian SMS and email API for AI agents: send SMS and email, verify phones, handle CASL consent.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI-powered SMS messaging through Twilio with automatic conversation threading, message status tracking, and webhook support for receiving inbound messages.32 npm1MIT
- AlicenseCqualityDmaintenanceEnables AI agents to send, receive, schedule, and manage SMS and MMS messages using the Twilio Programmable Messaging API. It provides comprehensive tools for handling bulk messaging, conversation threads, and real-time inbox monitoring through a secure, production-grade architecture.161MIT
- AlicenseAqualityDmaintenanceEnables AI assistants to send SMS, manage contacts, verify numbers, and query campaigns via SMS Masivos platform using natural language.307 npmMIT

ReadySMS MCP Serverofficial
AlicenseNot gradedqualityBmaintenanceEnables sending SMS messages, managing contacts, campaigns, and inbox from AI assistants like Claude and ClickUp.33 npmMIT