Skip to main content
Glama

List texts

sms_list
Read-onlyIdempotent

Read the text conversation with a phone or contactId (oldest first, both directions; matched: false if none), or pass scheduled: true to list texts queued to send.

Input Schema

NameRequiredDescriptionDefault
limitNoConversation only. Default 50.
phoneNoThe other party's number, any format.
contactIdNoOr the contact (their primary number is used).
scheduledNoList pending scheduled texts instead.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / contactId
      Added value: +{
      +  "description": "Or the contact (their primary number is used).",
      +  "type": "string"
      +}
  2. Added

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive, and closed-world behavior. The description adds useful behavioral context: oldest-first ordering, both directions, a matched:false marker when none exist, and scheduled queue semantics.

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?

The description is a single, front-loaded sentence with no wasted text. It packs modes, ordering, and the no-match indicator into a compact structure.

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 provides key return context such as ordering and matched:false. It does not describe the response fields or limit behavior, though the schema covers the limit parameter and annotations cover safety.

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 100%, so the schema already documents phone, contactId, scheduled, and limit. The description reinforces the phone/contactId alternative and scheduled mode but adds little syntax or constraint detail beyond the schema.

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

Purpose4/5

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

The description uses a specific verb and resource: 'Read the text conversation,' with clear modes for phone/contactId versus scheduled texts. It implicitly distinguishes listing from sending or managing, but does not explicitly name or differentiate from siblings like sms_send or sms_manage.

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 clearly explains how to use the tool for conversation history versus scheduled texts. It provides context for both modes but does not mention alternatives or explicit when-not conditions.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources