Twilio Messaging
STDIOMCP server for sending SMS messages via Twilio API.
MCP server for sending SMS messages via Twilio API.
An MCP server for sending SMS messages via Twilio API. This server provides tools, resources, and prompts for interacting with the Twilio Messaging API.
@deshartman/mcp-status-callback
npm install @deshartman/twilio-messaging-mcp-server
Or run directly with npx:
npx @deshartman/twilio-messaging-mcp-server <accountSid> <apiKey> <apiSecret> <number>
The package can be executed directly using npx without installation:
# Run with required parameters npx @deshartman/twilio-messaging-mcp-server <accountSid> <apiKey> <apiSecret> <number> # With environment variables for ngrok env NGROK_AUTH_TOKEN=your_token NGROK_CUSTOM_DOMAIN=your_domain.ngrok.dev npx @deshartman/twilio-messaging-mcp-server <accountSid> <apiKey> <apiSecret> <number>
This is possible because the package includes the "bin" field in package.json, making it executable via npx.
NGROK_AUTH_TOKEN
: Your ngrok authentication token (required for callback handling)NGROK_CUSTOM_DOMAIN
: Your custom ngrok domain (optional)You can run the server using the provided script with a .env
file:
# Create a .env file with your credentials # See .env.example for the required format # Run the server (no arguments needed) ./run-server.sh
The .env
file should contain:
ACCOUNT_SID=YOUR_ACCOUNT_SID
API_KEY=YOUR_API_KEY
API_SECRET=YOUR_API_SECRET
TWILIO_NUMBER=YOUR_TWILIO_PHONE_NUMBER
NGROK_AUTH_TOKEN=YOUR_NGROK_AUTH_TOKEN
NGROK_CUSTOM_DOMAIN=your-domain.ngrok.dev
This approach improves security by keeping credentials out of command history and simplifies the execution process.
env NGROK_AUTH_TOKEN=your_ngrok_auth_token NGROK_CUSTOM_DOMAIN=your_domain.ngrok.dev node build/index.js <accountSid> <apiKey> <apiSecret> <number>
This server provides the following MCP capabilities:
send-sms
: Send an SMS message via Twilio with server readiness validationtwilio://statuscallback
: Get the last raw status callback data from Twilio with enhanced error handlingSendSMS
: Prompt for sending an SMS using Twilio Messaging MCP ServerIf you encounter an error like:
failed to start tunnel: The endpoint 'https://your-domain.ngrok.dev' is already online.
You have a few options:
--pooling-enabled
to load balance between themIf you encounter an npm error like:
npm ERR! code ENOTEMPTY
npm ERR! syscall rename
Try running the server directly with Node.js instead of using npx.
MIT