Skip to main content
Glama
sethbang

proton-mail-mcp

bulk_delete

Destructive

Delete multiple messages in one operation. Move to Trash or permanently expunge with confirmation. Preview using dry run.

Instructions

Delete multiple messages in one operation. Provide EITHER uids OR match. By default soft-deletes to Trash; pass permanent: true to expunge. permanent: true ALSO requires confirm: true (the expunge is irreversible — there is no Trash to recover from). dryRun: true previews without deleting and needs no confirmation.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
folderNoFolder containing the messages (default: INBOX).INBOX
uidsNoExplicit UIDs to delete, scoped to `folder`. Mutually exclusive with `match`. For destructive cleanup, explicit UIDs are safer than a content match (which can lag).
matchNoSearch criteria selecting messages to delete. Mutually exclusive with `uids`. Prefer from:/date filters over subject/body (Proton's content index lags ~30–60s, so a subject/body match can silently miss recent mail).
permanentNoIf true, permanently expunge instead of moving to Trash. Requires confirm: true.
confirmNoRequired to be true when permanent is true. Acknowledges the expunge is irreversible.
dryRunNoWhen true, preview the exact UIDs that would be deleted without deleting anything (no confirm needed). Recommended before any match-based run.
Behavior5/5

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

Describes soft-delete vs expunge, the irreversibility of permanent deletion, confirm requirement, and dryRun behavior. Annotations already mark destructiveHint=true; description adds critical context like lag in match searches and that permanent deletion is irreversible with no Trash recovery.

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 a single compact paragraph, front-loading the core purpose and then methodically covering conditions. Every sentence adds value without redundancy. Could be structured as bullet points but current form is efficient and clear.

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?

Given no output schema but 6 parameters with nested objects, the description covers all essential behavioral aspects: deletion methods, permanence, confirmation, dry-run preview, and safety warnings (content lag). An agent has complete information to invoke correctly.

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

Parameters5/5

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

Input schema has 100% coverage, but description adds significant meaning: mutual exclusivity of uids/match, safety trade-offs, the need for confirm when permanent, and dryRun usage. This provides actionable guidance beyond enum values or basic types.

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 'Delete multiple messages in one operation' and specifies the two mutually exclusive inputs (uids or match), default soft-delete behavior, and permanent deletion conditions. This distinguishes it from single-message delete tools and other bulk operations.

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?

Explicit guidance: 'Provide EITHER uids OR match.' Further explains that explicit UIDs are safer for destructive cleanup due to content match lag, and dryRun previews without deletion. Also requires confirm: true for permanent deletion, providing clear when-to-use and safety constraints.

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/sethbang/proton-mail-mcp'

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