Skip to main content
Glama
MadLlama25

Fastmail MCP Server

by MadLlama25

edit_draft

Update an existing email draft by modifying only the fields you specify, such as recipients, subject, or body. The old draft is replaced with the new version automatically.

Instructions

Edit an existing draft email. Since JMAP emails are immutable, this atomically destroys the old draft and creates a new one with the updated fields. Only fields you provide will be changed; others are preserved from the original draft.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
ccNoUpdated CC email addresses (optional)
toNoUpdated recipient email addresses (optional, keeps existing if omitted)
bccNoUpdated BCC email addresses (optional)
fromNoUpdated sender email address (optional)
emailIdYesThe ID of the draft email to edit
replyToNoReply-To email addresses (replies go here instead of to the sender)
subjectNoUpdated email subject (optional)
htmlBodyNoUpdated HTML body (optional)
textBodyNoUpdated plain text body (optional)
attachmentsNoFiles to attach. Each entry must use EXACTLY ONE source: localPath (a file inside the configured download directory), emailId + attachmentId (re-attach an attachment from an existing email — no bytes are copied), or blobId (an already-uploaded JMAP blob). Optional name/type override the inferred filename and MIME type.
Behavior4/5

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

With no annotations provided, the description carries the full burden. It discloses the crucial behavioral trait that JMAP emails are immutable, so the tool atomically destroys the old draft and creates a new one. It also clarifies partial-update semantics. It does not mention return values or permissions, but the disclosed behaviors are significant and well-worded.

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, front-loaded with the primary purpose, followed by the key behavioral nuance and an important caveat about partial updates. Every sentence adds value without redundancy or padding.

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

Completeness3/5

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

For a tool that destroys and recreates a draft, the description omits what the tool returns (e.g., the new draft's ID) and how to reference it afterward. Since there is no output schema, this is a notable gap. It covers the mutation semantics well but leaves the return contract ambiguous, which is important for a destructive replacement.

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?

The input schema has 100% coverage, providing individual parameter descriptions. The description adds a global rule: only fields you provide will be changed; others are preserved. This goes beyond the per-field 'optional' labels and gives a coherent update semantics, justifying a score above the baseline of 3.

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 clearly states the tool edits an existing draft email, using a specific verb ('Edit') and resource ('existing draft email'). It distinguishes itself from siblings like create_draft by focusing on existing drafts, and it adds the important nuance that it destroys and recreates the draft due to immutability.

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?

The description establishes clear context: it is for editing existing drafts, and it explains that only provided fields change while others are preserved. However, it does not explicitly mention alternatives (e.g., create_draft for new drafts) or exclusion criteria, so it falls short of a full 5.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/MadLlama25/fastmail-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server