NetBird

sms_send

Send one SMS to a single recipient. Supply either `text` (with `category` and `from`) or a stored `template` (by ID or slug, with its `parameters`). The response is the accepted message with its ID; delivery is asynchronous, so use `sms_get` to check status. Browse templates with `sms_templates_list`.

Remote bird/mcp

Remote (network-hosted)

Other tools also called sms_send? See providers with this name

Input Schema


            {
  "type": "object",
  "properties": {
    "to": {
      "type": "string",
      "description": "Recipient phone number in E.164 format (for example +14155550100). One recipient per message. The number is stored and returned in canonical E.164; a recipient that cannot be routed returns a 422 SMSInvalidRecipient."
    },
    "from": {
      "type": "string",
      "description": "Sender to send from. Use an E.164 number such as +15557654321, or a short code of 5-6 digits. You can also use an alphanumeric sender ID of 1-11 letters, digits, spaces, dashes, or underscores. It must contain at least one letter, for example MyBrand. A numeric sender must be a number your workspace owns; an alphanumeric sender is accepted where the destination country permits one. Required on a free-text send: omitting it returns a 422 SMSNoEligibleSender. Not accepted alongside template, which selects its sender automatically."
    },
    "tags": {
      "type": "object",
      "description": "Structured {name, value} labels for filtering and analytics. Tags become first-class query dimensions: filter the list endpoint by tag name, slice analytics by tag, and surface in webhook payloads. Maximum 20 tags per send. Use tags for low-cardinality dimensions (category, experiment_variant). For arbitrary structured context you do not need as a filter dimension, use metadata instead.",
      "additionalProperties": {
        "type": "string"
      }
    },
    "text": {
      "type": "string",
      "description": "Free-text message body. Required unless template is supplied (the two are mutually exclusive). At least 1 character, up to a 12-segment cap (roughly 1836 GSM-7 or 804 UCS-2 characters). Bird does not truncate; a body exceeding 12 segments is rejected with a 422. The cap applies to segments because GSM-7 and UCS-2 encodings differ in characters per segment."
    },
    "options": {
      "type": [
        "null",
        "object"
      ],
      "properties": {
        "track_clicks": {
          "type": [
            "null",
            "boolean"
          ]
        },
        "smart_encoding": {
          "type": [
            "null",
            "boolean"
          ]
        },
        "max_price_per_segment": {
          "type": [
            "null",
            "number"
          ]
        }
      },
      "description": "What Bird does to this message on its way out, such as smart_encoding. The message being relayed stays at the top level: its recipient, sender, content, and the delivery instructions the carrier acts on.",
      "additionalProperties": false
    },
    "category": {
      "type": "string",
      "examples": [
        "transactional",
        "marketing",
        "authentication",
        "service"
      ],
      "description": "Content classification. Tells Bird and carriers why you're sending; per-country compliance rules (opt-out policy, quiet hours) key on it as they roll out. Required on a free-text send; omit it on a template send, where the category is derived from the template."
    },
    "metadata": {
      "type": "object",
      "description": "Arbitrary JSON object stored on the message, returned on API reads, and echoed in webhook payloads. Maximum 2 KB serialized. Use metadata for per-send context like internal IDs and foreign keys. For low-cardinality filterable labels, use tags instead.",
      "additionalProperties": true
    },
    "template": {
      "type": [
        "null",
        "object"
      ],
      "properties": {
        "id": {
          "type": [
            "null",
            "string"
          ]
        },
        "name": {
          "type": [
            "null",
            "string"
          ]
        },
        "slug": {
          "type": [
            "null",
            "string"
          ]
        },
        "language": {
          "type": [
            "null",
            "string"
          ]
        },
        "parameters": {
          "type": [
            "null",
            "object"
          ],
          "additionalProperties": true
        }
      },
      "description": "Send using a stored template instead of free text. Mutually exclusive with text; the message category is derived from the template, so from, category, and media_urls are not accepted alongside it.",
      "additionalProperties": false
    },
    "idempotency_key": {
      "type": "string",
      "description": "Client-supplied deduplication key; a retry with the same key replays the original result instead of acting twice."
    }
  }
}
          

Provider

NetBird →