The MCP tool directory.
Each row is one tool from one provider. Tools sharing a name across providers (e.g. search) are listed separately because they aren't interchangeable.
[ 3624 tools indexed ]
[ all tools ]
30 / 3624
sms_senders_create
[ remote ]Claims an alphanumeric sender for this workspace, the brand name that shows as the from on a message. Claiming costs nothing. Where a country asks for no registration, the sender can reach it as soon as that destination is enabled on the workspace; everywhere else it needs `sms_senders_registrations_create` first. Which countries ask for what is on `sms_senders_requirements`.
sms_senders_get
[ remote ]One sender and where it stands per country. Read it when you already hold the id and want that sender alone; `sms_senders_list` is how you find the id in the first place. A sender blocked on its number's own paperwork says so in `status`, which is a different obstacle from a country wanting a registration.
sms_senders_list
[ remote ]Every sender your workspace can send from, dedicated numbers and alphanumeric strings alike, each carrying where it stands per country. Start here when you do not already hold a sender id: nothing else hands you one, and every other read in this area is addressed by it. A sender's `status` says whether it can send at all; `sms_senders_requirements` is where you find out which destinations are open to it and what the closed ones want first.
sms_senders_registrations_create
[ remote ]Registers a sender to send to one country. Where the country reviews registrations the record comes back pending and nothing is charged yet; it is billed if and when the registration is approved. Where the country reviews nothing it is approved on this call, and a priced alphanumeric sender is charged its setup fee and its recurring monthly subscription then. Registering a number is free. Neither this operation nor `sms_senders_requirements` quotes a price, so ask whoever owns the account before registering a priced sender. A 402 means the wallet could not cover what was owed at the moment billing ran, a 412 that the organization has an unmet trust gate, and a 409 that a registration for this country already exists in any state other than rejected or suspended, a `pending` one under review included, so a 409 does not mean the sender can send there; a rejected one is resubmitted and a suspended one reactivated by this same call rather than refused.
sms_senders_requirements
[ remote ]One row per country this sender can reach, saying whether a registration is required, where the sender stands with it, and what to do next. Read this before sending from a sender you have not used for a country: holding a number is not the same as being allowed to send from it, and a refused send names this read as its recovery step.
sms_stats_by_carrier
[ remote ]SMS delivery and latency stats grouped by the carrier that handled the message, ranked by the `sort` metric (default `accepted`) and capped by `limit` (default 50, maximum 200). Use it to compare delivery performance across carriers.
sms_stats_by_category
[ remote ]SMS delivery and latency stats grouped by the category you sent under, ranked by the `sort` metric (default `accepted`) and capped by `limit` (default 50, maximum 200).
sms_stats_by_country
[ remote ]SMS delivery and latency stats grouped by destination country, ranked by the `sort` metric (default `accepted`) and capped by `limit` (default 50, maximum 200). Use it to find where delivery is worst before drilling into `sms_stats_by_error_code`.
sms_stats_by_error_code
[ remote ]SMS stats grouped by our normalized failure reason, which answers which reasons are driving your failures. The grouping key is the same value as the `error_code` filter on `sms_list`, so a row joins straight to the messages behind it. Ranked by the `sort` metric (default `failed`) and capped by `limit`.
sms_stats_by_originator
[ remote ]SMS delivery and latency stats grouped by originator, the sender address messages went out from, ranked by the `sort` metric (default `accepted`) and capped by `limit` (default 50, maximum 200). Use it to compare how your senders perform.
sms_stats_by_status
[ remote ]How many messages ended the period in each lifecycle status: accepted, sent, delivered, undelivered, failed, rejected, expired, ordered by count. The "where did my messages end up" view, suitable for a status-distribution chart.
sms_stats_by_tag
[ remote ]SMS delivery and latency stats grouped by tag (`name:value`), ranked by the `sort` metric (default `accepted`) and capped by `limit` (default 50, maximum 200). Only tagged messages appear, and one carrying several tags counts once under each, so rows do not sum to the period total.
sms_stats_daily
[ remote ]One row of SMS lifecycle counts per calendar day, for charts and trend lines. The window is at most 365 days; set `timezone` to get local calendar days instead of UTC. Rates and latency percentiles are whole-window figures, so read those from `sms_stats_summary`.
sms_stats_hourly
[ remote ]One row of SMS lifecycle counts per hour, for inspecting send rate and deliverability inside a single day. The window is at most 30 days (720 rows) and both bounds round down to the hour. For longer ranges use `sms_stats_daily`.
sms_stats_inbound_by_country
[ remote ]Messages your numbers received, grouped by the country of the receiving number.
sms_stats_inbound_by_number
[ remote ]How many messages each of your numbers received, which is the view that shows whether a campaign's reply traffic is landing on the number you expect.
sms_stats_inbound_by_operator
[ remote ]Messages your numbers received, grouped by the sender's mobile operator. Messages whose operator the carrier did not report are excluded, so these rows can sum to less than `sms_stats_inbound_summary` for the same period.
sms_stats_inbound_daily
[ remote ]Messages your numbers received, one row per calendar day. Set `timezone` to get local calendar days instead of UTC.
sms_stats_inbound_hourly
[ remote ]Messages your numbers received, one row per hour, for inspecting inbound volume inside a single day.
sms_stats_inbound_summary
[ remote ]Total messages your numbers received over a period. For a breakdown use `sms_stats_inbound_by_country`, `sms_stats_inbound_by_operator`, or `sms_stats_inbound_by_number`.
sms_stats_summary
[ remote ]Aggregate SMS KPIs for one period: accepted, sent, delivered, undelivered, failed, rejected and expired counts, the derived delivery and failure rates, and latency percentiles. The `from` and `to` values are both YYYY-MM-DD days or both RFC 3339 instants (hour grain). Add `compare=previous_period` for deltas against the preceding window. For a per-day or per-hour series use `sms_stats_daily` or `sms_stats_hourly`.
sms_suppressions_add
[ remote ]Stop one of your senders from messaging one subscriber. Covers that sender only; your other senders keep reaching them.
sms_suppressions_get
[ remote ]Read one SMS suppression: the sender and subscriber it covers, why messages are stopped, what it blocks, and whether it is still in force. To check whether you may message someone, filter `sms_suppressions_list` by their number instead.
sms_suppressions_list
[ remote ]List the workspace's SMS suppressions (sender-and-subscriber pairs blocked from delivery) as a cursor page.
sms_suppressions_remove
[ remote ]End a manual SMS suppression, letting that sender message that subscriber again. Only reason `manual` can be ended this way: a subscriber's own stop keyword and a carrier's opt-out are refused.
sms_templates_get
[ remote ]Get one SMS template by its slug or ID, including its body and the variables it expects. Fetch it before `sms_send` to see which parameter keys a template send requires.
sms_templates_list
[ remote ]List the SMS templates available to your workspace, including our built-in templates. Filter by scope, category, or language. The catalog is small and returned in full; this list is not paginated. Use `sms_templates_get` to read one template's variables before sending with it.
sms_tfn_verifications_cancel
[ remote ]Cancels a draft verification and frees the toll-free number it held, so the number can be put on a new one. Only a draft can be canceled: once a verification has been submitted the carrier is holding it, and it is locked.
sms_tfn_verifications_create
[ remote ]Opens a draft verification against a toll-free sender this workspace owns. Only the sender is required; the dossier is filled in afterwards with `sms_tfn_verifications_update`, over as many calls as it takes. The result is always a draft, and nothing reaches a carrier until it is submitted, which is a step for a person rather than this surface.
sms_tfn_verifications_get
[ remote ]Reads one verification: the state it is in, the sender it licenses, and what the carrier said about it. `denial_reasons` carries the carrier's own words when it declined or asked for more. `status` is what says whether you can still edit it: `draft` and `info_requested` can, `submitted`, `under_review` and `approved` are locked. `resubmit_allowed` answers the one case status cannot, whether a `rejected` verification is still inside its resubmission window.