skills/send-sms/SKILL.md
Send SMS text messages programmatically via multiple SMS API providers
npx skillsauth add tippyentertainment/skills send-smsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Send SMS text messages programmatically through Twilio, Vonage, TextBelt, or custom HTTP endpoints. Supports single messages, bulk sending, media attachments (MMS), and delivery tracking.
For custom HTTP endpoints, provide:
| Parameter | Type | Required | Description | |-----------|------|----------|-------------| | to | string | Yes | Recipient phone number in E.164 format (+15551234567). Comma-separated for bulk. | | message | string | Yes | SMS body text. Max 160 chars for single segment, 1600 for multi-segment. | | from | string | No | Sender number or alphanumeric ID. Provider-specific. | | provider | string | No | SMS provider: 'twilio' (default), 'vonage', 'textbelt', 'custom'. | | provider_config | object | No | Provider credentials. Uses stored secrets if not provided. | | options | object | No | Additional options: media_url, status_callback, validity, priority. |
{
"success": true,
"message_id": "SMxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"status": "queued",
"segments": 1,
"cost": 0.0075
}
// Prerequisites: TWILIO_ACCOUNT_SID, TWILIO_AUTH_TOKEN, TWILIO_PHONE_NUMBER saved in Settings
// Send a simple SMS
send_sms({
to: "+15551234567",
message: "Your verification code is 123456. Valid for 5 minutes."
});
send_sms({
to: "+15551234567",
message: "Hello from TaskingBot!",
from: "+15559876543",
provider: "twilio",
provider_config: {
account_sid: "ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
auth_token: "your_auth_token_here"
}
});
send_sms({
to: "+15551234567",
message: "Check out this photo!",
from: "+15559876543",
provider: "twilio",
options: {
media_url: "https://example.com/image.jpg"
}
});
send_sms({
to: "+15551111111,+15552222222,+15553333333",
message: "Flash sale! 50% off all items today only!",
from: "+15559876543",
provider: "twilio"
});
send_sms({
to: "+15551234567",
message: "Your order has shipped!",
from: "MyBrand", // Alphanumeric sender ID
provider: "vonage",
provider_config: {
api_key: "your_api_key",
api_secret: "your_api_secret"
}
});
send_sms({
to: "+15551234567",
message: "Test message from TextBelt",
provider: "textbelt",
provider_config: {
api_key: "textbelt" // Free tier key
}
});
send_sms({
to: "+15551234567",
message: "Custom provider test",
provider: "custom",
provider_config: {
url: "https://api.example.com/sms/send",
auth_type: "bearer",
headers: {
"X-Custom-Header": "value"
}
}
});
send_sms({
to: "+15551234567",
message: "Important notification",
from: "+15559876543",
provider: "twilio",
options: {
status_callback: "https://yourserver.com/sms/status"
}
});
to is a valid phone number format (E.164 recommended)message length (max 1600 characters)provider_config provided, use those credentialsFormat the API request based on provider:
Twilio:
POST https://api.twilio.com/2010-04-01/Accounts/{AccountSid}/Messages.json
Authorization: Basic (base64 of account_sid:auth_token)
Body: To=+15551234567&From=+15559876543&Body=Hello
Vonage:
POST https://rest.nexmo.com/sms/json
Body: api_key=xxx&api_secret=xxx&to=+15551234567&from=MyBrand&text=Hello
TextBelt:
POST https://textbelt.com/text
Body: phone=+15551234567&message=Hello&key=xxx
{
"success": true,
"message_id": "SMxxx",
"status": "queued",
"segments": 1,
"cost": 0.0075
}
| Error Code | Description | Solution | |------------|-------------|----------| | INVALID_NUMBER | Phone number format invalid | Use E.164 format (+countrycode) | | AUTH_FAILED | Invalid credentials | Check API keys in Settings | | INSUFFICIENT_FUNDS | Account balance too low | Add funds to provider account | | RATE_LIMITED | Too many requests | Implement retry with exponential backoff | | BLOCKED | Number on do-not-contact list | Remove from recipient list | | UNDELIVERABLE | Message cannot be delivered | Check recipient number validity |
| Provider | Cost per SMS (US) | International | Notes | |----------|-------------------|---------------|-------| | Twilio | $0.0075 | $0.02-0.12 | Volume discounts available | | Vonage | $0.0055 | $0.02-0.10 | Competitive international rates | | TextBelt | Free (1/day) | Paid plans | Free tier for testing |
send_email - Send email notificationsdiscord_webhook - Send Discord messageshttp_post - Generic HTTP POST for custom integrationsdevelopment
A top-tier product/UI designer skill that uses Tailwind v4 plus Google Gemini Nano Banana image models to craft visually stunning, “award‑winning” marketing sites and apps with strong art direction, motion, and systems thinking.
development
Meticulously detect and fix missing React/TSX imports, undefined components, and bundler runtime errors in the WASM SPA build/preview pipeline. Ensures JSX components, icons, and hooks are properly imported or defined before running the browser preview, so the runtime safety-net rarely triggers.
development
Debug and auto-fix Vite projects running inside WebContainers: resolve mount/root issues, alias/path errors, missing scripts, and other common dev-time problems so the app boots cleanly.
tools
Diagnose and fix Vite + React 19 configuration issues for TypeScript SPA and WASM preview builds. Specializes in React 19’s JSX runtime, @vitejs/plugin-react, path aliases, SPA routing, and dev-server behavior so the app and in-browser preview bundle cleanly without manual trial-and-error.