Skip to main content
Glama
resend

Email Sending MCP

by resend

Get Inbox Thread Email

get-inbox-thread-email
Read-only

Purpose: Read one message in a Resend inbox thread, body included: its html and text, its addresses and Message-ID, and the attachments it carries.

Instructions

Purpose: Read one message in a Resend inbox thread, body included: its html and text, its addresses and Message-ID, and the attachments it carries.

NOT for: Reading a whole conversation at once (use get-inbox-thread, which lists a thread's messages without their bodies). Not for emails sent with send-email (use get-email), and not for mail at the account's Resend receiving address (use get-received-email).

Returns: The message's email ID, direction (inbound or outbound), from, to, cc, bcc, reply_to, subject, message_id, read state, received_at, one line per attachment (filename, size and attachment ID), and the html and text bodies it has.

When to use: get-inbox-thread points here for a body. Take the "Email ID" it printed for the message the user wants and pass it as emailId. Attachment contents cannot be downloaded through this server: attachments are listed, not fetched.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
emailIdYesID of the message to read. This is the "id" get-inbox-thread returns for each message in the thread.
inboxIdYesInbox ID
threadIdYesThread ID

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv2.26.1

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so safety is covered. The description goes beyond that by enumerating the returned payload, flagging direction/read-state fields, and disclosing a genuine limitation: attachment contents cannot be downloaded through this server, only listed. It stops short of describing pagination or rate limits, which are less relevant for a single-record read.

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

Conciseness4/5

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

Bold-labeled sections (Purpose, NOT for, Returns, When to use) front-load the key routing information and make it scannable. It runs slightly long, and the Returns list is arguably verbose for a no-output-schema tool, but each sentence carries actionable content.

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?

With no output schema, the description must explain the return shape, and it does so comprehensively (id, direction, addresses, subject, message_id, read state, received_at, attachment lines, html and text). Combined with the exclusion guidance and workflow handoff, an agent has everything needed to call it correctly.

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 description coverage is 100%, and the schema already explains emailId as the id returned by get-inbox-thread, so the baseline is 3. The description reinforces the provenance of emailId via the get-inbox-thread handoff but adds no format or constraint detail for inboxId or threadId beyond what the schema states.

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?

States a precise verb and resource: 'Read one message in a Resend inbox thread, body included,' and immediately scopes it with what is returned (html, text, addresses, Message-ID, attachments). It explicitly distinguishes itself from get-inbox-thread, get-email, and get-received-email, so an agent can route without opening a schema.

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?

Has a dedicated 'When to use' that describes the workflow (get-inbox-thread points here for a body; pass the printed Email ID as emailId) and a 'NOT for' section naming three alternatives with the condition that selects each. Nothing is left to inference.

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

Deploy Server

Other Tools