ClickSend MCP Server

ClickSend MCP Server

This server enables AI models to send SMS messages and initiate Text-to-Speech calls programmatically using ClickSend's API with built-in rate limiting and input validation.

J-Gal02

Communication
Speech Processing
JavaScript
Visit Server

Tools

send_sms

Send SMS messages via ClickSend

make_tts_call

Make Text-to-Speech calls via ClickSend

README

ClickSend MCP Server

A Model Context Protocol (MCP) server that provides SMS messaging and Text-to-Speech (TTS) call capabilities through ClickSend's API. This server enables AI models to send SMS messages and initiate voice calls programmatically.

<a href="https://glama.ai/mcp/servers/6nj3h62i6b"><img width="380" height="200" src="https://glama.ai/mcp/servers/6nj3h62i6b/badge" alt="ClickSend Server MCP server" /></a>

Features

  • SMS Messaging: Send SMS messages to any phone number worldwide
  • Text-to-Speech Calls: Make voice calls with customizable text-to-speech messages
  • Rate Limiting: Built-in protection with 5 actions per minute limit
  • Input Validation: Comprehensive validation for phone numbers and message content
  • Error Handling: Detailed error messages and proper error propagation

Installation

Prerequisites

  • Node.js (v16 or higher)
  • ClickSend account with API credentials
  • MCP-compatible Client

Setup

  1. Clone the repository:
git clone https://github.com/J-Gal02/clicksend-mcp.git
cd clicksend-mcp
  1. Install dependencies:
npm install
  1. Build the project:
npm run build

Setting up the MCP Client

Add the following sections into your cline_mcp_settings.json file or claude_desktop_config.json file.

Be sure to replace the directory with the correct path to the build folder, as shown in the example below, as well as the username and API key with your own.

{
    "mcpServers": {
        "clicksend": {
            "command": "node",
            "args": ["/directory/to/build/folder/clicksend-mcp/build/index.js"],
            "env": {
                "CLICKSEND_USERNAME": "example@droove.net",
                "CLICKSEND_API_KEY": "ZZZZZZZZ-YYYY-YYYY-YYYY-XXXXXXXXXXXX"
            }
        }
    }
}

Usage

Available Tools

1. send_sms

Send SMS messages to specified phone numbers.

Parameters:

  • to: Phone number in E.164 format (e.g., +61423456789)
  • message: Text content to send

Example:

{
  "name": "send_sms",
  "arguments": {
    "to": "+61423456789",
    "message": "Hello from ClickSend MCP!"
  }
}

2. make_tts_call

Initiate Text-to-Speech calls.

Parameters:

  • to: Phone number in E.164 format
  • message: Text content to convert to speech
  • voice: Voice type ('female' or 'male', defaults to 'female')

Example:

{
  "name": "make_tts_call",
  "arguments": {
    "to": "+61423456789",
    "message": "This is a Text-to-Speech call from ClickSend MCP",
    "voice": "female"
  }
}

Rate Limiting

The server implements a rate limit of 5 actions per minute to prevent abuse. Requests exceeding this limit will receive an error response with a retry delay suggestion.

Development

Available Scripts

  • npm run build: Compile TypeScript and make the output executable
  • npm run start: Start the MCP server
  • npm run dev: Run TypeScript compiler in watch mode

Project Structure

clicksend-mcp/
├── src/
│   ├── index.ts        # Main server implementation
│   ├── client.ts       # ClickSend API client
│   └── utils/
│       └── validation.ts # Input validation utilities
├── build/              # Compiled JavaScript output
└── package.json        # Project configuration

Error Handling

The server provides detailed error messages for various scenarios:

  • Invalid phone numbers
  • Message content validation failures
  • Rate limit exceeded
  • API authentication errors
  • Network connectivity issues

Error responses include appropriate error codes and descriptive messages to help diagnose issues.

TODO

  • [ ] Multiple Recepients

  • [ ] Configure Sender IDs

  • [x] SMS

  • [x] TTS

  • [ ] Email

  • [ ] Media Uploading

    • [ ] Email Attachments
    • [ ] MMS
    • [ ] Letters
    • [ ] Postcards
    • [ ] Fax
  • [ ] Cost Calculation and Confirmation

  • [ ] Statistics

  • [ ] History

  • [ ] Contacts

  • [ ] Automations

License

MIT

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Recommended Servers

graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Claude Code MCP

Claude Code MCP

An implementation of Claude Code as a Model Context Protocol server that enables using Claude's software engineering capabilities (code generation, editing, reviewing, and file operations) through the standardized MCP interface.

Featured
Local
JavaScript
Apple MCP Server

Apple MCP Server

Enables interaction with Apple apps like Messages, Notes, and Contacts through the MCP protocol to send messages, search, and open app content using natural language.

Featured
Local
TypeScript
Supabase MCP Server

Supabase MCP Server

A Model Context Protocol (MCP) server that provides programmatic access to the Supabase Management API. This server allows AI models and other clients to manage Supabase projects and organizations through a standardized interface.

Featured
JavaScript
@kazuph/mcp-gmail-gas

@kazuph/mcp-gmail-gas

Model Context Protocol server for Gmail integration. This allows Claude Desktop (or any MCP client) to interact with your Gmail account through Google Apps Script.

Featured
JavaScript
MCP Server Trello

MCP Server Trello

Facilitates interaction with Trello boards via the Trello API, offering features like rate limiting, type safety, input validation, and error handling for seamless management of cards, lists, and board activities.

Featured
TypeScript
mcp-server-youtube-transcript

mcp-server-youtube-transcript

A Model Context Protocol server that enables retrieval of transcripts from YouTube videos. This server provides direct access to video captions and subtitles through a simple interface.

Featured
JavaScript
Metabase MCP Server

Metabase MCP Server

Enables AI assistants to interact with Metabase databases and dashboards, allowing users to list and execute queries, access data visualizations, and interact with database resources through natural language.

Featured
JavaScript
Linear MCP Server

Linear MCP Server

A Model Context Protocol server that integrates with Linear's issue tracking system, allowing LLMs to create, update, search, and comment on Linear issues through natural language interactions.

Featured
JavaScript
Airtable MCP Server

Airtable MCP Server

A Model Context Protocol server that provides tools for programmatically managing Airtable bases, tables, fields, and records through Claude Desktop or other MCP clients.

Featured
JavaScript