Skip to main content
Glama

Read a thread

read_thread
Read-onlyIdempotent

Read all messages in an email thread sequentially to capture the full context of a conversation.

Instructions

Read a full conversation, every message in order. Prefer this over read_message when you need the context of an exchange rather than a single email.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
accountYesConfigured account: the email address, or the alias given at setup.
thread_idYesThread id, as returned by search_emails.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.3.0

TDQS

A4.4/5.0
Behavior4/5

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

The annotations already establish readOnly, openWorld, idempotent, and non-destructive behavior, so the description's added value is in stating that the tool returns the complete thread ordered as a full conversation. It also communicates that the output provides exchange-level context rather than an isolated message, which goes beyond the annotations. It does not describe the response fields or pagination, but no annotation contradiction exists.

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 two tightly written sentences with no filler. The first sentence states the core behavior and scope, and the second sentence adds the comparative usage guidance. Every word contributes to tool selection or invocation.

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?

Given the tool has only two required parameters and a full schema, the description covers the main behavior and expected output order. The only gap is the lack of detail about the exact structure of returned messages, such as headers or bodies, but the absence of an output schema and the simple read-only nature keep this close to complete.

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?

The input schema has 100% description coverage, documenting both required parameters: thread_id is described as returned by search_emailseding an email address or alias for account. The description adds no additional parameter-level details, so the baseline score of 3 is appropriate.

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?

The description uses a specific verb, 'Read', and a clear resource, 'a full conversation,' and states that it returns 'every message in order.' It explicitly contrasts with read_message by targeting the context of an exchange rather than a single email, making the tool's purpose unambiguous and distinguishing it from siblings.

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

Usage Guidelines5/5

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

The description gives direct selection guidance: 'Prefer this over read_message when you need the context of an exchange rather than a single email.' This names the alternative tool and the condition that should trigger the choice, so an agent knows when to use this tool versus read_message.

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