Twilio Messaging MCP Server

by deshartman
Verified

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Enables sending SMS messages via the Twilio API using a configured Twilio phone number and account credentials.

Twilio Messaging MCP Server

An MCP (Model Context Protocol) server that enables sending SMS messages via the Twilio API.

Features

  • Send SMS messages via Twilio
  • Integrates with MCP clients like Claude Desktop
  • Secure credential handling without environment variables
  • Uses Twilio API Keys for improved security

Installation

You can use this server directly via npx:

npx twilio-messaging-mcp-server <accountSid> <apiKey> <apiSecret> <number>

Or install it globally:

npm install -g twilio-messaging-mcp-server twilio-messaging-mcp-server <accountSid> <apiKey> <apiSecret> <number>

Configuration

The server requires the following parameters:

  • accountSid: Your Twilio Account SID (must start with 'AC', will be validated)
  • apiKey: Your Twilio API Key (starts with 'SK')
  • apiSecret: Your Twilio API Secret
  • number: The Twilio phone number to send messages from (in E.164 format, e.g., +1234567890)

Security Note

This server uses API Keys and Secrets instead of Auth Tokens for improved security. This approach provides better access control and the ability to revoke credentials if needed. For more information, see the Twilio API Keys documentation.

Usage with Claude Desktop

Local Development

For local development (when the package is not published to npm), add the following to your Claude Desktop configuration file (~/Library/Application Support/Claude/claude_desktop_config.json on macOS or %APPDATA%\Claude\claude_desktop_config.json on Windows):

{ "mcpServers": { "twilio-messaging": { "command": "node", "args": [ "/PATHTONODE/twilio-messaging-mcp-server/build/index.js", "your_account_sid_here", "your_api_key_here", "your_api_secret_here", "+1234567890" ] } } }

Replace the values with your actual Twilio credentials:

  • First argument: Your Twilio Account SID (starts with "AC")
  • Second argument: Your Twilio API Key (starts with "SK")
  • Third argument: Your Twilio API Secret
  • Fourth argument: Your Twilio phone number in E.164 format

You can get the absolute path by running the following command in your project directory:

# On macOS/Linux echo "$(pwd)/build/index.js" # On Windows (PowerShell) Write-Output "$((Get-Location).Path)\build\index.js"

After Publishing to npm

Once the package is published to npm, you can use the following configuration:

{ "mcpServers": { "twilio-messaging": { "command": "npx", "args": [ "-y", "twilio-messaging-mcp-server", "your_account_sid_here", "your_api_key_here", "your_api_secret_here", "+1234567890" ] } } }

Available Tools

send-sms

Sends an SMS message via Twilio.

Parameters:

  • to: Destination phone number in E.164 format (e.g., +1234567890)
  • message: Message content to send

Example usage in Claude:

Can you send an SMS to +1234567890 saying "Hello from MCP!"

Development

To build the project:

npm install npm run build

Running the Server Manually

To start the server manually for testing (outside of Claude Desktop):

# Run with actual credentials node build/index.js "your_account_sid_here" "your_api_key_here" "your_api_secret" "+1234567890" # Or use the npm script (which uses ts-node for development) npm run dev -- "your_account_sid_here" "your_api_key_here" "your_api_secret" "+1234567890"

The server will start and wait for MCP client connections. You should see output like:

[TwilioMessagingServer] Server started successfully

When using with Claude Desktop, the server is started automatically when Claude loads the configuration file. You don't need to manually start it.

License

MIT

-
security - not tested
F
license - not found
-
quality - not tested

An MCP (Model Context Protocol) server that lets users send SMS messages through Twilio API directly from Claude Desktop via natural language commands.

  1. Features
    1. Installation
      1. Configuration
        1. Security Note
      2. Usage with Claude Desktop
        1. Local Development
        2. After Publishing to npm
      3. Available Tools
        1. send-sms
      4. Development
        1. Running the Server Manually
      5. License