Skip to main content
Glama
smsportal.app MCP server

smsportal.app MCP server

Check SMS delivery

smsportal_get_send_status
Read-onlyIdempotent

Retrieve per-recipient delivery statuses for an SMS batch ID returned by send_sms, with pagination to inspect all recipients. Pending, dispatched, or sent status does not confirm delivery.

Instructions

Read recipient statuses for an owned sms_batch_id returned by send_sms. pending/dispatched/sent do not imply delivered. Paginate to see all recipients; this does not send anything.

Input Schema

NameRequiredDescriptionDefault
pageNo
limitNo
sms_batch_idYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover safety (readOnly, idempotent, non-destructive, openWorld). The description adds real interpretive value beyond them: pending/dispatched/sent are explicitly not delivered, and pagination is required to see all recipients. It does not disclose ownership/permission enforcement details or the result shape, keeping it below a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences, front-loaded with the core action and the non-action disclaimer last. Every clause adds distinct information with no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description should indicate what comes back; it says 'recipient statuses' and warns which statuses do not imply delivery, which is the key interpretation risk. It omits result shape (per-recipient records vs aggregate) and the default page size, leaving a small gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description must carry the burden. It does supply the crucial meaning of sms_batch_id (an owned id obtained from send_sms) and flags that pagination exists, but it never explains page/limit semantics, defaults, or the 1-50 limit cap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Specific verb+resource: 'Read recipient statuses for an owned sms_batch_id'. It ties the input back to its producer ('returned by send_sms'), which separates it from send_sms, and the batch-scoped read is clearly distinct from list_devices/list_messages/get_stats.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives a clear trigger (check statuses after a send) and an operational instruction ('Paginate to see all recipients'). It stops short of explicit alternatives or when-not conditions, but the usage context is unambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.