Skip to main content
Glama

list_scheduled_messages

Read-onlyIdempotent

Retrieve scheduled messages ordered by send time. Use include_done to also see sent, cancelled, or failed jobs. View pending jobs to manage with cancel_scheduled_message or run_scheduled_messages.

Instructions

List messages scheduled with schedule_message, ordered by send time. include_done (boolean, default false): also include jobs that were sent, cancelled or failed; by default only pending jobs are listed. Read-only, local only. Returns an array of {id, recipient, group_id, message, send_at, created_at, status ('pending'|'sent'|'cancelled'|'failed'), error}. Use the id with cancel_scheduled_message; run_scheduled_messages sends the pending jobs that are due.

Input Schema

NameRequiredDescriptionDefault
include_doneNoInclude already-sent, cancelled, and failed messages (default: false)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.33.3

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, idempotent, destructive=false, openWorld=false), so the bar is lower. The description still adds value beyond them: 'local only' scope, the full return array shape with the status enum values, and the presence of an `error` field.

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?

Four dense sentences, front-loaded with the verb and resource, then filter semantics, then return shape, then cross-tool routing. No filler and nothing redundant with the schema.

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

Completeness5/5

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

No output schema exists, yet the description supplies the return record fields and status values, plus the single parameter's semantics and relationships to the two sibling scheduling tools. An agent has everything needed to call and interpret it.

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

Parameters4/5

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

Schema coverage is 100%, so baseline is 3, but the description earns above baseline by spelling out what 'done' actually means — sent, cancelled, or failed — and restating the default. That clarifies the filter semantics more than the terse schema field does.

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: 'List messages scheduled with schedule_message, ordered by send time.' It names the producing tool and the ordering, and clearly distinguishes itself from siblings schedule_message, cancel_scheduled_message, and run_scheduled_messages.

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?

Explicitly scopes default behavior (pending only) vs. include_done, and routes the agent by naming the id's downstream use (cancel_scheduled_message) and the complementary sender (run_scheduled_messages). No 'when-not-to-use' clause, but the effective context is unambiguous.

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