Skip to main content
Glama
LukeLiu2000

imap-mcp-server

by LukeLiu2000

imap_reply_to_email

Reply to an existing email by folder and UID, automatically addressing the original sender, adding "Re:" to the subject, and preserving thread context. Use replyAll to include original recipients.

Instructions

Reply to an existing email identified by folder + uid. Automatically sets the recipient to the original sender, prefixes the subject with "Re:", and preserves threading (In-Reply-To/References). Set replyAll to also include the original recipients. Use this instead of imap_send_email whenever the user is responding to a message already in a mailbox. Account defaultBcc addresses are always BCC'd when configured.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
bccNoBCC recipients. Either an array of addresses or a single comma-separated string; merged with the account defaultBcc when set.
uidYesUID of the email to reply to
bodyNoAlias for 'text' (backward-compat)
htmlNoHTML reply content
textNoPlain text reply content
folderNoFolder containing the original emailINBOX
replyAllNoReply to all recipients
accountIdNoAccount ID (from imap_list_accounts). Optional if accountName is given or only one account is configured.
accountNameNoAccount name instead of accountId. Optional if accountId is given or only one account is configured.
attachmentsNoEmail attachments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv2.0.0

TDQS

A4.4/5.0
Behavior4/5

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

Even though no annotations are provided, the description discloses important behavioral traits: it automatically sets the recipient, prefixes the subject with 'Re:', preserves In-Reply-To/References threading, and always applies account defaultBcc. It does not mention whether the reply is actually sent immediately or saved as a draft, but the overall behavior is substantially transparent.

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 three sentences with no filler. It front-loads the core action, then adds the automatic behaviors, and finally gives routing guidance that directly helps tool selection. Every sentence carries useful information.

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?

For a 10-parameter tool with no output schema and no annotations, the description covers the key selection logic, automatic reply semantics, and defaultBcc behavior. It could mention the final disposition (whether the reply is sent immediately), but it is otherwise complete enough for an agent to invoke 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%, so every parameter already has meaningful documentation. The description adds some reply-specific context, such as what replyAll accomplishes, but it mostly relies on the schema for parameter meaning, which is appropriate at baseline.

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-plus-resource structure: 'Reply to an existing email identified by folder + uid'. It clearly distinguishes itself from the sibling imap_send_email by stating the automatic reply behaviors (recipient, subject prefix, threading), so an agent can tell exactly what this tool is for.

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 explicit routing guidance: 'Use this instead of imap_send_email whenever the user is responding to a message already in a mailbox.' This directly names the alternative and states the condition that selects this tool, leaving no ambiguity about when to invoke it.

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